Conceitos da API Policy

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

Redução

Para listar e obter políticas, consulte os artigos Configurar a API Policy e Listar e obter políticas.

Terminologia

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

  • Valor da definição reduzido: valores da definição final aplicados a um alvo, como um utilizador, uma unidade organizacional ou um grupo

  • Redução: o processo de redução dos valores de definição nas políticas para um valor de definição único para um alvo, como um utilizador, uma unidade organizacional ou um grupo

  • Redutor: o tipo de regras que determinam como os valores de definição nas políticas são simplificados para uma única definição para um utilizador

  • Políticas de administrador: políticas criadas por administradores na consola do administrador

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

Processo de redução

Para reduzir uma determinada definição para um determinado utilizador:

  1. Filtre todas as políticas que não se aplicam ao utilizador.

    1. Filtrar políticas que não contêm a definição.

    2. Filtre as políticas que se aplicam à UO na qual o utilizador de destino não se encontra.

    3. Filtrar as políticas que se aplicam ao grupo no qual o utilizador de destino não se encontra.

    4. Filtre as políticas que se aplicam à licença que o utilizador de destino não tem. Para saber mais informações sobre licenças, consulte a secção Licenças.

  2. Aplique o redutor da definição fornecida

    • Máximo: para cada campo na definição reduzida, o redutor Máximo escolhe o valor da política com a maior sortOrder.

    • Unir: para cada campo na definição reduzida, o redutor de união 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 Merge concatena os valores de todas as políticas.

    • MaxMap: o redutor MaxMap é usado para definições em que as entradas da matriz têm um campo que funciona como uma chave primária. O redutor MaxMap não concatena as entradas da matriz com a mesma chave principal. Em alternativa, atualiza a entrada usando o redutor Max nos outros campos nas entradas da matriz que partilham a mesma chave principal.

    • MergeMap: o redutor MergeMap é usado para definições em que as entradas do array têm um campo que funciona como uma chave primária. O redutor MergeMap não concatena as entradas da matriz com a mesma chave primária. Em alternativa, atualiza a entrada através do redutor de união nos outros campos nas entradas da matriz que partilham a mesma chave principal.

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

Redutores para definições

Nome da definiçã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 Unir
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 Unir
gmail.workspace_sync_for_outlook Máx.
gmail.auto_forwarding Máx.
gmail.name_format Unir
gmail.per_user_outbound_gateway Máx.
gmail.email_image_proxy_bypass Unir
gmail.mail_delegation Unir
chat.chat_history Unir
chat.chat_file_sharing Máx.
chat.space_history Máx.
chat.external_chat_restriction Unir
chat.chat_apps_access Máx.
sites.sites_creation_and_modification Máx.
groups_for_business.groups_sharing Unir
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 Unir
calendar.primary_calendar_max_allowed_external_sharing Unir
calendar.secondary_calendar_max_allowed_external_sharing Unir
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 Unir
security.user_account_recovery Unir
security.password Máx.
security.session_controls Máx.
security.less_secure_apps Unir
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 Unir
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 Lista
detector.regular_expression Lista
detector.word_list Lista

Licenças

As políticas aplicam-se aos utilizadores com base nas respetivas licenças do Workspace. A condição de licença é fornecida em PolicyQuery.

Para ver uma lista completa de todos os IDs de produtos e SKUs do Workspace, consulte o artigo IDs de produtos e SKUs da Google.

Os exemplos seguintes demonstram como as políticas podem ser aplicadas a determinados grupos de utilizadores com base nas licenças desses utilizadores.

Exemplo 1: apenas cláusula normal

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

A política aplica-se a um utilizador se 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 aplica-se a um utilizador se tiver uma licença para, pelo menos, um dos SKUs na primeira cláusula. No entanto, se um utilizador tiver uma licença para qualquer um dos SKUs na segunda cláusula, a política não se aplica a esse utilizador.

Exemplo 3: apenas cláusula invertida

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

A política aplica-se a um utilizador se este não tiver uma licença para nenhum SKU na lista.

Valores de campos predefinidos

Quando um campo não está presente na definição reduzida, o respetivo valor predefinido é o seguinte:

Nome da definição Campo Valor do campo predefinido
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 EDU, false em SKUs não EDU. SKUs EDU:
  • /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 EDU, false em SKUs não EDU. SKUs EDU:
  • /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
gmail.links_and_external_images apply_future_settings_automatically true
enable_aggressive_warnings_on_untrusted_links false
gmail.spoofing_and_authentication apply_future_settings_automatically true
gmail.auto_forwarding enable_auto_forwarding 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.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
security.two_sv_enrollment allow_enrollment true
security.two_sv_device_trust allow_trusting_device true
security.two_sv_enforcement_factor allowed_sign_in_factor_set ALL
workspace_marketplace.apps_access_options access_level Para clientes de ensino básico e secundário: 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
calendar.external_invitations warn_on_invite true
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

Grupos do sistema

Grupos do sistema Google que não são apresentados na API Directory e que podem ser associados a partir de políticas do sistema.

GroupId Descrição
WORKSPACE_ALL_ADMIN_GROUP Grupo para a política do sistema Google que aplica a validação em dois passos a todos os administradores.