Conceitos da API Policy

Esta documentação descreve os conceitos e estratégias da API Cloud Identity Policy.

Redução

Para listar e receber políticas, consulte Como configurar a API Policy e Como listar e receber políticas.

Terminologia

  • Valor da configuração: valores de configuração fornecidos na política

  • Valor da configuração reduzida: valores finais da configuração aplicados a um destino, como um usuário, uma unidade organizacional ou um grupo.

  • Redução: o processo de redução de valores de configuração em políticas para um único valor de configuração para um destino, como um usuário, uma unidade organizacional ou um grupo

  • Redutor: o tipo de regras que determinam como os valores de configuração em políticas são simplificados para uma única configuração para um usuário

  • Políticas do administrador: políticas criadas por administradores no Admin Console

  • Políticas do sistema: políticas fornecidas pelo Google Workspace

Processo de redução

Para reduzir uma determinada configuração para um usuário:

  1. Filtre todas as políticas que não se aplicam ao usuário.

    1. Filtre as políticas que não contêm a configuração.

    2. Filtre as políticas que se aplicam à UO em que o usuário de destino não está.

    3. Filtrar políticas que se aplicam ao grupo em que o usuário de destino não está.

    4. Filtrar políticas que se aplicam à licença que o usuário de destino não tem. Para mais informações sobre licenças, consulte a seção Licenças.

  2. Aplicar o redutor da configuração especificada

    • Max: para cada campo na configuração reduzida, o redutor Max escolhe o valor da política com a maior sortOrder.

    • Mesclar: para cada campo na configuração reduzida, o redutor de mesclagem escolhe o valor da política com a maior sortOrder que tem um valor para esse campo. Se o campo for uma matriz, o redutor de mesclagem concatenará os valores de todas as políticas.

    • MaxMap: o redutor MaxMap é usado para configurações em que as entradas de matriz têm um campo que funciona como uma chave primária. O redutor MaxMap não concatenará as entradas de matriz com a mesma chave primária. Em vez disso, ele atualiza a entrada usando o redutor máximo nos outros campos nas entradas de matriz que compartilham a mesma chave primária.

    • MergeMap: o redutor MergeMap é usado para configurações em que as entradas de matriz têm um campo que funciona como uma chave primária. O redutor MergeMap não concatena as entradas de matriz com a mesma chave primária. Em vez disso, ele atualiza a entrada usando o redutor de mesclagem nos outros campos nas entradas de matriz que compartilham a mesma chave primária.

    • Lista: essas configurações não são reduzidas a uma única configuração. Em vez disso, toda a sequência de configurações é preservada e aplicada como uma lista.

Redutores para configurações

Nome da configuração Redutor
drive_and_docs.external_sharing Máx.
drive_and_docs.general_access_default Máx.
drive_and_docs.shared_drive_creation Máx.
drive_and_docs.file_security_update Máx.
drive_and_docs.drive_sdk Mesclar
drive_and_docs.drive_for_desktop Máx.
gmail.confidential_mode Máx.
gmail.enhanced_smime_encryption Máx.
gmail.enhanced_pre_delivery_message_scanning Máx.
gmail.email_spam_filter_ip_allowlist Máx.
gmail.spoofing_and_authentication Máx.
gmail.links_and_external_images Máx.
gmail.email_attachment_safety Máx.
gmail.email_address_lists MaxMap
gmail.blocked_sender_lists MaxMap
gmail.spam_override_lists MaxMap
gmail.content_compliance MaxMap
gmail.objectionable_content MaxMap
gmail.attachment_compliance MaxMap
gmail.comprehensive_mail_storage Máx.
gmail.rule_states MaxMap
gmail.user_email_uploads Máx.
gmail.pop_access Máx.
gmail.imap_access Mesclar
gmail.workspace_sync_for_outlook Máx.
gmail.auto_forwarding Máx.
gmail.name_format Mesclar
gmail.per_user_outbound_gateway Máx.
gmail.email_image_proxy_bypass Mesclar
gmail.mail_delegation Mesclar
chat.chat_history Mesclar
chat.chat_file_sharing Máx.
chat.space_history Máx.
chat.external_chat_restriction Mesclar
chat.chat_apps_access Máx.
sites.sites_creation_and_modification Máx.
groups_for_business.groups_sharing Mesclar
cloud_sharing_options.cloud_data_sharing Máx.
classroom.teacher_permissions Máx.
classroom.guardian_access Máx.
classroom.class_membership Máx.
classroom.api_data_access Máx.
classroom.originality_reports Máx.
classroom.roster_import Máx.
classroom.student_unenrollment Máx.
calendar.appointment_schedules Máx.
calendar.external_invitations Máx.
calendar.interoperability Mesclar
calendar.primary_calendar_max_allowed_external_sharing Mesclar
calendar.secondary_calendar_max_allowed_external_sharing Mesclar
meet.safety_domain Máx.
meet.safety_access Máx.
meet.safety_host_management Máx.
meet.video_recording Máx.
meet.safety_external_participants Máx.
security.super_admin_account_recovery Mesclar
security.user_account_recovery Mesclar
security.password Máx.
security.session_controls Máx.
security.less_secure_apps Mesclar
security.login_challenges Máx.
security.advanced_protection_program Máx.
security.two_step_verification_enrollment Máx.
security.two_step_verification_enforcement Máx.
security.two_step_verification_grace_period Máx.
security.two_step_verification_device_trust Máx.
security.two_step_verification_enforcement_factor Máx.
security.two_step_verification_sign_in_code Máx.
user_takeout Máx.
workspace_marketplace.apps_access_options Mesclar
workspace_marketplace.apps_allowlist MergeMap (a chave primária é: application_id)
SERVICE_STATUS_APP_NAME.service_status Máx.
rule.dlp Lista
rule.system_defined_alerts List
detector.regular_expression List
detector.word_list Lista

Licenças

As políticas se aplicam aos usuários com base nas licenças do Workspace. A condição da licença é fornecida em PolicyQuery.

Para conferir uma lista completa de todos os IDs de produtos e SKUs do Workspace, consulte IDs de produtos e SKUs do Google.

Os exemplos a seguir demonstram como as políticas podem ser aplicadas a determinados grupos de usuários com base nas licenças deles.

Exemplo 1: somente cláusula normal

entity.licenses.exists(license, license in ['/product/Google-Apps/sku/1010020027'])

A política se aplica a um usuário se ele tiver uma licença para pelo menos um dos SKUs na lista.

Exemplo 2: cláusula normal e 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'])

A política se aplica a um usuário se ele tiver uma licença para pelo menos um dos SKUs na primeira cláusula. No entanto, se um usuário tiver uma licença para qualquer um dos SKUs na segunda cláusula, a política não se aplicará a esse usuário.

Exemplo 3: apenas cláusula invertida

!entity.licenses.exists(license, license in ['/product/Google-Apps/sku/1010060005'])

A política se aplica a um usuário se ele não tiver uma licença para nenhum SKU na lista.

Valores de campo padrão

Quando um campo não está presente na configuração reduzida, o valor padrão dele é o seguinte:

Nome da configuração Campo Valor de campo padrão
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_apps_access enable_apps true em SKUs de educação, false em SKUs que não são de educação. SKUs de educação:
  • /product/Google-Apps/sku/Google-Apps-For-Education
  • /product/Google-Apps/sku/1010310002
  • /product/Google-Apps/sku/1010310003
  • /product/Google-Apps/sku/1010310005
  • /product/Google-Apps/sku/1010310006
  • /product/Google-Apps/sku/1010310007
  • /product/Google-Apps/sku/1010310008
  • /product/Google-Apps/sku/1010310009
  • /product/Google-Apps/sku/1010310010
  • /product/Google-Apps/sku/1010460001
  • /product/Google-Apps/sku/1010460002
enable_webhooks true em SKUs de educação, false em SKUs que não são de educação. SKUs de educação:
  • /product/Google-Apps/sku/Google-Apps-For-Education
  • /product/Google-Apps/sku/1010310002
  • /product/Google-Apps/sku/1010310003
  • /product/Google-Apps/sku/1010310005
  • /product/Google-Apps/sku/1010310006
  • /product/Google-Apps/sku/1010310007
  • /product/Google-Apps/sku/1010310008
  • /product/Google-Apps/sku/1010310009
  • /product/Google-Apps/sku/1010310010
  • /product/Google-Apps/sku/1010460001
  • /product/Google-Apps/sku/1010460002
gmail.user_email_uploads enable_mail_and_contacts_import false
gmail.email_image_proxy_bypass image_proxy_bypass_pattern [] lista vazia
enable_image_proxy true
gmail.workspace_sync_for_outlook enable_google_workspace_sync_for_microsoft_outlook true
gmail.email_spam_filter_ip_allowlist allowed_ip_addresses [] lista vazia
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.drive_sdk enable_drive_sdk_api_access true
drive_and_docs.general_access_default default_file_access LINK_SHARING_PRIVATE
security.user_account_recovery enable_account_recovery false
security.super_admin_account_recovery enable_account_recovery false
security.less_secure_apps allow_less_secure_apps false
workspace_marketplace.apps_access_options access_level Para clientes do ensino fundamental e médio: ALLOW_NONE Caso contrário: ALLOW_ALL
allow_all_internal_apps false
workspace_marketplace.apps_allowlist apps [] lista vazia
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