Die folgenden Anfragen veranschaulichen die Richtlinienverwaltung mit der Policy API. Bevor Sie beginnen, sollten Sie die Übersicht über die Chrome Policy API lesen. Dort finden Sie eine allgemeine Zusammenfassung der Funktionen dieser API.
Bei allen unten aufgeführten Anfragen werden die folgenden Variablen verwendet:
$TOKEN
– OAuth 2-Token$CUSTOMER
– ID des Kunden oder Literalsmy_customer
Schemas für Druckerrichtlinien auflisten
Zum Auflisten von Schemas, die nur Richtlinien für Drucker betreffen, wenden wir den filter
-Parameter auf die Listenanfrage für den Schemadienst an. Sie können die Paginierung des Ergebnisses mithilfe der Parameter pageSize
und pageToken
steuern.
Anfragen
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policySchemas?filter=chrome.printers&pageSize=2"
Antwort
{
"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"
}
Nach Schemas suchen
Sie können komplexe Suchanfragen mit dem Parameter filter=
in der Listenanfrage für den Schemadienst erstellen. Wenn Sie beispielsweise nach Schemas suchen möchten, die das Wort „Drucker“ im Namen und das Wort „Geräte“ in der Beschreibung enthalten, können Sie den folgenden Wert auf den Filter name=printers AND description=devices
anwenden.
Anfragen
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policySchemas?filter=name=printers%20AND%20description=devices"
Antwort
{
"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"
}
]
}
Ein bestimmtes Schema abrufen
Im Ergebnis oben sehen Sie eine Liste der unterstützten Richtlinienschemas. Jedes Schema hat ein name
-Feld, das das Schema identifiziert. Sobald Sie den Schemanamen kennen, können Sie das spezifische Schema künftig direkt auslesen, indem Sie in der Anfrage-URL auf den Schemanamen verweisen.
Sehen wir uns ein Beispiel für das Schema chrome.printers.AllowForUsers
an.
Anfragen
curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policySchemas/chrome.printers.AllowForUsers"
Antwort
{
"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"
}
Die obige Richtlinienschemaantwort beschreibt das Schema der chrome.printers.AllowForUsers
-Richtlinie. Hinweisfeld additionalTargetKeyNames
.
In diesem Feld wird erklärt, dass für die Richtlinie im Umgang mit dieser Richtlinie zusätzliche Schlüssel/Wert-Paare angegeben werden müssen. Insbesondere müssen wir für diese Richtlinie immer die Kennung eines Druckers angeben.
Richtlinienwert lesen
Sehen wir uns die chrome.printers.AllowForUsers
-Richtlinie für einen bestimmten Drucker an.
Beachten Sie, dass das Feld additionalTargetKeys
verwendet wird, um die Drucker-ID in der Anfrage anzugeben.
Sie können eine Richtlinie aus einer Organisationseinheit oder aus einer Gruppe lesen.
Beachten Sie in der Antwort das Feld sourceKey
, das angibt, aus welcher Organisationseinheit oder Gruppe der Wert der Richtlinie stammt. Für Organisationseinheiten gibt es folgende Möglichkeiten:
- Wenn die Quellorganisationseinheit mit der in einer Anfrage angegebenen Organisationseinheit identisch ist, bedeutet dies, dass die Richtlinie lokal in dieser Organisationseinheit angewendet wird.
- Wenn sich die Quellorganisationseinheit von der in einer Anfrage angegebenen Organisationseinheit unterscheidet, bedeutet dies, dass die Richtlinie von der Quellorganisationseinheit übernommen wird.
- Wenn kein
sourceKey
vorhanden ist oder die Antwort leer ist, wurde die Richtlinie nicht für den Kunden festgelegt und hat den Standardsystemwert.
Bei Gruppen ist „sourceKey“ immer mit der in der Anfrage angegebenen Gruppe identisch.
Das folgende Beispiel bezieht sich auf eine Organisationseinheit. Eine Gruppenanfrage wäre dieselbe, mit Ausnahme der targetResource, deren ID "groups/" anstelle von "orgunits/" vor der ID steht.
Anfragen
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"
Antwort
{
"resolvedPolicies": [
{
"targetKey": {
"targetResource": "orgunits/03ph8a2z1xdnme9"
"additionalTargetKeys": {"printer_id":"0gjdgxs208tpef"}
},
"value": {
"policySchema": "chrome.users.AllowForDevices",
"value": {
"allowForDevices": true
}
},
"sourceKey": {
"targetResource": "orgunits/03ph8a2z3qhz81k"
}
}
]
}
Alle Entitäten in den Zielressourcen können durch Weglassen von additionalTargetKeys
in der Anfrage abgerufen werden. Wird beispielsweise additionalTargetKeys
in der obigen Anfrage weggelassen, werden alle Drucker in der angegebenen Zielressource zurückgegeben.
Mehrere Richtlinien lesen
Ein Schema-Namespace mit einem Sternchen wird angegeben (z.B. chrome.printers.*
) ermöglicht es Ihnen, Werte für alle Richtlinien in diesem Namespace in einer bestimmten Organisationseinheit oder Gruppe zu lesen. Weitere Informationen zu Richtlinienschemas
Das folgende Beispiel bezieht sich auf eine Organisationseinheit. Eine Gruppenanfrage wäre dieselbe, mit Ausnahme der targetResource, deren ID "groups/" anstelle von "orgunits/" vor der ID steht.
Anfragen
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"
Antwort
{
"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="
}
Richtlinienwert ändern
Wie in der Richtlinienschemaantwort zu sehen ist, hat die Richtlinie chrome.printers.AllowForUsers
ein Feld mit dem Namen allowForUsers
. Der Typ dieses Felds ist ein boolescher Wert. Beispielwert für die Richtlinie kann entweder {allowForUsers: false}
oder {allowForUsers: true}
sein. In diesem speziellen Fall gibt es nur ein Feld, andere Richtlinien können jedoch mehrere Felder enthalten.
In Änderungsanfragen muss ein updateMask
angegeben werden. Die Aktualisierungsmaske listet alle Felder auf, die Sie ändern möchten. Wenn die Richtlinie bereits lokal in der Organisationseinheit angewendet wurde, bleiben die Felder, die nicht über die Aktualisierungsmaske aufgeführt sind, unverändert. Wenn die Richtlinie nicht bereits lokal in der Organisationseinheit angewendet wurde und alle Felder, die nicht über eine Aktualisierungsmaske aufgeführt sind, ihre Werte gegebenenfalls aus der übergeordneten Organisationseinheit kopieren. Die gesamte Richtlinie wird dann lokal angewendet.
Die folgenden Beispiele beziehen sich auf eine Organisationseinheit. Gruppenanfragen sind identisch, mit Ausnahme der targetResource, deren ID „groups/“ anstelle von „orgunits/“ vor der ID steht. Hier wird der Drucker 0gjdgxs208tpef
für Nutzer in der Organisationseinheits-ID 04fatzly4jbjho9
nicht zugelassen:
Anfragen
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"
Antwort
Eine erfolgreiche Antwort ist leer.
{}
Felder mit mehreren Werten wie Listen oder Arrays sind mit dem Label "LABEL_REPEATED" gekennzeichnet. Wenn Sie Felder mit mehreren Werten füllen möchten, verwenden Sie das folgende JSON-Arrayformat: [value1, value2, value3, ...]
.
Um zum Beispiel Quell-URLs für App- und Erweiterungspakete als "test1.com", "test2.com" und "test3.com" festzulegen, müssen wir die folgende Anfrage senden:
Anfragen
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"
Antwort
Eine erfolgreiche Antwort ist leer.
{}
Für alle Richtlinien, die NullableDuration-Felder enthalten, gibt es zwei Versionen. Die Originalversion akzeptiert nur Strings als Eingabe für NullableDuration und wurde verworfen. Verwenden Sie Version 2, die den Dauertyp durch eine numerische Eingabe ersetzt. Um beispielsweise die maximale Länge einer Nutzersitzung auf 10 Minuten festzulegen, müssen Sie die folgende Anfrage senden:
Anfragen
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"
Antwort
Eine erfolgreiche Antwort ist leer.
{}
Mehrere Richtlinien gleichzeitig ändern
Mit der Methode batchModify
können Sie mehrere Richtlinienänderungen gleichzeitig senden.
Es können jedoch nicht alle Richtlinien zusammengefasst werden. Weitere Informationen finden Sie unter Richtlinien für Batch-Updates.
In diesem Beispiel ändern wir in derselben Anfrage zwei verschiedene Richtlinien (chrome.printers.AllowForDevices
und chrome.printers.AllowForUsers
) für denselben Drucker.
Das folgende Beispiel bezieht sich auf eine Organisationseinheit. Eine Gruppenanfrage wäre dieselbe, mit Ausnahme der targetResource, deren ID "groups/" anstelle von "orgunits/" vor der ID steht.
Anfragen
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"
Antwort
Eine erfolgreiche Antwort ist leer.
{}
Richtlinienwert in einer Organisationseinheit übernehmen
Mit der Methode batchInherit
können Sie den Status der Richtlinie in einer Organisationseinheit von „lokal angewendet“ in „übernommen“ ändern. Lokale Werte werden gelöscht und die Richtlinie übernimmt gegebenenfalls Werte von einer übergeordneten Organisationseinheit.
Mit der Methode batchInherit
können Sie auch mehrere Anfragen zur Übernahme von Richtlinien gleichzeitig senden. Es können jedoch nicht alle Richtlinien zusammengefasst werden.
Weitere Informationen finden Sie unter Richtlinien für Batch-Updates.
Anfragen
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"
Antwort
Eine erfolgreiche Antwort ist leer.
{}
Richtlinienwert in einer Gruppe löschen
Mit der Methode batchDelete
können Sie eine Richtlinie aus einer Gruppe löschen. Lokale Werte werden gelöscht.
Mit der Methode batchDelete
können Sie auch mehrere Anfragen zum Löschen von Richtlinien gleichzeitig senden. Es können jedoch nicht alle Richtlinien zusammengefasst werden.
Weitere Informationen findest du unter Richtlinien für Batch-Updates.
Anfragen
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"
Antwort
Eine erfolgreiche Antwort ist leer.
{}
Prioritätsreihenfolge für eine Gruppe auflisten
Mit der Methode listGroupPriorityOrdering
können Sie die Prioritätsreihenfolge der Gruppen für eine App auflisten.
Die Reihenfolge der zurückgegebenen Gruppen-IDs gibt die Priorität an, mit der ihre Einstellungen auf die Anwendung angewendet werden. Richtlinien für spätere IDs werden von Richtlinien überschrieben, deren IDs weiter oben in der Liste stehen.
Beachten Sie, dass Gruppenprioritäten höher sind als Prioritäten für Organisationseinheiten.
In dieser Anfrage wird die Prioritätsreihenfolge für die Chrome-Nutzer-App "exampleapp" zurückgegeben.
Anfragen
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"
Antwort
{
"policyTargetKey": {
"additionalTargetKeys": {
"app_id": "chrome:exampleapp"
}
},
"policyNamespace": "chrome.users.apps",
"groupIds": [
"03ep43zb2k1nodu",
"01t3h5sf2k52kol",
"03q5sasy2ihwnlz"
]
}
Prioritätsreihenfolge für eine Gruppe aktualisieren
Mit der Methode updateGroupPriorityOrdering
können Sie die Prioritätsreihenfolge der Gruppen für eine App aktualisieren.
Die Reihenfolge der Gruppen-IDs in der Anfrage gibt die Priorität an, mit der ihre Einstellungen auf die Anwendung angewendet werden. Richtlinien für spätere IDs werden von Richtlinien überschrieben, deren IDs sich weiter oben in der Liste befinden. Die Anfrage muss jede Gruppen-ID enthalten, die derzeit auf die App angewendet wird.
Beachten Sie, dass Gruppenprioritäten höher sind als Prioritäten für Organisationseinheiten.
In dieser Anfrage legen wir die Prioritätsreihenfolge für die Chrome-Nutzer-App „beispielapp“ fest.
Anfragen
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"
Antwort
Eine erfolgreiche Antwort ist leer.
{}
Umgang mit Richtlinien, die eine Bestätigung erfordern
Einige Richtlinienschemas geben Hinweise für bestimmte Werte eines bestimmten Feldes an, die bestätigt werden müssen.
Beispiel für die Richtlinie chrome.users.PluginVmAllowd
:
{
"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"
}
Wenn im obigen Beispiel der Wert des Felds pluginVmAllowed
auf true
gesetzt wird, wird ein Hinweis mit acknowledgementRequired
zugeordnet. Um diesen Feldwert ordnungsgemäß auf true
zu setzen, müssen Sie eine Anfrage senden, in der das Bestätigungsfeld ackNoticeForPluginVmAllowedSetToTrue
auf true
festgelegt ist. Andernfalls wird in der Anfrage ein Fehler zurückgegeben.
In diesem Beispiel müssten Sie die folgende Batch-Änderungsanfrage senden.
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"
Dateirichtlinien festlegen
Einige Richtlinien haben Felder mit dem Typ UploadedFile
. Sie müssen die Datei, die Sie als Wert dieser Richtlinien festlegen möchten, auf den API-Server hochladen, um eine URL für die Verwendung in BatchModify
-Anfragen zu erhalten.
In diesem Beispiel legen wir chrome.users.Wallpaper
durch Hochladen einer JPEG-Datei fest.
Datei hochladen
Anfragen
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"
Antwort
Eine erfolgreiche Antwort sollte die URL für den Zugriff auf die Datei enthalten:
{
"downloadUri": "https://storage.googleapis.com/chromeos-mgmt/0gjdgxs370bkl6/ChromeOsWallpaper/32ac50ab-b5ae-4bba-afa8-b6b443912897"
}
Dateirichtlinie festlegen
Anfragen
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"
Antwort
Eine erfolgreiche Antwort sollte leer sein.
{}