Como visualizar permissões de segurança para qualquer objeto no Active Directory (AD)
Continue lendo para saber como visualizar as permissões de usuários, grupos ou quaisquer outros objetos do AD usando o PowerShell e como você pode fazer isso facilmente com o ADManager Plus.
Windows PowerShell
- Identifique o domínio onde está localizado o objeto para o qual as permissões serão visualizadas.
- Crie e compile o script para visualizar as permissões do objeto do AD. Execute o script no PowerShell.
- Exemplo de script para alterar a configuração de senha para "O usuário deve alterar a senha no próximo logon" para uma conta de usuário do AD:
Copiado
$securityreport = @()
$schemaGUID = @{}
$ErrorActionPreference = 'SilentlyContinue' Get-ADObject -SearchBase (Get-ADRootDSE).schemaNamingContext -LDAPFilter '(schemaGUID=*)' -Properties name, schemaGUID | ForEach-Object {$schemaGUID.add([System.GUID]$_.schemaGUID,$_.name)} Get-ADObject -SearchBase "CN=Extended-Rights,$((Get-ADRootDSE).configurationNamingContext)" -LDAPFilter '(objectClass=controlAccessRight)' -Properties name, rightsGUID | ForEach-Object {$schemaGUID.add([System.GUID]$_.rightsGUID,$_.name)} $ErrorActionPreference = 'Continue' # Get a list of AD objects. $AOs = @(Get-ADDomain | Select-Object -ExpandProperty DistinguishedName) $AOs += Get-ADOrganizationalUnit -Filter * | Select-Object -ExpandProperty DistinguishedName $AOs += Get-ADObject -SearchBase (Get-ADDomain).DistinguishedName -SearchScope Subtree -LDAPFilter '(objectClass=*)' | Select-Object -ExpandProperty DistinguishedName ForEach ($AO in $AOs) { $securityreport += Get-Acl -Path "AD:\$AO" | Select-Object -ExpandProperty Access | Select-Object @{name='organizationalunit';expression={$AO}}, ` @{name='objectTypeName';expression={if ($_.objectType.ToString() -eq '00000000-0000-0000-0000-000000000000') {'All'} Else {$schemaGUID.Item($_.objectType)}}}, ` @{name='inheritedObjectTypeName';expression={$schemaGUID.Item($_.inheritedObjectType)}}, ` * } # Filter by single user and export to a CSV file. $User ='Username' $securityreport | Where-Object {$_.IdentityReference -like "*$User*"} | Select-Object IdentityReference, ActiveDirectoryRights, OrganizationalUnit, IsInherited -Unique | Export-Csv -Path "D:\report\permissions.csv" -NoTypeInformation
Clique para copiar o script inteiro
ADManager Plus
- Navegue até Relatórios > Relatórios de segurança > Objetos do AD acessíveis por contas.
- Selecione Domínio e conta(s) de usuário para os quais deseja visualizar as permissões. Você pode importar esta lista diretamente a partir de um arquivo CSV. Clique em Aplicar.
Captura de tela
» Iniciar teste gratuito de 30 dias
Este relatório fornece informações sobre as permissões de acesso de uma conta do AD.
Embora a visualização de permissões para objetos do AD com ferramentas nativas como o PowerShell pareça simples, ela apresenta algumas limitações:
- O script do PowerShell pode ser executado somente em computadores que tenham a função Serviços de Domínio Active Directory instalada.
- Caso seja necessária qualquer permissão para outros objetos do AD, um script novo e complexo precisa ser escrito.
- A sintaxe, os parâmetros e as iterações precisam estar corretos. Um erro de digitação ou sintaxe incorreta pode ser difícil de detectar e corrigir, especialmente quando o script é longo.
Reduza os riscos de segurança monitorando constantemente as permissões do AD
É importante que os administradores de TI possam buscar relatórios que os ajudem a visualizar e analisar as permissões sobre objetos do AD. Isso os ajuda a remover usuários de grupos que lhes concedem permissões desnecessárias para seu trabalho diário.
O ADManager Plus permite que os administradores obtenham relatórios de permissão detalhados com apenas alguns cliques do mouse em seu console GUI baseado na web. Também possui opções de agendamento e envio automático dos relatórios por e-mail. Saiba mais sobre relatórios de permissões do AD aqui.