Minha conta do Windows myUser
é membro de um grupo de distribuição do Active Directory myGroup
. Eu verifiquei isso por meio deste comando do PowerShell.
(Get-ADUser myUser -Properties MemberOf | select MemberOf).MemberOf `
| Get-ADGroup `
| Select -ExpandProperty Name
No entanto, nenhum dos comandos a seguir exibe este grupo AD.
whoami /groups
net user myUser /domain
net group | findstr myGroup
gpresult /r | findstr myGroup
Embora gpresult /r
os documentos mostrem apenas grupos de segurança e não grupos de distribuição, este parece ser um comportamento não documentado para net.exe
or whoami.exe
.
É verdade que nem net
pode whoami
mostrar grupos de distribuição? Ou outra propriedade do grupo é o motivo pelo qual ele não é exibido?
Estou ciente de que isso não pode ser verificado para meu grupo concreto, mas esperava que alguém soubesse disso ou pudesse verificar novamente com um grupo de distribuição em sua rede.
whoami
mostra especificamente grupos que fazem parte do token de segurança do processo. Esse é o seu propósito – ele não faz uma pesquisa de diretório como o Get-AD faz, mas apenas despeja o que seu próprio processo possui no momento.(Por exemplo, se as associações ao AD fossem atualizadas, seus processos ainda teriam o token antigo e o whoami também mostraria as informações antigas que foram estabelecidas no momento do logon.)
Grupos de distribuição, por definição, são grupos que não vão no token de segurança do processo – eles não têm SID e existem apenas como objetos LDAP (para uso por programas que precisam de grupos LDAP sem sobrecarregar o token de segurança do usuário, que é de tamanho limitado , assim como os tickets Kerberos) – portanto, eles são invisíveis para 'whoami'.
As políticas de grupo são aplicadas usando ACLs de segurança de arquivos, portanto, elas (e
gpresult
) dependem do mesmo token de processo que 'whoami'.Quanto a
net
, é um comando anterior ao AD e é da era do "domínio WinNT" e, se bem me lembro, os grupos de distribuição não existiam nos domínios NT4 e, portanto, são invisíveis para as APIs legadas quenet
utiliza. (Acho que eles se originam do Exchange, que mais tarde evoluiu para o AD?)