Compartilhar via


Regras de herança ACE

O sistema propaga automaticamente entradas de controle de acesso (ACEs) herdáveis para objetos filhos de acordo com um conjunto de regras de herança. O sistema coloca ACEs herdadas na lista de controle de acesso discricionário (DACL) do filho de acordo com a ordem de preferencial de ACEs em um DACL.

As ACEs herdadas por objetos filho de contêiner e não de contêiner diferem, dependendo das combinações de sinalizadores de herança. Essas regras de herança funcionam da mesma forma para DACLs e as listas de controle de acesso do sistema (SACLs).

Sinalizador ACE pai Efeito na ACL secundária
Somente OBJECT_INHERIT_ACE Objetos filhos de não contêiner: herdados como uma ACE efetiva. Objetos filho de contêiner: os contêineres herdam uma ACE somente herdada, a menos que o sinalizador de bits NO_PROPAGATE_INHERIT_ACE também esteja definido.
Somente CONTAINER_INHERIT_ACE Objetos filho de não contêiner: nenhum efeito sobre o objeto filho. Objetos filho do contêiner: o objeto filho herda uma ACE efetiva. A ACE herdada é herdável, a menos que o sinalizador de bits NO_PROPAGATE_INHERIT_ACE também esteja definido.
CONTAINER_INHERIT_ACE e OBJECT_INHERIT_ACE Objetos filhos de não contêiner: herdados como uma ACE efetiva. Objetos filho do contêiner: o objeto filho herda uma ACE efetiva. A ACE herdada é herdável, a menos que o sinalizador de bits NO_PROPAGATE_INHERIT_ACE também esteja definido.
Nenhum sinalizador de herança definido Nenhum efeito em objetos de contêiner ou de não contêiner filhos.

Se um ACE herdado for um ACE efetivo para o objeto filho, o sistema mapeará todos os direitos genéricos para os direitos específicos do objeto filho. Da mesma forma, o sistema mapeia identificadores de segurança genéricos (SIDs), como CREATOR_OWNER, para o SID apropriado. Se uma ACE herdada for uma ACE somente herdada, todos os direitos genéricos ou SIDs genéricos serão deixados inalterados para que possam ser mapeados adequadamente quando a ACE for herdada pela próxima geração de objetos filho.

Para um caso em que um objeto de contêiner herda um ACE que seja eficaz no contêiner e herdável por seus descendentes, o contêiner pode herdar dois ACEs. Isso ocorrerá se o ACE herdável contiver informações genéricas. O contêiner herda uma ACE somente herdada que contém as informações genéricas e uma ACE somente efetiva no qual as informações genéricas foram mapeadas.

Uma ACE específica do objeto tem um membro de InheritedObjectType que pode conter um GUID para identificar o tipo de objeto que pode herdar a ACE.

Se o InheritedObjectType GUID não for especificado, as regras de herança de um ACE específico do objeto serão as mesmas de um ACE padrão.

Se o GUID InheritedObjectType for especificado, a ACE será herdável por objetos que correspondem ao GUID se OBJECT_INHERIT_ACE estiver definido e por contêineres que correspondem ao GUID se CONTAINER_INHERIT_ACE estiver definido. Observe que atualmente apenas os objetos DS dão suporte a ACEs específicos do objeto e o DS trata todos os tipos de objeto como contêineres.