Kod örnekleri

Aşağıdaki isteklerde, Policy API ile politika yönetimi gösterilmektedir. Sizden önce önce Chrome Policy API'ye Genel Bakış sayfasını ziyaret edin.

Aşağıda sunulan tüm istekler aşağıdaki değişkenleri kullanır:

  • $TOKEN - OAuth 2 jetonu
  • $CUSTOMER - Müşterinin kimliği veya değişmez değeri my_customer

Yazıcı politikaları için şemaları listeleme

Yalnızca yazıcılarla ilgili politikaları ilgilendiren şemaları listelemek için filter parametresini Şema Hizmeti liste isteğine ekler. Sayfalara ayırma işlemini kontrol edebilirsiniz. pageSize ve pageToken parametrelerini kullanır.

İstek

  curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policySchemas?filter=chrome.printers&pageSize=2"

Yanıt

{
  "policySchemas": [
    {
      "name": "customers/C0202nabg/policySchemas/chrome.printers.AllowForUsers",
      "policyDescription": "Allows a printer for users in a given organization.",
      "additionalTargetKeyNames": [
        {
          "key": "printer_id",
          "keyDescription": "Id of printer as visible in Admin SDK printers API."
        }
      ],
      "definition": {
        "messageType": [
          {
            "name": "AllowForUsers",
            "field": [
              {
                "name": "allowForUsers",
                "number": 1,
                "label": "LABEL_OPTIONAL",
                "type": "TYPE_BOOL"
              }
            ]
          }
        ]
      },
      "fieldDescriptions": [
        {
          "field": "allowForUsers",
          "description": "Controls whether a printer is allowed for users in a given organization."
        }
      ],
      "schemaName": "chrome.printers.AllowForUsers"
    },
    {
      "name": "customers/C0202nabg/policySchemas/chrome.printers.AllowForDevices",
      "policyDescription": "Allows a printer for devices in a given organization.",
      "additionalTargetKeyNames": [
        {
          "key": "printer_id",
          "keyDescription": "Id of printer as visible in Admin SDK printers API."
        }
      ],
      "definition": {
        "messageType": [
          {
            "name": "AllowForDevices",
            "field": [
              {
                "name": "allowForDevices",
                "number": 1,
                "label": "LABEL_OPTIONAL",
                "type": "TYPE_BOOL"
              }
            ]
          }
        ]
      },
      "fieldDescriptions": [
        {
          "field": "allowForDevices",
          "description": "Controls whether a printer is allowed for devices in a given organization."
        }
      ],
      "schemaName": "chrome.printers.AllowForDevices"
    }
  ],
  "nextPageToken": "AEbDN_obE8A98T8YhIeU9VCIZhEBylLBwZRQpGu_DUug-mU4bnzcDx30UnO2xMuuImvfVpmeuXRF6VhJ4OmZpZ4H6EaRvu2qMOPxVN_u"
}

Şema arayın

Şemada filter= parametresini kullanarak karmaşık arama sorguları oluşturabilirsiniz Hizmet listesi isteği. Örneğin, "yazıcı" kelimesi "cihazlar" adında ve kelimesinde açıklama bölümünde şu değeri name=printers AND description=devices filtresine ekleyin.

Politika şemalarını nasıl listeleyeceğinizi öğrenin.

İstek

  curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policySchemas?filter=name=printers%20AND%20description=devices"

Yanıt

{
  "policySchemas": [
    {
      "name": "customers/C0202nabg/policySchemas/chrome.printers.AllowForDevices",
      "policyDescription": "Allows a printer for devices in a given organization.",
      "additionalTargetKeyNames": [
        {
          "key": "printer_id",
          "keyDescription": "Id of printer as visible in Admin SDK printers API."
        }
      ],
      "definition": {
        "messageType": [
          {
            "name": "AllowForDevices",
            "field": [
              {
                "name": "allowForDevices",
                "number": 1,
                "label": "LABEL_OPTIONAL",
                "type": "TYPE_BOOL"
              }
            ]
          }
        ]
      },
      "fieldDescriptions": [
        {
          "field": "allowForDevices",
          "description": "Controls whether a printer is allowed for devices in a given organization."
        }
      ],
      "schemaName": "chrome.printers.AllowForDevices"
    }
  ]
}

Belirli bir şemayı alma

Yukarıdaki sonuçta, desteklenen politika şemalarının listesini görürsünüz. Her şemada şemayı tanımlayan bir name alanı. Gelecekte, ne tür bir işin varsa, aynı şemayı kullanmak için şema adını ekleyin.

chrome.printers.AllowForUsers şemasıyla ilgili bir örneği inceleyelim.

İstek

  curl -X GET \
  -H "Authorization: Bearer $TOKEN" \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policySchemas/chrome.printers.AllowForUsers"

Yanıt

{
  "name": "customers/C0202nabg/policySchemas/chrome.printers.AllowForUsers",
  "policyDescription": "Allows a printer for users in a given organization.",
  "additionalTargetKeyNames": [
    {
      "key": "printer_id",
      "keyDescription": "Id of printer as visible in Admin SDK printers API."
    }
  ],
  "definition": {
    "messageType": [
      {
        "name": "AllowForUsers",
        "field": [
          {
            "name": "allowForUsers",
            "number": 1,
            "label": "LABEL_OPTIONAL",
            "type": "TYPE_BOOL"
          }
        ]
      }
    ]
  },
  "fieldDescriptions": [
    {
      "field": "allowForUsers",
      "description": "Controls whether a printer is allowed for users in a given organization."
    }
  ],
  "schemaName": "chrome.printers.AllowForUsers"
}

Yukarıdaki politika şeması yanıtında chrome.printers.AllowForUsers politikası. Bildirim alanı additionalTargetKeyNames. Bu alan, politikanın ek anahtarlar/değerler sağlanmasını gerektirdiğini açıklar dikkate almanız gerekir. Özellikle, bu politika için her zaman bir yazıcının tanımlayıcısını girin.

Politika değerini okuma

Belirli bir yazıcıyla ilgili politikayı chrome.printers.AllowForUsers okuyalım. İstekte yazıcı kimliğini belirtmek için additionalTargetKeys alanının kullanıldığına dikkat edin.

Bir Kuruluş Biriminden veya Gruptan politika okuyabilirsiniz.

Yanıtta, hangi sourceKey alanına ait olduğunu belirten Politikanın geldiği kuruluş birimi veya grup. Örneğin, Kuruluş Birimleri için aşağıdaki olasılıklar vardır:

  • Kaynak Kuruluş Birimi, isteği, politikanın bu Kuruluş Biriminde yerel olarak uygulandığı anlamına gelir.
  • Kaynak Kuruluş Birimi, bu istek, politikanın Kuruluştaki kaynaktan devralındığı anlamına gelir Birim.
  • sourceKey yoksa veya yanıt boşsa politika ve varsayılan sistem değerine sahip olduğundan emin olun.

Gruplar için, sourceKey her zaman belirtildiğinden emin olun.

Aşağıdaki örnek bir kuruluş birimi içindir. Grup isteği ve "groups/" bulunan targetResource haricinde aynıdır. yerine "orgunits/" önce eklemeniz gerekir.

İstek

  curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        policyTargetKey: {
          targetResource: "orgunits/04fatzly4jbjho9",
          additionalTargetKeys: {"printer_id":"0gjdgxs208tpef"}
        },
        policySchemaFilter: "chrome.printers.AllowForDevices"
    }' \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies:resolve"

Yanıt

{
  "resolvedPolicies": [
    {
      "targetKey": {
        "targetResource": "orgunits/03ph8a2z1xdnme9"
        "additionalTargetKeys": {"printer_id":"0gjdgxs208tpef"}
      },
      "value": {
        "policySchema": "chrome.users.AllowForDevices",
        "value": {
          "allowForDevices": true
        }
      },
      "sourceKey": {
        "targetResource": "orgunits/03ph8a2z3qhz81k"
      }
    }
  ]
}

Hedef kaynaklardaki tüm varlıkların atlanarak getirilebileceğini unutmayın additionalTargetKeys. Örneğin, additionalTargetKeys Bu işlem, yukarıdaki istekten çıkarıldığında belirtilen hedef kaynak.

Birden çok politikayı okuyun

Yıldız işaretiyle bir şema ad alanı sağlayarak (ör. chrome.printers.*) izin verilir belirli bir ad alanındaki tüm politikaların değerlerini okumanızı Kuruluş Birimi veya Grup. Daha fazla bilgi: Politika Şemaları

Aşağıdaki örnek bir kuruluş birimi içindir. Grup isteği ve "groups/" bulunan targetResource haricinde aynıdır. yerine "orgunits/" önce eklemeniz gerekir.

İstek

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

Yanıt

{
  "resolvedPolicies": [
    {
      "targetKey": {
        "targetResource": "orgunits/04fatzly4jbjho9",
        "additionalTargetKeys": {
          "printer_id": "0gjdgxs0xd59y1"
        }
      },
      "value": {
        "policySchema": "chrome.printers.AllowForUsers",
        "value": {
          "allowForUsers": false
        }
      }
    },
    {
      "targetKey": {
        "targetResource": "orgunits/04fatzly4jbjho9",
        "additionalTargetKeys": {
          "printer_id": "0gjdgxs0xd59y1"
        }
      },
      "value": {
        "policySchema": "chrome.printers.AllowForDevices",
        "value": {
          "allowForDevices": false
        }
      }
    },
    //...
  ],
  "nextPageToken": "AEbDN_pFvDeGSbQDkvMxr4UA0Ew7UEUw8aJyw95VPs2en6YxMmFcWQ9OQQEIeSkjnWFCQNyz5GGoOKQGEd50e2z6WqvM2w7sQz6TMxVOBD_4NmEHRWtIJCYymeYXWHIrNH29Ezl1wkeyYBAOKnE="
}

Politika değerini değiştirin

Politika şeması yanıtında görüldüğü gibi, chrome.printers.AllowForUsers allowForUsers adlı bir alana sahip. Bu alan boole türünde. Örnek politika değeri {allowForUsers: false} veya {allowForUsers: true}. Bu örnekte, tek bir alanımız var, Ancak diğer politikalar birden fazla alan içerebilir.

Değiştirme isteklerinde bir updateMask belirtmemiz gerekir. Maskeyin listesini güncelle alanları dolduracağım. Politika Güncelleme maskesi aracılığıyla listelenmeyen alanlar, otomatik olarak hiçbir şey değişmez. Politika, Kuruluş Birimi'ne ve güncelleme maskesi aracılığıyla listelenmeyen tüm alanlara uygun olduğunda üst kuruluş biriminden değerlerini kopyalayın ve politikanın tamamı yerel olarak uygulanır.

Aşağıdaki örnekler bir kuruluş birimi içindir. Grup istekleri aynı olan targetResource haricinde, "groups/" olacaktır. yerine "orgunits/" önce eklemeniz gerekir. Burada, şunun için bir 0gjdgxs208tpef yazıcısına izin vermeyeceğiz: 04fatzly4jbjho9 Kuruluş Birimi Kimliğindeki kullanıcılar:

İstek

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        requests: [{
                policyTargetKey: {
                        targetResource: "orgunits/04fatzly4jbjho9",
                        additionalTargetKeys: {"printer_id":"0gjdgxs208tpef"}
                        },
                policyValue: {
                        policySchema: "chrome.printers.AllowForUsers",
                        value: {allowForUsers: false}
                        },
                updateMask: {paths: "allowForUsers"}
                }]
      }' \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"

Yanıt

Başarılı yanıt boş.

{}

Listeler veya diziler gibi birden çok değerli alanlar "LABEL_REPEATED" ile işaretlenir etiket. Birden çok değere sahip alanları doldurmak için aşağıdaki JSON dizisi biçimini kullanın: [value1, value2, value3, ...]

Örneğin, uygulama ve uzantı paketlerinin kaynak URL'lerini "test1.com", "test2.com" aşağıdaki isteği göndermemiz gerekir:

İstek

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d "{
        requests: [
          {
            policy_target_key: {
              target_resource: 'orgunits/03ph8a2z28rz85a'
            },
            updateMask: {
              paths: ['extensionInstallSources']
            },
            policy_value: {
              policy_schema: 'chrome.users.appsconfig.AppExtensionInstallSources', 
              value: {
                extensionInstallSources: ['test1.com', 'test2.com', 'test3.com']
              }
            }
          }
        ]
      }" \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"

Yanıt

Başarılı yanıt boş.

{}

NullableDuration alanları içeren tüm politikaların iki sürümü vardır. Orijinal sürüm, NullableDuration için yalnızca dizeyi giriş olarak kabul ediyor ve artık desteği sonlandırıldı. Lütfen süre türünü sayısal giriştir. Örneğin, maksimum kullanıcı oturumu uzunluğunu 10 dakika olarak ayarlamak için aşağıdaki isteği göndermemiz gerekiyor:

İstek

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d "{
        requests: [
          {
            policy_target_key: {
              target_resource: 'orgunits/03ph8a2z28rz85a'
            },
            updateMask: {
              paths: ['sessionDurationLimit']
            },
            policy_value: {
              policy_schema: 'chrome.users.SessionLengthV2',
              value: {
                sessionDurationLimit: {
                  duration: 10
                }
              }
            }
          }
        ]
      }" \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"

Yanıt

Başarılı yanıt boş.

{}

Tek seferde birden çok politikayı değiştirme

batchModify yöntemi, aynı anda birden fazla politika değişikliği göndermenize olanak tanır. Ancak tüm politikalar birlikte toplu halde kullanılamaz. Daha ayrıntılı bilgi için Politikaları toplu güncelleme başlıklı makaleyi inceleyin.

Bu örnekte, aynı istekte iki farklı politikalar (chrome.printers.AllowForDevices ve chrome.printers.AllowForUsers) giriş yaparsınız.

Aşağıdaki örnek bir kuruluş birimi içindir. Grup isteği ve "groups/" bulunan targetResource haricinde aynıdır. yerine "orgunits/" önce eklemeniz gerekir.

İstek

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        requests: [{
                policyTargetKey: {
                        targetResource: "orgunits/04fatzly4jbjho9",
                        additionalTargetKeys: {"printer_id":"0gjdgxs208tpef"}
                        },
                policyValue: {
                        policySchema: "chrome.printers.AllowForDevices",
                        value: {allowForDevices: true}
                        },
                updateMask: {paths: "allowForDevices"}
                },
                {
                policyTargetKey: {
                        targetResource: "orgunits/04fatzly4jbjho9",
                        additionalTargetKeys: {"printer_id":"0gjdgxs208tpef"}
                        },
                policyValue: {
                        policySchema: "chrome.printers.AllowForUsers",
                        value: {allowForUsers: true}
                        },
                updateMask: {paths: "allowForUsers"}
                }]
      }' \
  "https://chromepolicy.googleapis.com/v1/customers/C0202nabg/policies/orgunits:batchModify"

Yanıt

Başarılı yanıt boş.

{}

Bir Kuruluş Biriminde politika değeri devralma

batchInherit yöntemi, bir Kuruluş Birimindeki politikanın durumunu "yerel olarak uygulandı" değer "devralındı" olarak değiştirildi. Yerel değerler temizlenecek ve politika uygun durumlarda üst kuruluş biriminden değerler devralacaktır.

batchInherit yöntemi, birden fazla politika devralma göndermenize de olanak tanır ekleyebilirsiniz. Ancak tüm politikalar birlikte toplu halde kullanılamaz. Daha ayrıntılı bilgi için Politikaları toplu güncelleme başlıklı makaleyi inceleyin.

İstek

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        requests: [{
                policyTargetKey: {
                        targetResource: "orgunits/04fatzly12wd3ox",
                        additionalTargetKeys: {"printer_id":"0gjdgxs208tpef"}
                        },
                policySchema: "chrome.printers.AllowForUsers"
                }]
      }' \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchInherit"

Yanıt

Başarılı yanıt boş.

{}

Gruptaki bir politika değerini silme

batchDelete yöntemi, Gruptaki bir politikayı silmenizi sağlar. Yerel değerler temizlenecek.

batchDelete yöntemi, birden fazla politika silme işlemi göndermenize de olanak tanır. ekleyebilirsiniz. Ancak tüm politikalar birlikte toplu halde kullanılamaz. Daha fazla bilgi için bkz. Politikaları toplu güncelleme

İstek

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        requests: [{
                policyTargetKey: {
                        targetResource: "groups/04fatzly12wd3ox",
                        additionalTargetKeys: {"printer_id":"0gjdgxs208tpef"}
                        },
                policySchema: "chrome.printers.AllowForUsers"
                }]
      }' \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/groups:batchDelete"

Yanıt

Başarılı yanıt boş.

{}

Grup için öncelik sıralamasını listeleme

listGroupPriorityOrdering yöntemi, bir uygulama için Gruplar'ın öncelik sıralamasını listelemenize olanak tanır.

Döndürülen Grup Kimliklerinin sırası, öğenin ait olduğu ayarları uygulamaya uygulanır; sonraki kimlikler politikaları kimlikleri listede daha önce bulunan politikalar tarafından geçersiz kılınır.

Grup önceliklerinin, Kuruluş Birimi önceliklerinden daha yüksek olduğunu unutmayın.

Bu istekte, "exampleapp" için öncelik sıralamasını döndürüyoruz. Chrome Kullanıcı uygulaması.

İstek

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        policyTargetKey: {
                additionalTargetKeys: {"app_id":"chrome:exampleapp"}
                },
        policyNamespace: 'chrome.users.apps'
      }' \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/groups:listGroupPriorityOrdering"

Yanıt

{
  "policyTargetKey": {
    "additionalTargetKeys": {
      "app_id": "chrome:exampleapp"
    }
  },
  "policyNamespace": "chrome.users.apps",
  "groupIds": [
    "03ep43zb2k1nodu",
    "01t3h5sf2k52kol",
    "03q5sasy2ihwnlz"
  ]
}

Grup için öncelik sıralamasını güncelleme

updateGroupPriorityOrdering yöntemi, bir uygulama için Gruplar'ın öncelik sıralamasını güncellemenize olanak tanır.

İstekteki Grup Kimlikleri sıralaması, ayarları uygulamaya uygulanır; sonraki kimlikler politikaları kimlikleri listede daha önce bulunan politikalar tarafından geçersiz kılınır. İstek, şu anda uygulamada uygulanan her Grup Kimliğini dahil edin.

Grup önceliklerinin, Kuruluş Birimi önceliklerinden daha yüksek olduğunu unutmayın.

Bu istekte "exampleapp" için öncelik sıralamasını ayarlıyoruz Chrome Kullanıcı uygulaması.

İstek

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        policyTargetKey: {
                additionalTargetKeys: {"app_id":"chrome:exampleapp"}
                },
        policyNamespace: 'chrome.users.apps',
        groupIds: ['03ep43zb2k1nodu', '01t3h5sf2k52kol', '03q5sasy2ihwnlz']
      }' \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/groups:updateGroupPriorityOrdering"

Yanıt

Başarılı yanıt boş.

{}

Onay Gerektiren Politikaları İşleme

Bazı politika şemaları "bildirimler"i belirtir belirli bir alanın belirli değerleri için gerekir.

chrome.users.PluginVmAllowd. politika için örnek:

{
  "name": "customers/C0202nabg/policySchemas/chrome.users.PluginVmAllowed",
  "policyDescription": "Parallels Desktop.",
  # ...
  "fieldDescriptions": [
    {
      "field": "pluginVmAllowed",
      "description": "N/A",
      "knownValueDescriptions": [
        {
          "value": "true",
          "description": "Allow users to use Parallels Desktop."
        },
        {
          "value": "false",
          "description": "Do not allow users to use Parallels Desktop."
        }
      ]
    },
    {
      "field": "ackNoticeForPluginVmAllowedSetToTrue",
      "description": "This field must be set to true to acknowledge the notice message associated with the field 'plugin_vm_allowed' set to value 'true'. Please see the notices listed with this policy for more information."
    }
  ],
  "notices": [
    {
      "field": "pluginVmAllowed",
      "noticeValue": "true",
      "noticeMessage": "By enabling Parallels Desktop, you agree to the Parallels End-User License Agreement specified at https://www.parallels.com/about/legal/eula/. Warning: Device identifiers may be shared with Parallels. Please see privacy policy for more details at https://www.parallels.com/about/legal/privacy/. The minimum recommended configuration includes an i5 processor, 16 GB RAM, and 128 GB storage: https://support.google.com/chrome/a/answer/10044480.",
      "acknowledgementRequired": true
    }
  ],
  "supportUri": "...",
  "schemaName": "chrome.users.PluginVmAllowed"
}

Yukarıdaki örnekte, pluginVmAllowed alanının değeri true olarak ayarlandığında acknowledgementRequired içeren bir bildirimle ilişkilendirilmiş. Düzgün bir şekilde bu alan değerini true olarak ayarlarsanız şunu belirten bir istek göndermeniz gerekir: onay alanını ackNoticeForPluginVmAllowedSetToTrue - true, Aksi takdirde isteğinizde hata alırsınız.

Bu örnekte, aşağıdaki toplu değiştirme isteğini göndermeniz gerekir.

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d "{
  'requests': [
    {
      'policyTargetKey': {
        'targetResource': 'orgunits/03ph8a2z10ybbh2'
      },
      'policyValue': {
        'policySchema': 'chrome.users.PluginVmAllowed',
        'value': {
          'pluginVmAllowed': true,
          'ackNoticeForPluginVmAllowedSetToTrue': true
        }
      },
      'updateMask': {
        'paths': [
          'pluginVmAllowed',
          'ackNoticeForPluginVmAllowedSetToTrue'
        ]
      }
    }
  ]
}" \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"

Dosya Politikalarını Belirleme

Bazı politikalarda UploadedFile olarak yazılmış alanlar vardır. değeri olarak ayarlamak istediğiniz bir dosyadır. Bu politikaların değeri olarak BatchModify isteklerinde kullanılacak bir URL almak için.

Bu örnekte, chrome.users.Wallpaper değerini JPEG dosyası olarak gösterilir.

Dosyayı yükleme

İstek

curl -X POST \
  -H "Content-Type: image/jpeg" \
  -H "Authorization: Bearer $TOKEN" \
  -T "/path/to/the/file" \
  "https://chromepolicy.googleapis.com/upload/v1/customers/$CUSTOMER/policies/files:uploadPolicyFile?policy_field=chrome.users.Wallpaper.wallpaperImage"

Yanıt

Başarılı bir yanıt, dosyaya erişecek URL'yi içermelidir:

{
  "downloadUri": "https://storage.googleapis.com/chromeos-mgmt/0gjdgxs370bkl6/ChromeOsWallpaper/32ac50ab-b5ae-4bba-afa8-b6b443912897"
}

Dosya politikasını ayarlama

İstek

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
        requests: [{
                policyTargetKey: {
                        targetResource: "orgunits/04fatzly4jbjho9",
                        },
                policyValue: {
                        policySchema: "chrome.users.Wallpaper",
                        value: {
                          wallpaperImage: {downloadUri: "https://storage.googleapis.com/chromeos-mgmt/0gjdgxs370bkl6/ChromeOsWallpaper/32ac50ab-b5ae-4bba-afa8-b6b443912897"}
                          }
                        },
                updateMask: {paths: "wallpaperImage"}
                }]
      }' \
  "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"

Yanıt

Başarılı bir yanıt boş bırakılmalıdır.

{}