
Entendo que tanto as pastas NTFS quanto os objetos AD usam descritores de segurança e DACLs para verificar o acesso do usuário/processo MS Learn - Como funciona a verificação de acesso
No entanto, como a verificação de acesso resolve ACEs para grupos AD aninhados? Por exemplo:
- O grupo AD
AD-Parent
recebe direitos de modificação emF:\Restrict
- O grupo AD
AD-VIPs
é filho deAD-Parent
- O usuário
vip
é membro deAD-VIPs
Meu entendimento é que
vip
descritor de segurança terá uma ACE referenteAD-VIPs
eF:Restrict
DACL terá um ACE referente aAD-Parent
Como e qual processo no Windows encontra a cadeia `vip -> AD-VIPs -> AD-Parent' e concede acesso?
Responder1
Durante a verificação de logon/autenticação/autorização, osegurançaassociações de grupo são adicionadas à parte do Certificado de Acesso Privilegiado (PAC) do token Kerberos. Isso inclui grupos aninhados.
Quando uma pasta é acessada, o host com o recurso (servidor de arquivos neste caso) compara os SecurityIdentifiers na ACL com os SecurityIdentifiers no PAC do token Kerberos. Se houver uma correspondência, o acesso será concedido.
https://learn.microsoft.com/en-us/windows/win32/adschema/a-tokengroups
"Um atributo computado que contém a lista de SIDs devido a uma operação transitiva de expansão de associação de grupo em um determinado usuário ou computador. Os grupos de token não podem ser recuperados se nenhum Catálogo Global estiver presente para recuperar as associações reversas transitivas."
Responder2
Vamos começar pelo link que você forneceu (ênfase minha):
O sistema compara o confiável em cada ACE com os confiáveis identificados no token de acesso do thread.Um token de acesso contém identificadores de segurança (SIDs) que identificam o usuário e as contas do grupo ao qual o usuário pertence.
Na verdade, "as contas de grupo às quais o usuário pertence" são obtidas do ticket Kerberos que o usuário recebeu quando fez login. O ticket contém os SIDs de todos os grupos aos quais o usuário pertence, independentemente de o grupo estar aninhado dentro de outro grupo ou não.
Especificamente, para responder à sua pergunta:
Como e qual processo no Windows encontra a cadeia `vip -> AD-VIPs -> AD-Parent' e concede acesso?
Esta tarefa é executada pelo Controlador de Domínio ao gerar um Ticket-granging Ticket (TGT) (normalmente, quando o usuário efetuou login). O TGT contém os SIDs de todos os grupos aos quais o usuário pertence.
Você pode fazer uma experiência e ver um pouco disso comExplorador de processos: Inicie o Process Explorer, clique duas vezes em um processo iniciado por um usuário de domínio (por exemplo notepad.exe), clique na guia Segurança e aqui você poderá ver a associação ao grupo mesmo se os grupos estiverem aninhados.