Noções básicas sobre avaliação de hierarquia

Ao definir uma política da organização em um nó da hierarquia de recursos, todos os descendentes desse nó herdam a política da organização por padrão. Se você definir uma política da organização no nó da organização raiz, essas restrições serão herdadas por todas as pastas, projetos e recursos filhos.

Você pode definir uma política da organização personalizada em nodes filhos, que serão substituídos ou mesclados com a política herdada com base nas regras de avaliação da hierarquia.

Antes de começar

Exemplo de hierarquia

No diagrama de hierarquia de recursos abaixo, cada node define uma política da organização personalizada e define se ela herda a política do node pai. As formas coloridas representam os valores que a política da organização permite ou nega.

Diagrama de herança

Uma restrição é uma definição dos comportamentos controlados por uma política da organização. A restrição no exemplo acima tem um comportamento padrão que permite todos os valores. Os nodes abaixo dela definem políticas personalizadas que substituem esse comportamento, 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 personalizada não estiver definida, o node herdará o comportamento da restrição padrão. Se você definir uma política da organização personalizada, ela será usada. No exemplo acima, o Node da organização define uma política que permite o quadrado vermelho e o círculo verde.

Os nós de recursos que estão na hierarquia abaixo do Nó da organização são avaliados da seguinte maneira:

  1. O recurso 1 define uma política personalizada que define inheritFromParent como TRUE e permite um losango azul. A política do nó da organização é herdada e mesclada com a política personalizada, e a política vigente é avaliada para permitir o quadrado vermelho, o círculo verde e o losango azul.

  2. O recurso 2 define uma política personalizada que define inheritFromParent como TRUE e nega um 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 personalizada e a política vigente é avaliada para permitir apenas o quadrado vermelho.

  3. O recurso 3 define uma política personalizada que define inheritFromParent como FALSE e permite um 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.

  4. O recurso 4 define uma política personalizada que define inheritFromParent como FALSE e inclui o valor restoreDefault. 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.

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.

Nenhuma política da organização definida

Se você não definir uma política da organização, um node do recurso herda do respectivo pai. Se o pai for o node da organização ou o node pai não tiver uma política da organização, o comportamento padrão da restrição será aplicado.

Herança

Um nó de recursos, que tenha uma política da organização definida por padrão, suplanta qualquer política definida pelos nós pais na hierarquia. No entanto, se um nó de recurso tiver definido inheritFromParent = true, a política vigente do recurso pai é 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.

Não permitir herança

Se um nó de hierarquia de recursos tiver uma política que inclua inheritFromParent = false, ele não herdará a política da organização do pai. Em vez disso, o nó herdará 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 nó filho herda as políticas da organização com base em restrições de lista, as políticas herdadas são mescladas e reconciliadas com a política de organização do nó. Na avaliação da política 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. Com a política vigente, todos os valores são negados e será avaliado, da mesma forma, se o nó pai ou filho nega o valor. É recomendado 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 que são derivadas de restrições booleanas não se mesclam e não reconciliam políticas. Se uma política for especificada em um nó de recurso, esse valor TRUE ou FALSE é usado para determinar a política vigente. Exemplo:

  • Uma pasta define enforced: true para constraints/compute.disableSerialPortAccess.

  • Um projeto abaixo dessa pasta define enforced: false para constraints/compute.disableSerialPortAccess.

O valor enforced: true definido na pasta é ignorado porque enforced: false é definido no próprio projeto. A política da organização não aplicará a restrição a esse projeto.

Redefinir para a política padrão

Invocando RestoreDefault, a política da organização usará o comportamento padrão da restrição desse nó da hierarquia de recursos. Os nós filhos também herdarão esse comportamento.