Poniższe żądania ilustrują zarządzanie zasadami za pomocą interfejsu Policy API za pomocą zasad aplikacji. Zanim zaczniesz, zapoznaj się z Omówienie Chrome Policy API oraz Przewodnik po schematach zasad.
Wszystkie przedstawione poniżej żądania używają następujących zmiennych:
$TOKEN
– token OAuth 2$CUSTOMER
– identyfikator klienta lub literałumy_customer
.
Wymuszanie instalacji aplikacji
Poniższe przykłady dotyczą jednostki organizacyjnej. Żądanie grupy wyglądałoby tak taki sam oprócz zasobu targetResource, który ma parametr „groups/” zamiast „jednostki organizacyjne/” przed identyfikatorem.
W tym miejscu ustawiamy wymuszanie instalacji aplikacji Rysunki Google:
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"
Pomyślna odpowiedź powinna być pusta:
{}
Ten przykład dotyczy aplikacji użytkownika. Żądanie zarządzanej sesji gościa wyglądałoby tak
identyczna z wyjątkiem tego, że schemat zasad byłby taki sam
chrome.devices.managedguest.apps.InstallType
Odpowiednik zasady aplikacji kiosku
żądanie wygląda tak:
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"
Pomyślna odpowiedź powinna być pusta:
{}
Usuwanie aplikacji
Aplikację można usunąć tylko w jednostce organizacyjnej, w której została ona
dodane do zarządzania. Podczas wywoływania funkcji Rozwiąż pole,
Pole addedSourceKey
zawiera jednostkę organizacyjną, w której został dodany dla
i zarządzania nimi. Inaczej mówiąc, pole delete
powinno być wywoływane tylko w przypadku aplikacji, w których
Jednostka organizacyjna w domenie addedSourceKey
jest równa
policyTargetKey
Aby usunąć aplikację (jednoznacznie usunąć ją z zarządzania), musisz wysłać
żądanie batchInherit
, w którym policySchema
jest schematem danego argumentu
typu aplikacji. Aby wskazać konkretną zasadę, użyj gwiazdki (*). W tym przykładzie
usuwamy aplikację Rysunki Google, która jest zainstalowana
„04fatzly4jbjho9” Jednostka organizacyjna:
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"
Pomyślna odpowiedź powinna być pusta:
{}
Prośby o usunięcie aplikacji kiosku i aplikacji zarządzanej sesji gościa będą używać polecenia
chrome.devices.kiosk.apps.\*
i chrome.devices.managedguest.apps.\*
schematy.
Pobieranie zasad instalowania aplikacji dla aplikacji w jednostce organizacyjnej
Aby uzyskać zasadę dla konkretnej aplikacji, musisz określić zarówno zasadę, jak i identyfikator aplikacji do danego wniosku. W tym przykładzie odczytujemy wartość parametru InstallType zasady dotyczące aplikacji Rysunki Google:
Żądanie
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"
Odpowiedź
{
"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"
}
}
]
}
Pobieranie zasad instalowania aplikacji dla wszystkich aplikacji w jednostce organizacyjnej
Jeśli w żądaniu w poprzednim przykładzie pominiesz identyfikator aplikacji, stają się żądaniem wartości zasady InstallType dla wszystkich aplikacji tej jednostki organizacyjnej.
Żądanie
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"
Odpowiedź
{
"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"
}
},
...
]
}
Wyświetlanie wszystkich zasad dotyczących aplikacji w jednostce organizacyjnej
Tak samo jak możesz pominąć identyfikator aplikacji w żądaniu, by pobrać zasady dla wszystkich możesz też wyświetlić wszystkie zasady dla każdej z nich, używając symbolu wieloznacznego w . W tym przykładzie uzyskujemy wartości wszystkich zasad z kolumny Aplikacja Rysunki Google.
Żądanie
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"
Odpowiedź
{
"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"
}
},
...
]
}
Wyświetlanie listy wszystkich zasad dotyczących wszystkich aplikacji w jednostce organizacyjnej
Identyfikator aplikacji można pominąć, a w zasadzie można użyć symbolu wieloznacznego, aby: wysyłania żądań o wszystkie ustawienia aplikacji dla wszystkich aplikacji w jednostce organizacyjnej.
Żądanie
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"
Odpowiedź
{
"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"
}
},
...
]
}
Czyszczenie pola AutoLaunchApp w konfiguracji aplikacji kiosku
Aby wyczyścić AutoLaunchApp, identyfikator appId możesz ustawić na „None” (Brak).
Pamiętaj, że po ustawieniu identyfikatora appId na „Brak” wszystkie pozostałe ustawienia AutoLaunchApp zostaną ustawione na wartości domyślne. Wszystkie ustawienia AutoLaunchApp oprócz W tym przypadku identyfikator appId wysłany w żądaniu zostanie zignorowany.
Żądanie
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"
Odpowiedź
Pomyślna odpowiedź jest pusta.
{}