Ao definir uma política da organização em um recurso, todos os descendentes desse recurso herdam a política da organização por padrão. Se você definir uma política da organização no recurso da organização, essas restrições serão herdadas por todos os recursos filhos.
É possível definir a mesma política da organização com uma configuração diferente em recursos filhos, que serão substituídos ou mesclados com a política herdada com base nas regras de avaliação da hierarquia e no tipo de restrição definido na política da organização.
Antes de começar
Leia a página Noções básicas sobre restrições para saber o que é uma restrição.
Leia a visão geral do serviço Política da organização para saber como funciona a política da organização.
Exemplo de hierarquia
No diagrama de hierarquia de recursos a seguir, cada recurso define uma política da organização que aplica uma restrição gerenciada legada e define se a política herda a política do recurso pai. As formas coloridas representam os valores que a política da organização permite ou nega.
Uma restrição é um tipo específico de limitação que é aplicada a um Google Cloud serviço ou a uma lista de Google Cloud serviços. No exemplo anterior, a restrição representa o padrão de restrição, que define o comportamento quando a restrição não é definida em uma política da organização. O padrão de restrição neste exemplo permite todos os valores. Os nós abaixo dela definem políticas da organização que substituem o padrão de restrição, permitindo ou negando valores.
A política vigente em cada node é avaliada com base nas regras de herança. Se uma política da organização não estiver definida, o recurso herdará o comportamento da restrição padrão. Se você definir uma política da organização, ela será usada. No exemplo anterior, o nó da organização define uma política que permite o quadrado vermelho e o círculo verde.
Os recursos que estão na hierarquia abaixo do nó da organização são avaliados da seguinte maneira:
O recurso 1 define uma política que define
inheritFromParentcomoTRUEe permite o losango azul. A política do nó da organização é herdada e mesclada com a política definida no recurso 1. A política vigente é avaliada para permitir o quadrado vermelho, o círculo verde e o losango azul.O recurso 2 define uma política que define
inheritFromParentcomoTRUEe nega o círculo verde. Os valores de negação sempre têm precedência durante a reconciliação de políticas. A política do nó da organização é herdada e mesclada com a política definida no recurso 2. A política vigente é avaliada para permitir apenas o quadrado vermelho.O recurso 3 define uma política que define
inheritFromParentcomoFALSEe permite o hexágono amarelo . A política do nó da organização não é herdada, então a política vigente é avaliada para permitir apenas o hexágono amarelo.O recurso 4 define uma política que define
inheritFromParentcomoFALSEe inclui o valorrestoreDefault. A política do nó da organização não é herdada e o comportamento de restrição padrão é usado, portanto, a política vigente é avaliada para permitir todos os valores.
Regras de avaliação da hierarquia
As regras a seguir controlam como uma política da organização é avaliada em um determinado recurso. O papel Administrador da política da organização é necessário para definir a política da organização.
Restrições aplicadas automaticamente
Se uma política da organização não for aplicada, ela será herdada do ancestral mais baixo em que uma política da organização for aplicada. Se nenhuma política da organização for aplicada em nenhum lugar na hierarquia de ancestrais, o comportamento padrão gerenciado pelo Google da restrição será aplicado.
Se o comportamento padrão gerenciado pelo Google de uma restrição de política da organização restringir uma operação, essa operação será restrita mesmo que você nunca tenha definido explicitamente uma política da organização. Para permitir essas operações, crie políticas da organização que substituam a política pai.
Para uma lista de restrições de política da organização que têm um comportamento padrão gerenciado pelo Google que restringe operações, consulte Restrições de política da organização.
Herança
Um recurso que tenha uma política da organização definida por padrão suplanta qualquer política definida pelos recursos pai na hierarquia. No entanto, se um recurso tiver definido inheritFromParent = true, a política vigente do recurso pai será herdada, mesclada e reconciliada para avaliar a política vigente resultante. Exemplo:
- Uma pasta rejeita o valor
projects/123. - Um projeto abaixo dessa pasta rejeita o valor
projects/456.
As duas políticas são mescladas e, nesse caso, resultam em uma política eficaz que rejeita projects/123 e projects/456.
Como herdar o comportamento padrão
O comportamento padrão nunca é mesclado. Quando uma política é definida, ela sempre substitui qualquer comportamento padrão. Exemplo:
- A
constraints/iam.allowServiceAccountCredentialLifetimeExtensioné definida comoDENYpor padrão no nível da organização. - Para essa restrição, um projeto diretamente abaixo dessa organização permite o valor
SomeServiceAccount.
Como o comportamento padrão nunca é mesclado e sempre substituído, isso resulta em uma política eficaz que permite SomeServiceAccount. Por outro lado, se a política fosse definida explicitamente como DENY no nível da organização, a regra "o valor DENY tem precedência" seria aplicada e a política vigente seria DENY.
Não permitir herança
Se um recurso tiver uma política que inclua inheritFromParent = false, ele não herdará a política da organização do pai. Em vez disso, o recurso herda o comportamento padrão da restrição, a menos que você defina uma política com valores permitidos ou negados.
Como reconciliar conflitos de políticas
Quando um recurso herda políticas da organização, as políticas herdadas são mescladas e reconciliadas com a política da organização do recurso pai. Ao avaliar políticas da organização com regras de lista, os valores DENY sempre têm precedência. Exemplo:
- Uma pasta rejeita o valor
projects/123. - Um projeto abaixo dessa pasta permite o valor
projects/123.
As políticas são mescladas e o valor DENY tem precedência. A política vigente nega todos os valores e é avaliada da mesma forma, seja o recurso pai ou filho negando o valor. Recomendamos não incluir um valor nas listas permitidas e negadas. Isso pode dificultar a compreensão de suas políticas.
As políticas da organização com regras booleanas não mesclam e reconciliam políticas. Se uma política for especificada em um recurso, esse valor TRUE ou FALSE será usado para determinar a política vigente. Exemplo:
Uma pasta define
enforced: trueparaconstraints/iam.managed.disableServiceAccountCreation.Um projeto abaixo dessa pasta define
enforced: falseparaconstraints/iam.managed.disableServiceAccountCreation.
O valor enforced: true definido na pasta é ignorado porque enforced: false é definido no próprio projeto. A política da organização não é aplicada a esse projeto.
Redefinir para a política padrão
Ao invocar RestoreDefault, a política da organização usa o comportamento padrão da restrição para esse recurso. Os recursos filhos também herdam esse comportamento.