En las siguientes solicitudes, se muestra la administración de políticas con la API de Policy mediante el uso de las políticas de red como ejemplo. Antes de comenzar, asegúrate de revisar Descripción general de la API de Chrome Policy y las Guía de esquemas de políticas.
Todas las solicitudes que se presentan a continuación usan las siguientes variables:
$TOKEN
: Token de OAuth 2$CUSTOMER
: ID del cliente o literal demy_customer
$ORG_UNIT
: ID de la unidad organizativa objetivo$NETWORK_ID
: Es el identificador único del objeto con el que deseas interactuar.
Servicio de redes de políticas
El Servicio de redes de políticas es una API que ayuda a la API de políticas de Chrome en administrar la configuración de red.
La API consta de cuatro extremos:
Definir red
El extremo Define Network se usa para crear una red nueva. Este extremo se utiliza para redes Wi-Fi, Ethernet y VPN.
En este ejemplo, definimos una red Wi-Fi simple. Para definir un enfoque más complejo examina los campos disponibles en el espacio de nombres chrome.networks.wifi.
Los detalles de policy_schema deben estar presentes para todos los tipos de redes.
curl -H "Content-Type: application/json" -H "Authorization:Bearer $TOKEN" -d "{target_resource: 'orgunits/$ORG_UNIT', \
name: 'Network Name', \
settings: [
{policy_schema: 'chrome.networks.wifi.AllowForChromeUsers', value: {'allowForChromeUsers': true}}, \
{policy_schema: 'chrome.networks.wifi.Details',value: {'details': {'security': 'None', 'ssid': 'ssid'}}}
]}" \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/networks:defineNetwork"
Una respuesta correcta contendrá la red creada, incluido el networkId que hace referencia a ella.
{
"networkId": "Network Name-Wifi",
"targetResource": "orgunits/$ORG_UNIT",
"settings": [
{
"policySchema": "chrome.networks.wifi.Details",
"value": {
"details": {
"ssid": "ssid",
"security": "None",
"proxySettings": {
"type": "Direct"
},
"allowIpConfiguration": false,
"allowNameServersConfiguration": false,
"nameServerSelection": "NAME_SERVERS_ENUM_AUTOMATIC"
}
}
},
{
"policySchema": "chrome.networks.wifi.AllowForChromeDevices",
"value": {
"allowForChromeDevices": false
}
},
{
"policySchema": "chrome.networks.wifi.AllowForChromeUsers",
"value": {
"allowForChromeUsers": true
}
}
]
}
Quitar red
La opción Quitar extremo de red se usa para borrar una red. Este extremo se utiliza para redes Wi-Fi, Ethernet y VPN.
En este ejemplo, eliminamos una red Wi-Fi.
curl -H "Content-Type: application/json" -H "Authorization:Bearer $TOKEN" -d "{target_resource: 'orgunits/$ORG_UNIT', network_id: '$NETWORK_ID'}" \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/networks:removeNetwork"
Una respuesta correcta está vacía.
{}
Definir certificado
El extremo Definir certificado se usa para crear un certificado nuevo.
En este ejemplo, definimos un certificado y permitimos que los dispositivos Chrome lo usen.
curl -H "Content-Type: application/json" -H "Authorization:Bearer $TOKEN" -d " \
{
target_resource: 'orgunits/$ORG_UNIT',
certificate: 'raw string representation of a .pem or .crt certificate file.',
settings: [{
policy_schema: 'chrome.networks.certificates.AllowForChromeDevices',
value: {'allowForChromeDevices': true}
}]
}" "https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/networks:defineCertificate"
Una respuesta correcta contendrá una referencia al certificado creado (networkId).
{
"networkId": "{c045f8df-79f1-49d3-92b9-0e61516e6a6b}",
"targetResource": "orgunits/$ORG_UNIT"
}
Quitar certificado
El extremo Quitar certificado se usa para quitar una definición de certificado.
En este ejemplo, quitamos un certificado.
curl -H "Content-Type: application/json" -H "Authorization:Bearer $TOKEN" -d "{target_resource: 'orgunits/$ORG_UNIT', network_id: '$NETWORK_ID'}" \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/networks:removeCertificate"
Una respuesta correcta está vacía.
{}
Interactúa con tus redes guardadas
Para interactuar con un certificado o una red, usa la API de Policy. Las solicitudes deben incluir una clave de destino adicional que represente el recurso que con el que quieres interactuar.
Solo se acepta omitir una clave de destino adicional en una solicitud de resolución. Esta Esto hará que se devuelvan todas las redes que coincidan con el espacio de nombres solicitado.
Los esquemas de red completos se pueden obtener a través del servicio de esquemas con filtros.
Para ver todas las opciones de configuración de la VPN, prueba lo siguiente:
curl -H "Authorization:Bearer $TOKEN" \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policySchemas?filter=chrome.networks.vpn"
Este es un ejemplo de cómo agregar Imprivata como autoridad certificadora.
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-d '{
requests: [{
policyTargetKey: {
targetResource: "orgunits/$ORG_UNIT",
additionalTargetKeys: {"network_id": "$NETWORK_ID"}
},
policyValue: {
policySchema: "chrome.networks.certificates.AllowForChromeImprivata",
value: {allowForChromeImprivata: true}
},
updateMask: {paths: "allowForChromeImprivata"}
}]
}' \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"
Este es un ejemplo de cómo cambiar una contraseña de red.
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-d '{
requests: [{
policyTargetKey: {
targetResource: "orgunits/$ORG_UNIT",
additionalTargetKeys: {"network_id": "$NETWORK_ID"}
},
policyValue: {
policySchema: "chrome.networks.wifi.Details",
value: {details: {
ssid: 'ssid',
security: 'WEP-PSK'
passphrase: 'Your passphrase.'
}
}
},
updateMask: {paths: "details"}
}]
}' \
"https://chromepolicy.googleapis.com/v1/customers/$CUSTOMER/policies/orgunits:batchModify"