ऐप्लिकेशन की नीतियों के लिए कोड सैंपल

नीचे दिए गए अनुरोध में, ऐप्लिकेशन नीतियों का उदाहरण के तौर पर इस्तेमाल करके, पॉलिसी मैनेजमेंट को Policy API के साथ दिखाया गया है. शुरू करने से पहले, Chrome Policy API की खास जानकारी और नीति स्कीमा गाइड ज़रूर देखें.

नीचे दिए गए सभी अनुरोध में इन वैरिएबल का इस्तेमाल किया गया है:

  • $TOKEN - OAuth 2 टोकन
  • $CUSTOMER - ग्राहक का आईडी या लिटरल my_customer

किसी ऐप्लिकेशन को ज़बरदस्ती इंस्टॉल करें

संगठन की इकाई के लिए ये उदाहरण दिए गए हैं. ग्रुप के लिए अनुरोध समान होगा, लेकिन targetResource के अलावा, जिसमें आईडी से पहले "orgunits/" के बजाय "groups/" होगा.

यहां, हम Google Drawings ऐप्लिकेशन को ज़बरदस्ती इंस्टॉल होने के लिए सेट कर रहे हैं:

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        requests: [{
                policyTargetKey: {
                        targetResource: "orgunits/04fatzly4jbjho9",
                        additionalTargetKeys: {"app_id": "chrome:mkaakpdehdafacodkgkpghoibnmamcme"}
                        },
                policyValue: {
                        policySchema: "chrome.users.apps.InstallType",
                        value: {appInstallType: "FORCED"}
                        },
                updateMask: {paths: "appInstallType"}
                }]
      }' \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"

स्वीकार किए गए जवाब को खाली छोड़ा जाना चाहिए:

{}

यह उदाहरण उपयोगकर्ता के ऐप्लिकेशन का है. मैनेज किए जा रहे गेस्ट सेशन (मेहमान के तौर पर ब्राउज़ करने का सेशन) का अनुरोध एक जैसा होगा. हालांकि, नीति स्कीमा chrome.devices.managedguest.apps.InstallType होगा. कीऑस्क ऐप्लिकेशन की नीति से मिलता-जुलता अनुरोध यह है:

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        requests: [{
                policyTargetKey: {
                        targetResource: "orgunits/04fatzly4jbjho9",
                        additionalTargetKeys: {"app_id": "chrome:mkaakpdehdafacodkgkpghoibnmamcme"}
                        },
                policyValue: {
                        policySchema: "chrome.devices.kiosk.apps.ForceInstall",
                        value: {forceInstall: false}
                        },
                updateMask: {paths: "forceInstall"}
                }]
      }' \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"

स्वीकार किए गए जवाब को खाली छोड़ा जाना चाहिए:

{}

किसी ऐप्लिकेशन को मिटाना

ऐप्लिकेशन को उसी संगठन इकाई में मिटाना होगा जहां उसे मैनेज करने के लिए, साफ़ तौर पर जोड़ा गया था. रिज़ॉल्व को कॉल करते समय, addedSourceKey फ़ील्ड में संगठन की वह इकाई मौजूद होती है जहां उसे मैनेजमेंट के लिए जोड़ा गया था. दूसरे शब्दों में, delete का इस्तेमाल सिर्फ़ ऐसे ऐप्लिकेशन के लिए किया जाना चाहिए जहां addedSourceKey में मौजूद संगठन की इकाई, policyTargetKey में मौजूद संगठन की इकाई के बराबर हो.

किसी ऐप्लिकेशन को मिटाने के लिए (साफ़ तौर पर उसे मैनेजमेंट से हटाना), आपको एक batchInherit अनुरोध भेजना चाहिए. इसमें, दिए गए ऐप्लिकेशन टाइप के लिए स्कीमा के तौर पर, policySchema को किसी नीति की जगह तारे के निशान (*) के साथ इस्तेमाल किया जाना चाहिए. इस उदाहरण में, हम वह Google ड्रॉइंग ऐप्लिकेशन मिटा रहे हैं जो "04fatzly4jbjho9" संगठनात्मक इकाई में इंस्टॉल है:

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        requests: [{
                policyTargetKey: {
                        targetResource: "orgunits/04fatzly4jbjho9",
                        additionalTargetKeys: {"app_id": "chrome:gbchcmhmhahfdphkhkmpfmihenigjmpp"}
                        },
                policySchema: "chrome.users.apps.*",
                }]
      }' \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchInherit"

स्वीकार किए गए जवाब को खाली छोड़ा जाना चाहिए:

{}

कीऑस्क ऐप्लिकेशन और मैनेज किए जा रहे गेस्ट सेशन (मेहमान के तौर पर ब्राउज़ करने के लिए सेशन) ऐप्लिकेशन को मिटाने के अनुरोध के लिए, chrome.devices.kiosk.apps.\* और chrome.devices.managedguest.apps.\* स्कीमा का इस्तेमाल किया जाएगा.

संगठन की किसी इकाई में, किसी ऐप्लिकेशन के लिए ऐप्लिकेशन इंस्टॉल करने की नीति की जानकारी पाएं

किसी खास ऐप्लिकेशन के लिए नीति देखने के लिए, आपको अनुरोध में नीति और ऐप्लिकेशन आईडी, दोनों की जानकारी देनी होगी. इस उदाहरण में, हम Google Drawings ऐप्लिकेशन के लिए InstallType नीति का मान पढ़ रहे हैं:

अनुरोध

  curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        policyTargetKey: {
          targetResource: "orgunits/04fatzly4jbjho9",
          additionalTargetKeys: {"app_id": "chrome:mkaakpdehdafacodkgkpghoibnmamcme"}
        },
        policySchemaFilter: "chrome.users.apps.InstallType"
    }' \
  "https://chromepolicy.googleapis.com/v1/$CUSTOMER/C02l1chq7/policies:resolve"

जवाब

{
  "resolvedPolicies": [
    {
      "targetKey": {
        "targetResource": "orgunits/04fatzly4jbjho9",
        "additionalTargetKeys": {
          "app_id": "chrome:mkaakpdehdafacodkgkpghoibnmamcme"
        }
      },
      "value": {
        "policySchema": "chrome.users.apps.InstallType",
        "value": {
          "appInstallType": "FORCED"
        }
      },
      "sourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      },
      "addedSourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      }
    }
  ]
}

संगठन की किसी इकाई में मौजूद सभी ऐप्लिकेशन के लिए, ऐप्लिकेशन इंस्टॉल करने से जुड़ी नीति की जानकारी पाएं

अगर पिछले उदाहरण में दिए गए अनुरोध से ऐप्लिकेशन आईडी को हटा दिया जाता है, तो यह उस ओयू के तहत आने वाले सभी ऐप्लिकेशन के लिए, installType नीति की वैल्यू का अनुरोध होगा.

अनुरोध

  curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        policyTargetKey: {
          targetResource: "orgunits/04fatzly4jbjho9",
        },
        policySchemaFilter: "chrome.users.apps.InstallType"
    }' \
  "https://chromepolicy.googleapis.com/v1/$CUSTOMER/C02l1chq7/policies:resolve"

जवाब

{
  "resolvedPolicies": [
    {
      "targetKey": {
        "targetResource": "orgunits/04fatzly4jbjho9",
        "additionalTargetKeys": {
          "app_id": "chrome:mkaakpdehdafacodkgkpghoibnmamcme"
        }
      },
      "value": {
        "policySchema": "chrome.users.apps.InstallType",
        "value": {
          "appInstallType": "FORCED"
        }
      },
      "sourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      },
      "addedSourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      }
    },
    {
      "targetKey": {
        "targetResource": "orgunits/04fatzly4jbjho9",
        "additionalTargetKeys": {
          "app_id": "chrome:fhcfdhnmhdkemdfdncjmgnanbekfmbab"
        }
      },
      "value": {
        "policySchema": "chrome.users.apps.InstallType",
        "value": {
          "appInstallType": "ALLOWED"
        }
      },
      "sourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      },
      "addedSourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      }
    },
    ...
  ]
}

संगठन की किसी इकाई में किसी ऐप्लिकेशन की सभी नीतियों की सूची बनाना

जिस तरह ऐप्लिकेशन आईडी को सभी ऐप्लिकेशन के लिए नीतियों को फिर से पाने के अनुरोध से हटाया जा सकता है, ठीक उसी तरह नीति में वाइल्डकार्ड का इस्तेमाल करके, किसी एक ऐप्लिकेशन के लिए सभी नीतियां पाई जा सकती हैं. इस उदाहरण में, हमें Google Drawings ऐप्लिकेशन की सभी नीतियों की वैल्यू मिल रही हैं.

अनुरोध

  curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        policyTargetKey: {
          targetResource: "orgunits/04fatzly4jbjho9",
          additionalTargetKeys: {"app_id": "chrome:mkaakpdehdafacodkgkpghoibnmamcme"}
        },
        policySchemaFilter: "chrome.users.apps.*"
    }' \
  "https://chromepolicy.googleapis.com/v1/$CUSTOMER/C02l1chq7/policies:resolve"

जवाब

{
  "resolvedPolicies": [
    {
      "targetKey": {
        "targetResource": "orgunits/04fatzly4jbjho9",
        "additionalTargetKeys": {
          "app_id": "chrome:mkaakpdehdafacodkgkpghoibnmamcme"
        }
      },
      "value": {
        "policySchema": "chrome.users.apps.InstallType",
        "value": {
          "appInstallType": "FORCED"
        }
      },
      "sourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      },
      "addedSourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      }
    },
    {
      "targetKey": {
        "targetResource": "orgunits/04fatzly4jbjho9",
        "additionalTargetKeys": {
          "app_id": "chrome:mkaakpdehdafacodkgkpghoibnmamcme"
        }
      },
      "value": {
        "policySchema": "chrome.users.apps.IncludeInChromeWebStoreCollection",
        "value": {
          "includeInCollection": true
        }
      },
      "sourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      },
      "addedSourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      }
    },
    ...
  ]
}

किसी संगठन की इकाई में सभी ऐप्लिकेशन की सभी नीतियों की सूची बनाना

ऐप्लिकेशन आईडी को हटाया जा सकता है. साथ ही, नीति में किसी ओयू के तहत सभी ऐप्लिकेशन के लिए सभी ऐप्लिकेशन सेटिंग का अनुरोध करने के लिए, वाइल्डकार्ड का इस्तेमाल किया जा सकता है.

अनुरोध

  curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        policyTargetKey: {
          targetResource: "orgunits/04fatzly4jbjho9"
        },
        policySchemaFilter: "chrome.users.apps.*"
    }' \
  "https://chromepolicy.googleapis.com/v1/$CUSTOMER/C02l1chq7/policies:resolve"

जवाब

{
  "resolvedPolicies": [
    {
      "targetKey": {
        "targetResource": "orgunits/04fatzly4jbjho9",
        "additionalTargetKeys": {
          "app_id": "chrome:mkaakpdehdafacodkgkpghoibnmamcme"
        }
      },
      "value": {
        "policySchema": "chrome.users.apps.InstallType",
        "value": {
          "appInstallType": "FORCED"
        }
      },
      "sourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      },
      "addedSourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      }
    },
    {
      "targetKey": {
        "targetResource": "orgunits/04fatzly4jbjho9",
        "additionalTargetKeys": {
          "app_id": "chrome:mkaakpdehdafacodkgkpghoibnmamcme"
        }
      },
      "value": {
        "policySchema": "chrome.users.apps.IncludeInChromeWebStoreCollection",
        "value": {
          "includeInCollection": true
        }
      },
      "sourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      },
      "addedSourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      }
    },
    {
      "targetKey": {
        "targetResource": "orgunits/04fatzly4jbjho9",
        "additionalTargetKeys": {
          "app_id": "chrome:fhcfdhnmhdkemdfdncjmgnanbekfmbab"
        }
      },
      "value": {
        "policySchema": "chrome.users.apps.InstallType",
        "value": {
          "appInstallType": "ALLOWED"
        }
      },
      "sourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      },
      "addedSourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      }
    },
    {
      "targetKey": {
        "targetResource": "orgunits/04fatzly4jbjho9",
        "additionalTargetKeys": {
          "app_id": "chrome:fhcfdhnmhdkemdfdncjmgnanbekfmbab"
        }
      },
      "value": {
        "policySchema": "chrome.users.apps.CertificateManagement",
        "value": {
          "allowAccessToKeys": true
        }
      },
      "sourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      },
      "addedSourceKey": {
        "targetResource": "orgunits/04fatzly4jbjho9"
      }
    },
    ...
  ]
}

Kiosk Appsconfig AutoLaunchApp को साफ़ करना

AutoLaunchApp को मिटाने के लिए, appId को "कोई नहीं" पर सेट किया जा सकता है.

ध्यान रखें कि appId को "कोई नहीं" पर सेट करने पर, AutoLaunchApp की अन्य सभी सेटिंग डिफ़ॉल्ट वैल्यू पर सेट हो जाएंगी. इस मामले में, अनुरोध में भेजे गए appId के अलावा, AutoLaunchApp सेटिंग को अनदेखा कर दिया जाएगा.

अनुरोध

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        requests: [{
                policyTargetKey: {
                        targetResource: "orgunits/04fatzly4jbjho9"
                        },
                policyValue: {
                        policySchema: "chrome.devices.kiosk.appsconfig.AutoLaunchApp",
                        value: {appId: "None"}
                        },
                updateMask: {paths: "appId"}
                }]
      }' \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"

जवाब

कामयाब जवाब वाला फ़ील्ड खाली है.

{}