Esquemas de políticas

La API de Schema Service representa las políticas de Chrome como esquemas de políticas. Cada esquema de políticas tiene un nombre único que lo identifica, una definición de la configuración campos y sus tipos, y una descripción legible de la configuración en Inglés.

Por ejemplo, a continuación, se muestra cómo la API de Schema Service representa una configuración que permite que aparezca un botón para salir en la bandeja del sistema de Chrome. Un enfoque representación de esta configuración sería bool showLogoutButtonInTray. Haz clic en "Muestra un ejemplo" para ver cómo la API de Schema Service representa este del lugar.

Mostrar un ejemplo

{
  "name": "customers/C0202nabg/policySchemas/chrome.users.ShowLogoutButton",
  "policyDescription": "Show logout button in tray.", // description of the policy
  "definition": { // definition of the settings (fields names and types)
    "messageType": [
      {
        "name": "ShowLogoutButton",
        "field": [
          {
            "name": "showLogoutButtonInTray", // the setting showLogoutButtonInTray
            "number": 1,
            "label": "LABEL_OPTIONAL",
            "type": "TYPE_BOOL" // the setting showLogoutButtonInTray is of type boolean
          }
        ]
      }
    ]
  },
  "fieldDescriptions": [ // human readable descriptions of the settings and their values
    {
      "field": "showLogoutButtonInTray",
      "knownValueDescriptions": [
        {
          "value": "true",
          "description": "Show logout button in tray." // description for showLogoutButtonInTray=true
        },
        {
          "value": "false",
          "description": "Do not show logout button in tray." // description for showLogoutButtonInTray=false
        }
      ]
    }
  ],
  "schemaName": "chrome.users.ShowLogoutButton" //  unique name to identify the policy
}
  

Nombres de esquemas de políticas

El name de un esquema es su identificador único, con el siguiente formato: {namespace}.{leafName}

En el ejemplo anterior, el nombre completo del esquema es chrome.users.ShowLogoutButton. El espacio de nombres es chrome.users. y el nombre de la hoja es ShowLogoutButton.

Las políticas de permiso similar se agrupan en el mismo espacio de nombres. Por ejemplo, todas Los esquemas de políticas del usuario tienen el prefijo de un espacio de nombres chrome.users. y todos Los esquemas de políticas de impresoras tienen el prefijo de un espacio de nombres chrome.printers..

Espacios de nombres

Espacio de nombres Clave Permiso de rol de administrador requerido
chrome.users.LEAF_NAME   Servicios > Administración de Chrome > Configuración > Administrar la configuración de los usuarios
chrome.users.apps.LEAF_NAME key="app_id" Servicios > Administración de Chrome > Configuración > Administrar la configuración del usuario > Administra la configuración de aplicaciones
chrome.users.appsconfig.LEAF_NAME   Servicios > Administración de Chrome > Configuración > Administrar la configuración del usuario > Administra la configuración de aplicaciones
chrome.devices.LEAF_NAME   Servicios > Administración de Chrome > Configuración > Administrar la configuración de los dispositivos ChromeOS
chrome.devices.managedguest.LEAF_NAME   Servicios > Administración de Chrome > Configuración > Administrar la configuración de los dispositivos ChromeOS
chrome.devices.managedguest.apps.LEAF_NAME key="app_id" Servicios > Administración de Chrome > Configuración > Administrar la configuración de los dispositivos ChromeOS
chrome.devices.kiosk.LEAF_NAME   Servicios > Administración de Chrome > Configuración > Administrar la configuración de los dispositivos ChromeOS
chrome.devices.kiosk.apps.LEAF_NAME key="app_id" Servicios > Administración de Chrome > Configuración > Administrar la configuración de los dispositivos ChromeOS
chrome.devices.kiosk.appsconfig.LEAF_NAME   Servicios > Administración de Chrome > Configuración > Administrar la configuración de los dispositivos ChromeOS
chrome.printers.LEAF_NAME key="printer_id" Servicios > Administración de Chrome > Configuración > Administrar impresoras
chrome.printservers.LEAF_NAME key="print_server_id" Servicios > Administración de Chrome > Configuración > Administrar impresoras
chrome.networks.globalsettings.LEAF_NAME   Servicios > Configuración de dispositivos compartidos
chrome.networks.wifi.LEAF_NAME key="network_id" Servicios > Configuración de dispositivos compartidos
chrome.networks.ethernet.LEAF_NAME key="network_id" Servicios > Configuración de dispositivos compartidos
chrome.networks.vpn.LEAF_NAME key="network_id" Servicios > Configuración de dispositivos compartidos
chrome.networks.certificates.LEAF_NAME key="network_id" Servicios > Configuración de dispositivos compartidos

Claves de esquema de políticas

Algunas políticas requieren contexto adicional para que se puedan ver o modificar. Por ejemplo:

  • Para modificar la política de una aplicación, debes especificar qué aplicación propagando key="app_id".
  • Para modificar la política de la configuración de impresoras en una unidad organizativa, debes hacer lo siguiente: y especificar qué impresora propaga key="printer_id".

Estos esquemas de políticas contienen una sección additionalTargetKeyNames en la que se describe las claves y los valores que se pasarán en tus solicitudes a la API.

Para obtener más información, ve a Muestras de código.

Mostrar un ejemplo

{
  "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"
}
  

Políticas de apps

Algunos de los espacios de nombres anteriores corresponden a la política de aplicaciones, como las aplicaciones del usuario, las aplicaciones de kiosco las apps de sesiones de invitado administradas y las políticas de configuración de apps de kiosco. Las políticas de apps requieren un objeto app_id.

Un app_id se forma combinando el tipo y el identificador de la app. Por ejemplo:

  • chrome:mkaakpdehdafacodkgkpghoibnmamcme representa al elemento "Dibujos de Google". App de Chrome
  • android:com.google.android.calendar representa el "Calendario de Google". App para Android
  • web:https://canvas.apps.chrome representa el "lienzo". App web

Campos de valores múltiples

Los campos con la etiqueta LABEL_REPEATED representan campos de varios valores, como listas o arrays. Puedes asignar varios valores a estos campos. Para obtener más detalles, consulta la Muestras de código.

Estado del esquema de políticas

Cada política tiene un objeto policyApiLifecycle que representa su estado actual. Este objeto contiene los siguientes campos con detalles sobre la política de estado:

  • En el campo policyApiLifecycleStage, se muestra cuál de las siguientes etapas se muestran describe mejor el estado actual de la política.
  • El campo description proporciona más detalles sobre el estado actual de esta política.
  • El campo endSupport muestra la última fecha de respaldo de la política (si existe) está definido.
  • El deprecatedInFavorOf solo se puede configurar si policyApiLifecycleStage es API_OBSOLETA. Muestra los espacios de nombres completamente calificados de las políticas nuevas la política actual es obsoleta y se la reemplazó.
  • El campo scheduledToDeprecatePolicies corresponde a obsoletoInFavorOf. Muestra los espacios de nombres completamente calificados del anterior políticas que dejarán de estar disponibles debido a la introducción de esta política.

Etapas del ciclo de vida

Etapa Descripción
API_UNSPECIFIED Se desconoce el estado actual de la política. Reservado, no utilizarlo.
API_PREVIEW La política aún no funciona. Esta etapa se puede transferir a API_CURRENT o API_DEVELOPMENT.
API_DEVELOPMENT La política aún no está finalizada y es posible que se incluyan cambios rotundos. Esta etapa se puede transferir a API_CURRENT o API_DEPRECATED.
API_CURRENT La política se encuentra en formato oficial, pero es posible que se realicen cambios no rotundos. Esta etapa se puede transferir a API_DEPRECATED.
API_DEPRECATED Esta política dejó de estar disponible y es posible que se quite en el futuro. Los administradores deben dejar de usar esta política.

Mostrar un ejemplo

{
  "name": "customers/C0202nabg/policySchemas/chrome.users.OutdatedPolicy",
  "policyDescription": "Just for demo, this is an outdated policy.",
  "definition": {
    "messageType": [
      {
        "name": "OutdatedPolicy",
        "field": [
          {
            "name": "outdatedField",
            "number": 1,
            "label": "LABEL_OPTIONAL",
            "type": "TYPE_BOOL"
          }
        ]
      }
    ]
  },
  "fieldDescriptions": [
    {
      "field": "outdatedField",
      "description": "This is an outdated field"
    }
  ],
  "schemaName": "chrome.users.OutdatedPolicy",
  "policyApiLifecycle": { // policy's current lifecycle status
    "policyApiLifecycleStage": "API_DEPRECATED",
    "description": "This policy is deprecated. Please stop using it",
    "endSupport": {
      "year": 2021,
      "month": 2,
      "day": 29
    }
    "deprecatedInFavorOf": "chrome.users.NewPolicy"
  }
}

{
  "name": "customers/C0202nabg/policySchemas/chrome.users.NewPolicy",
  "policyDescription": "Just for demo, this is a new policy.",
  "definition": {
    "messageType": [
      {
        "name": "NewPolicy",
        "field": [
          {
            "name": "newField",
            "number": 1,
            "label": "LABEL_OPTIONAL",
            "type": "TYPE_BOOL"
          }
        ]
      }
    ]
  },
  "fieldDescriptions": [
    {
      "field": "newField",
      "description": "This is an new field"
    }
  ],
  "schemaName": "chrome.users.NewPolicy",
  "policyApiLifecycle": { // policy's current lifecycle status
    "policyApiLifecycleStage": "API_CURRENT,
    "scheduledToDeprecatePolicies": "chrome.users.OutdatedPolicy"
  }
}
  

Avisos de esquema de políticas

Algunas políticas tienen notices asociados con ellas que tienen acknowledgement_required Se establece en true para ciertos valores de ciertos campos de la política. En el caso de estas políticas, debes establecer un campo de confirmación especial en true antes de configurar el valor.

Para obtener más detalles, consulta Muestras de código.

Plataformas compatibles

supportedPlatforms es una lista que indica que la política solo se aplicará a dispositivos o usuarios en estas plataformas. Todas las plataformas compatibles se enumeran en en la siguiente tabla.

Plataforma compatible

Plataforma Descripción
PLATFORM_UNSPECIFIED Plataforma no especificada. Reservado, no utilizarlo.
CHROME_OS ChromeOS
CHROME_BROWSER Navegador Chrome para macOS, Windows y Linux
CHROME_BROWSER_FOR_ANDROID Navegador Chrome para Android
CHROME_BROWSER_FOR_IOS Navegador Chrome para iOS

Próximos pasos