Conceptos de la API de Policy
En esta documentación, se describen los conceptos y las estrategias de la API de Cloud Identity Policy.
Reducción
Para enumerar y obtener políticas, consulta Configura la API de Policy y Enumera y obtén políticas.
Terminología
Valor del parámetro de configuración: Son los valores de los parámetros de configuración que se proporcionan en la política.
Valor de configuración reducido: Son los valores de configuración finales que se aplican a un objetivo, como un usuario, una unidad organizativa o un grupo.
Reducción: Es el proceso de reducir los valores de configuración de las políticas a un solo valor de configuración para un destino, como un usuario, una unidad organizativa o un grupo.
Reductor: Es el tipo de reglas que determinan cómo se simplifican los valores de configuración de las políticas para que se conviertan en un solo parámetro de configuración para un usuario.
Políticas de administrador: Son las políticas que crean los administradores en la Consola del administrador.
Políticas del sistema: Son las políticas que proporciona Google Workspace.
Proceso de reducción
Para reducir un parámetro de configuración determinado para un usuario específico, sigue estos pasos:
Excluye todas las políticas que no se aplican al usuario.
Filtrar las políticas que no contienen el parámetro de configuración
Excluye las políticas que se aplican a la UO en la que no se encuentra el usuario objetivo.
Excluye las políticas que se aplican al grupo en el que no se encuentra el usuario objetivo.
Excluye las políticas que se aplican a la licencia que el usuario objetivo no tiene. Para obtener más información sobre las licencias, consulta la sección Licencias.
Aplica el reductor del parámetro de configuración determinado.
Max: Para cada campo de la configuración reducida, el reductor Max elige el valor de la política con el sortOrder más alto.
Combinar: Para cada campo de la configuración reducida, el reductor Combinar elige el valor de la política con el sortOrder más alto que tenga un valor para ese campo. Si el campo es un array, el reductor Merge concatena los valores de todas las políticas.
MaxMap: El reductor MaxMap se usa para los parámetros de configuración en los que las entradas del array tienen un campo que funciona como clave primaria. El reductor MaxMap no concatena las entradas del array con la misma clave primaria. En su lugar, actualiza la entrada con el reductor Max en los otros campos de las entradas del array que comparten la misma clave primaria.
MergeMap: El reductor MergeMap se usa para la configuración en la que las entradas del array tienen un campo que funciona como clave primaria. El reductor MergeMap no concatena las entradas del array con la misma clave primaria. En su lugar, actualiza la entrada con el reductor de combinación en los otros campos de las entradas del array que comparten la misma clave primaria.
Lista: Estos parámetros de configuración no se reducen a un solo parámetro. En cambio, se conserva toda la secuencia de parámetros de configuración y se aplica como una lista.
Reductores para la configuración
| Nombre del parámetro de configuración | Reducer |
api_controls.custom_user_message
|
Máx. |
api_controls.google_services
|
MaxMap |
api_controls.internal_apps
|
Máx. |
api_controls.unconfigured_third_party_apps
|
Combinar |
calendar.appointment_schedules
|
Máx. |
calendar.external_invitations
|
Máx. |
calendar.interoperability
|
Combinar |
calendar.primary_calendar_max_allowed_external_sharing
|
Combinar |
calendar.secondary_calendar_max_allowed_external_sharing
|
Combinar |
chat.chat_apps_access
|
Máx. |
chat.chat_file_sharing
|
Máx. |
chat.chat_history
|
Combinar |
chat.external_chat_restriction
|
Combinar |
chat.space_history
|
Máx. |
classroom.api_data_access
|
Máx. |
classroom.class_membership
|
Máx. |
classroom.guardian_access
|
Máx. |
classroom.originality_reports
|
Máx. |
classroom.roster_import
|
Máx. |
classroom.student_unenrollment
|
Máx. |
classroom.teacher_permissions
|
Máx. |
cloud_sharing_options.cloud_data_sharing
|
Máx. |
detector.regular_expression
|
Lista |
detector.word_list
|
Lista |
drive_and_docs.drive_for_desktop
|
Máx. |
drive_and_docs.drive_sdk
|
Combinar |
drive_and_docs.external_sharing
|
Máx. |
drive_and_docs.file_security_update
|
Máx. |
drive_and_docs.general_access_default
|
Máx. |
drive_and_docs.shared_drive_creation
|
Máx. |
gmail.attachment_compliance
|
MaxMap |
gmail.auto_forwarding
|
Máx. |
gmail.blocked_sender_lists
|
MaxMap |
gmail.comprehensive_mail_storage
|
Máx. |
gmail.confidential_mode
|
Máx. |
gmail.content_compliance
|
MaxMap |
gmail.email_address_lists
|
MaxMap |
gmail.email_attachment_safety
|
Máx. |
gmail.email_image_proxy_bypass
|
Combinar |
gmail.email_spam_filter_ip_allowlist
|
Máx. |
gmail.enhanced_pre_delivery_message_scanning
|
Máx. |
gmail.enhanced_smime_encryption
|
Máx. |
gmail.imap_access
|
Combinar |
gmail.links_and_external_images
|
Máx. |
gmail.mail_delegation
|
Combinar |
gmail.name_format
|
Combinar |
gmail.objectionable_content
|
MaxMap |
gmail.per_user_outbound_gateway
|
Máx. |
gmail.pop_access
|
Máx. |
gmail.rule_states
|
MaxMap |
gmail.spam_override_lists
|
MaxMap |
gmail.spoofing_and_authentication
|
Máx. |
gmail.user_email_uploads
|
Máx. |
gmail.workspace_sync_for_outlook
|
Máx. |
groups_for_business.groups_sharing
|
Combinar |
meet.safety_access
|
Máx. |
meet.safety_domain
|
Máx. |
meet.safety_external_participants
|
Máx. |
meet.safety_host_management
|
Máx. |
meet.video_recording
|
Máx. |
rule.dlp
|
Lista |
rule.system_defined_alerts
|
Lista |
security.advanced_protection_program
|
Máx. |
security.less_secure_apps
|
Combinar |
security.login_challenges
|
Máx. |
security.password
|
Máx. |
security.session_controls
|
Máx. |
security.super_admin_account_recovery
|
Combinar |
security.two_step_verification_device_trust
|
Máx. |
security.two_step_verification_enforcement
|
Máx. |
security.two_step_verification_enforcement_factor
|
Máx. |
security.two_step_verification_enrollment
|
Máx. |
security.two_step_verification_grace_period
|
Máx. |
security.two_step_verification_sign_in_code
|
Máx. |
security.user_account_recovery
|
Combinar |
SERVICE_STATUS_APP_NAME.service_status
|
Máx. |
sites.sites_creation_and_modification
|
Máx. |
user_takeout
|
Máx. |
workspace_marketplace.apps_access_options
|
Combinar |
workspace_marketplace.apps_allowlist
|
MergeMap (la clave primaria es application_id) |
Licencias
Las políticas se aplican a los usuarios según sus licencias de Workspace. La condición de la licencia se proporciona en PolicyQuery.
Para obtener una lista completa de todos los IDs de productos y SKU de Workspace, consulta IDs de productos y SKU de Google.
En los siguientes ejemplos, se muestra cómo se pueden aplicar las políticas a ciertos grupos de usuarios según sus licencias.
Ejemplo 1: Solo cláusula normal
entity.licenses.exists(license, license in ['/product/Google-Apps/sku/1010020027'])
La política se aplica a un usuario si tiene una licencia para al menos uno de los SKU de la lista.
Ejemplo 2: Cláusula normal y cláusula invertida
entity.licenses.exists(license, license in ['/product/Google-Apps/sku/1010020027']) && !entity.licenses.exists(license, license in ['/product/Google-Apps/sku/1010060005'])
La política se aplica a un usuario si tiene una licencia para al menos uno de los SKU de la primera cláusula. Sin embargo, si un usuario tiene una licencia para cualquiera de los SKU de la segunda cláusula, la política no se aplica a ese usuario en absoluto.
Ejemplo 3: Solo cláusula invertida
!entity.licenses.exists(license, license in ['/product/Google-Apps/sku/1010060005'])
La política se aplica a un usuario si no tiene una licencia para ninguno de los SKU de la lista.
Valores de campo predeterminados
Cuando un campo no está presente en la configuración reducida, su valor predeterminado es el siguiente:
| Nombre del parámetro de configuración | Campo | Valor predeterminado del campo |
api_controls.google_services
|
servicios | [] (lista vacía)
|
calendar.external_invitations
|
warn_on_invite | true
|
calendar.interoperability
|
enable_interoperability | false
|
calendar.primary_calendar_max_allowed_external_sharing
|
max_allowed_external_sharing | EXTERNAL_FREE_BUSY_ONLY
|
calendar.secondary_calendar_max_allowed_external_sharing
|
max_allowed_external_sharing | EXTERNAL_ALL_INFO_READ_ONLY
|
chat.chat_apps_access
|
enable_apps | true en los SKU de EDU y false en los SKU que no son de EDU. SKU de EDU:
|
| enable_webhooks | true en los SKU de EDU y false en los SKU que no son de EDU. SKU de EDU:
|
|
chat.chat_history
|
enable_chat_history | false
|
| history_on_by_default | false
|
|
| allow_user_modification | true
|
|
chat.external_chat_restriction
|
allow_external_chat | false
|
| external_chat_restriction | NO_RESTRICTION
|
|
chat.chat_and_space_restrictions
|
restriction_level | UNRESTRICTED
|
devices.android_available_apps
|
playstore_installable_apps | ALL
|
devices.android_verify_apps
|
turnoff_google_play_protect_allowed | false
|
devices.android_developer_options
|
Permitido | false
|
devices.android_work_data_sync
|
Permitido | true
|
devices.android_work_profile_sharing
|
Permitido | false
|
devices.ios_apple_watch
|
no_wrist_detection_usage_allowed | true
|
devices.ios_backup_encryption
|
obligatorio | false
|
devices.ios_data_actions
|
external_data_sharing_allowed | true
|
| work_data_operation_type.non_workspace_apps_copy_paste_allowed | true
|
|
| work_data_operation_type.non_workspace_apps_sharing_allowed | true
|
|
| work_data_operation_type.personal_accounts_sharing_allowed | true
|
|
| work_data_operation_type.airdrop_sharing_allowed | true
|
|
| work_data_operation_type.files_printing_allowed | true
|
|
| work_data_operation_type.files_access_allowed | true
|
|
| work_data_operation_type.images_videos_saving_allowed | true
|
|
| work_data_operation_type.contacts_items_assignment_allowed | true
|
|
devices.ios_handoff
|
Permitido | true
|
devices.ios_icloud_backup
|
Permitido | true
|
devices.ios_lock_screen_control_center
|
Permitido | true
|
devices.ios_lock_screen_notifications_view
|
Permitido | true
|
devices.ios_safari_secure_browsing
|
fraudulent_website_warning_enforced | true
|
devices.android_google_play_private_apps
|
access_allowed | false
|
| publish_and_update_allowed | false
|
|
devices.android_screen_capture
|
Permitido | true
|
devices.compromised_devices
|
compromised_android_devices_blocked | false
|
| jailbroken_ios_devices_blocked | false
|
|
devices.encryption
|
device_encryption_option | NOT_REQUIRED
|
devices.ios_icloud_storage
|
managed_apps_sync_allowed | true
|
devices.ios_screen_capture
|
Permitido | true
|
devices.ios_keychain_sync
|
icloud_sync_allowed | true
|
devices.ios_document_sync
|
icloud_data_sync_allowed | true
|
devices.android_location_sharing
|
Permitido | true
|
devices.android_apps_settings
|
modification_allowed | true
|
devices.android_trust_agents
|
smart_lock_allowed | true
|
devices.android_lock_screen_notifications
|
Permitido | true
|
devices.android_lock_screen_notification_details
|
Permitido | true
|
devices.android_unknown_source_apps
|
work_profile_installation_allowed | false
|
| personal_profile_installation_allowed | true
|
|
directory.external_directory_sharing
|
sharing_option | ORGANIZATION_DIRECTORY_DATA
|
drive_and_docs.drive_sdk
|
enable_drive_sdk_api_access | true
|
drive_and_docs.external_sharing
|
external_sharing_mode | ALLOWED
|
| allow_receiving_external_files | true
|
|
| warn_for_sharing_outside_allowlisted_domains | true
|
|
| allow_non_google_invites_in_allowlisted_domains | false
|
|
| allow_receiving_files_outside_allowlisted_domains | true
|
|
| warn_for_external_sharing | true
|
|
| allow_non_google_invites | true
|
|
| allow_publishing_files | true
|
|
| access_checker_suggestions | RECIPIENTS_OR_AUDIENCE_OR_PUBLIC
|
|
| allowed_parties_for_distributing_content | ALL_ELIGIBLE_USERS
|
|
drive_and_docs.general_access_default
|
default_file_access | LINK_SHARING_PRIVATE
|
gmail.auto_forwarding
|
enable_auto_forwarding | true
|
gmail.email_image_proxy_bypass
|
image_proxy_bypass_pattern | [] (lista vacía)
|
| enable_image_proxy | true
|
|
gmail.email_spam_filter_ip_allowlist
|
allowed_ip_addresses | [] (lista vacía)
|
gmail.links_and_external_images
|
apply_future_settings_automatically | true
|
| enable_aggressive_warnings_on_untrusted_links | false
|
|
gmail.mail_delegation
|
enable_mail_delegation | false
|
gmail.smime_encryption
|
enable_smime_encryption | STATUS_DISABLED
|
| allow_sha1_globally_in_smime_signature | false
|
|
gmail.spoofing_and_authentication
|
apply_future_settings_automatically | true
|
gmail.user_email_uploads
|
enable_mail_and_contacts_import | false
|
gmail.workspace_sync_for_outlook
|
enable_google_workspace_sync_for_microsoft_outlook | true
|
gmail.external_recipient_warning
|
habilitado | true
|
groups_for_business.groups_sharing
|
collaboration_capability | DOMAIN_USERS_ONLY
|
| create_groups_access_level | USERS_IN_DOMAIN
|
|
| view_topics_default_access_level | DOMAIN_USERS
|
|
| owners_can_allow_external_members | false
|
|
| owners_can_allow_incoming_mail_from_public | true
|
|
| owners_can_hide_groups | false
|
|
| new_groups_are_hidden | false
|
|
security.less_secure_apps
|
allow_less_secure_apps | false
|
security.password
|
allowed_strength | STRONG
|
| minimum_length | 8
|
|
| maximum_length | 100
|
|
| enforce_requirements_at_login | false
|
|
| allow_reuse | false
|
|
| expiration_duration | 0
|
|
security.super_admin_account_recovery
|
enable_account_recovery | false
|
security.two_step_verification_device_trust
|
allow_trusting_device | true
|
security.two_step_verification_enforcement
|
enforced_from | Sin establecer |
security.two_step_verification_enforcement_factor
|
allowed_sign_in_factor_set | ALL
|
security.two_step_verification_enrollment
|
allow_enrollment | true
|
security.two_step_verification_grace_period
|
enrollment_grace_period | 0s
|
security.user_account_recovery
|
enable_account_recovery | false
|
workspace_marketplace.apps_access_options
|
access_level | Para clientes de educación primaria y secundaria: ALLOW_NONE
De lo contrario: ALLOW_ALL
|
| allow_all_internal_apps | false
|
|
workspace_marketplace.apps_allowlist
|
Workspace | [] (lista vacía)
|
Grupos del sistema
Los grupos del sistema de Google son grupos que no se muestran en la API de Groups y están vinculados a las políticas del sistema. A diferencia de otros IDs de grupo, sus IDs de grupo no tienen el prefijo groups/. En la siguiente tabla, se enumeran estos grupos y los usuarios que pertenecen a ellos.
| GroupId | Usuarios que forman parte de este grupo |
WORKSPACE_ALL_ADMIN_GROUP
|
Todos los administradores |
UNCONSENTED_CHILD_GROUP
|
Usuarios de EDU designados como menores de 18 años que no tienen la confirmación del consentimiento parental para uno o más servicios adicionales |
Licencias de SKU no compatibles
Los SKUs que no son compatibles con la API de License Manager no están presentes en el formato estándar:
entity.licenses.exists(license, license in ['/product/{productId}/sku/{skuId}'])
En su lugar, se representan con un marcador de posición en la cadena de consulta:
entity.licenses.exists(license, license in ['{placeholder}'])
Por ejemplo:
entity.licenses.exists(license, license in ['CHROMEBOOK-SOFTWARE'])
En la siguiente tabla, se enumeran estos SKUs y sus marcadores de posición correspondientes.
| Nombre del producto | ID del producto | ID de SKU | Marcador de posición |
| Software de Chromebook | Google-Chrome-Device-Management
|
Google-Chrome-Device-Management-Perpetual
|
CHROMEBOOK-SOFTWARE
|
Google-Chrome-Device-Management
|
|||
Chrome-Active-Directory
|
|||
| Cloud Identity | 101001
|
1010010001
|
GOOGLE-IDENTITY
|