Compartilhar via


Exibir Permissões Efetivas

Aplica-se a: Exchange Server 2010

Tópico modificado em: 2009-10-20

Permissões no Microsoft Exchange Server 2010 são concedidas funções de gerenciamento atribuídas para grupos de função de gerenciamento, diretivas de atribuição de função de gerenciamento, grupos de segurança universal (USGs) ou diretamente para usuários. Aos usuários são concedidas permissões se forem membros dos grupos de função ou USGs ou são atribuídas diretivas de atribuição de função.

A maioria das permissões é concedida com base em associação de grupo de função ou a atribuição de diretivas de atribuição para usuários finais. Embora o uso de grupos de função e diretivas de atribuição facilite a concessão de permissões para grande número de usuários, você não pode estar consciente de quem é um membro de um grupo de função, ou a quem foi atribuído uma diretiva de atribuição. É onde a opção no cmdlet de GetEffectiveUsers Get ManagementRoleAssignment é útil. Mostra a quais usuários são concedidas permissões pela função de gerenciamento através de grupos de função, diretivas de atribuição e USGs atribuídas a eles.

A opção GetEffectiveUsers é usada com o cmdlet Get-ManagementRoleAssignment cmdlet quando o Role parâmetro é usado. Especificando esta opção com uma função em particular, o cmdlet Get-ManagementRoleAssignment examina toda a função que os cessionários atribuídos à função, como grupos de função, diretivas de atribuição e USGs e listas de membros de cada um.

Dica

A opção GetEffectiveUser não lista usuários que são membros de um grupo de função externo vinculado. Em vez de uma lista de usuários, se um grupo de função vinculadas for encontrado, Todos os Membros do Grupo Vinculado é mostrado. Para obter mais informações sobre permissões em várias florestas, consulte Noções Básicas Sobre Permissões de Várias Florestas.

Para obter mais informações sobre funções de gerenciamento, grupos de função e diretivas de atribuições, consulte Noções Básicas Sobre Controle de Acesso Baseado em Função.

Para mais informações sobre as atribuições da função de gerenciamento, consulte Entendendo as Atribuições de Função de Gerenciamento.

Procurando outras tarefas de gerenciamento relacionadas ao gerenciamento de permissões? Consulte Gerenciando permissões.

Use o Shell para listar todos os usuários válidos

Dica

Você não pode usar o EMC para listar todos os usuários válidos.

Para listar todos os usuários aos quais permissões foram concedidas pela função de gerenciamento, use a seguinte sintaxe.

Get-ManagementRoleAssignment -Role <role name> -GetEffectiveUsers

Este exemplo lista todos os usuários aos são permissões são concedidas pela função Email do Destinatário.

Get-ManagementRoleAssignment -Role "Mail Recipients" -GetEffectiveUsers

Se você deseja alterar que propriedades sejam retornadas na lista ou exportar a lista para um arquivo de valor separado por vírgula (CSV), consulte Use o Shell para personalizar a saída e exibi-la mais adiante neste tópico.

Para obter informações detalhadas de sintaxes e de parâmetros, consulte Get-ManagementRoleAssignment.

Use o Shell para localizar um usuário específico em uma função

Dica

Você nao pode usar o EMC para localizar um usuário específico em uma função.

Para localizar um usuário específico ao qual permissões foram concedidas por uma função de gerenciamento, você deve usar o cmdlet Get-ManagementRoleAssignment para recuperar uma lista de usuários válidos e, em seguida, canalizar a saída do cmdlet para o cmdlet Onde. O cmdlet Onde filtra a saída e retorna somente o usuário que você especificou. Use a sintaxe a seguir.

Get-ManagementRoleAssignment -Role <role name> -GetEffectiveUsers | Where { $_.EffectiveUserName -Eq "<name of user>" }

Este exemplo localiza o usuário David Strome na função do diário.

Get-ManagementRoleAssignment -Role Journaling -GetEffectiveUsers | Where { $_.EffectiveUserName -Eq "David Strome" }

Se você quiser alterar quais propriedades são retornadas na lista ou exportar a lista para um arquivo CSV, consulte Use o Shell para personalizar a saída e exibi-la mais adiante neste tópico.

Para obter informações detalhadas de sintaxes e de parâmetros, consulte Get-ManagementRoleAssignment.

Use o Shell para localizar um usuário específico em todas as funções

Dica

Você não pode usar o EMC para localizar um usuário específico em todas as funções.

Para conhecer cada função da qual um usuário recebe permissões, você deve usar o cmdlet Get-ManagementRoleAssignment para recuperar todos os usuários válidos em todas as funções de gerenciamento e, então, canalizar a saída do cmdlet para o cmdlet Onde. O cmdlet Onde filtra a saída e retorna somente atribuições de função que concedem permissões a um usuário.

Get-ManagementRoleAssignment -GetEffectiveUsers | Where { $_.EffectiveUserName -Eq "<name of user>" }

Este exemplo localiza todas as atribuições de função que concede permissões para o usuário Kim Akers.

Get-ManagementRoleAssignment -GetEffectiveUsers | Where { $_.EffectiveUserName -Eq "Kim Akers" }

Se você quiser alterar quais propriedades são retornadas na lista ou exportar a lista para um arquivo CSV, consulte Use o Shell para personalizar a saída e exibi-la mais adiante neste tópico.

Para obter informações detalhadas de sintaxes e de parâmetros, consulte Get-ManagementRoleAssignment.

Use o Shell para personalizar a saída e exibi-la

Dica

Não é possível usar o EMC para personalizar saída e exibi-la.

A saída padrão do cmdlet Get-ManagementRoleAssignment pode não ter as informações desejadas. A saída do cmdlet contém muito mais propriedades que você pode acessar. A seguir estão algumas das propriedades que poderiam ser úteis:

  • EffectiveUserName   É o nome do usuário.
  • Função   Indica a função concedendo as permissões.
  • RoleAssigneeName   É o grupo de função, diretiva de atribuição ou USG atribuída à função e contém o usuário na propriedade EffectiveUserName.
  • RoleAssigneeType   Indica se a atribuição de função é para um grupo de função, diretiva de atribuição, USG ou usuário.
  • AssignmentMethod   Indica se a atribuição entre a função e o assignee de função é direto ou indireto.
  • CustomRecipientWriteScope   Indica o escopo de gravação de destinatário personalizado, se houver, aplicado à atribuição de função quando foi criado. O escopo especificado nesta propriedade substitui o escopo de gravação de destinatário implícito na propriedade RecipientWriteScope.
  • CustomRecipientWriteScope   Indica o escopo de gravação de destinatário personalizado, se houver, aplicado à atribuição de função quando foi criado. O escopo especificado nesta propriedade substitui o escopo de gravação de destinatário implícito na propriedade ConfigWriteScope.
  • RecipientReadScope   Indica o escopo leitura de destinatário implícito aplicado à função.
  • RecipientWriteScope   Indica o escopo de gravação de destinatário implícita aplicado à função.
  • ConfigReadScope   Indica o escopo de leitura de configuração implícito aplicado à função.
  • ConfigWriteScope   Indica o escopo de gravação de configuração implícita aplicado à função.

Para selecionar as propriedades que você deseja exibir em sua lista, use aproximadamente os mesmos comandos usados nas seções Use o Shell para listar todos os usuários válidos, Use o Shell para localizar um usuário específico em uma função e Use o Shell para localizar um usuário específico em todas as funções. A diferença é que você canaliza os resultados dos comandos para os cmdlets Format-Table ou Select-Object. O cmdlet Format-Table é útil para saída da lista de resultados em sua tela. O cmdlet Select-Object é útil para saída da lista de seus resultados em um arquivo CSV.

Ambos os cmdlets permitem especificar as propriedades que você deseja ver e na ordem que você deseja vê-las. O cmdlet Format-Table fornece mais opções ao listar resultados em uma tela enquanto o Select-Object não modifica a saída de qualquer forma, que é útil ao canalizar a lista em um arquivo CSV.

Para obter mais informações sobre os cmdlets Format-Table e Select-Object consulte Trabalhando com Saída do Comando.

Uma lista personalizada na tela de saída

Primeiro, escolha as informações que deseja ver e encontre o comando associado entre um dos procedimentos a seguir:

  • Use o Shell para listar todos os usuários válidos
  • Use o Shell para localizar um usuário específico em uma função
  • Use o Shell para localizar um usuário específico em todas as funções

Depois, escolha as propriedades que deseja ver na lista. Finalmente, use a sintaxe a seguir para exibir a lista.

<command to retrieve list > | Format-Table <property 1>, <property 2>, <property ...>

Este exemplo mostra o usuário David Strome em todas as funções, e exibe as propriedades EffectiveUserName, Role, CustomRecipientWriteScope e CustomConfigWriteScope.

Get-ManagementRoleAssignment -GetEffectiveUsers | Where { $_.EffectiveUserName -Eq "David Strome" } | Format-Table EffectiveUserName, Role, CustomRecipientWriteScope, CustomConfigWriteScope

Para obter informações detalhadas de sintaxes e de parâmetros, consulte Get-ManagementRoleAssignment.

Saída de uma lista personalizada para um arquivo CSV

Para exportar uma lista para um arquivo CSV, você precisa canalizar os resultados do comando Get-ManagementRoleAssignment a partir do procedimento apropriado listado previamente no cmdlet Select-Object. A saída do cmdlet Select-Object é, então, canalizado para o cmdlet Export-CSV que salva a saída CSV para um nome de arquivo especificado.

Primeiro, escolha as informações que deseja ver e encontre o comando associado entre um dos procedimentos a seguir:

  • Use o Shell para listar todos os usuários válidos
  • Use o Shell para localizar um usuário específico em uma função
  • Use o Shell para localizar um usuário específico em todas as funções

Depois, escolha as propriedades que deseja ver na lista. Finalmente, use a seguinte sintaxe para exportar a lista para um arquivo CSV.

<command to retrieve list > | Select-Object <property 1>, <property 2>, <property ...> | Export-CSV <filename>

Este exemplo mostra o usuário David Strome em todas as funções, e exibe as propriedades EffectiveUserName, Role, CustomRecipientWriteScope e CustomConfigWriteScope.

Get-ManagementRoleAssignment -GetEffectiveUsers | Where { $_.EffectiveUserName -Eq "David Strome" } | Select-Object EffectiveUserName, Role, CustomRecipientWriteScope, CustomConfigWriteScope | Export-CSV c:\output.csv

Você pode agora visualizar o arquivo CSV em um visualizador de sua escolha.

Para obter informações detalhadas de sintaxes e de parâmetros, consulte Get-ManagementRoleAssignment.