PowerShell para Personalizar Permissão RBAC no Exchange 2013
Jul 3, 2014
Continuamos a série “Aprofundamento”. Nela você pode encontrar as respostas para algumas de suas perguntas técnicas. Os especialistas do setor fornecerão suas percepções sobre vários tópicos e pesquisarão algumas novas funcionalidades das aplicações mais populares. O primeiro artigo da série pode ser encontrado aqui. Leia também mais sobre a configuração do Exchange 2013 CAS (Parte 1, Parte 2)! Seus comentários e discussões são bem-vindos!
RBAC é o novo modelo de permissões no Exchange 2013. Com RBAC, não precisamos modificar e gerenciar listas de controle de acesso (ACLs). Ele nos permite controlar em níveis amplos e granulares o que administradores e usuários finais podem fazer. No Exchange 2013, RBAC agora controla tanto as tarefas administrativas que podem ser realizadas quanto o grau em que os usuários podem administrar suas próprias caixas de correio e grupos de distribuição.
O grupo de funções consiste nos seguintes componentes que definem o que administradores e usuários especialistas podem fazer:
- Grupo de funções de gestão: O grupo de funções de gestão é um grupo de segurança universal especial (USG) que contém caixas de correio, usuários, USGs e outros grupos de funções que são membros do grupo de funções. É aqui que você adiciona e remove membros, e também a quem as funções de gestão são atribuídas. A combinação de todas as funções em um grupo de funções define tudo o que os usuários adicionados a um grupo de funções podem gerir na organização do Exchange.
- Função de gestão: Uma função de gestão é um recipiente para um agrupamento de entradas de função de gestão. As funções são usadas para definir as tarefas específicas que podem ser realizadas pelos membros de um grupo a quem foram atribuídas funções. Uma entrada de função de gestão é um cmdlet, script ou permissão especial que permite que cada tarefa especificada na função seja realizada.
- Atribuição de função de gestão: Uma atribuição de função de gestão liga uma função a um grupo de funções. Atribuir uma função a um grupo de funções concede aos membros do grupo de funções a capacidade de usar os cmdlets e parâmetros definidos na função. As atribuições de função podem usar escopos de gestão para controlar onde a atribuição pode ser usada.
- Âmbito do papel de gestão: Um âmbito do papel de gestão é o alcance de influência ou impacto numa atribuição de papel. Quando um papel é atribuído com um âmbito a um grupo de papel, o âmbito de gestão alvo especificamente quais objetos essa atribuição está autorizada a gerir. A atribuição, e o seu âmbito, são então dados aos membros do grupo de papel, e restringem o que esses membros podem gerir. Um âmbito pode consistir numa lista de servidores ou bases de dados, unidades organizacionais (OUs), ou filtros em objetos de servidor, base de dados ou destinatário. Vamos considerar um cenário, onde a equipe de suporte técnico precisa fornecer a permissão “Recipient Management”, que será responsável por criar e gerir caixas de correio, criar e gerir grupos de distribuição, mover e migrar caixas de correio e, finalmente, rastrear as mensagens. Mas a permissão “Recipient Management” também fornecerá direitos de acesso para eliminar e desativar. Esta permissão precisa ser restringida para a equipe de suporte técnico. Vamos seguir os passos abaixo para personalizar a permissão de gestão de destinatário.
Para começar, vamos entender as funções de gerenciamento sob o grupo de funções “Recipient Management” usando o comando abaixo
Get-Rolegroup “Recipient Management” | Select roles).roles | select name
Precisamos selecionar apenas a função de gerenciamento necessária do resultado do comando acima e personalizá-la para atender às nossas necessidades.
- Grupos de Distribuição – Necessita de Personalização.
- Criação de Destinatário de Email – Necessita Personalização.
- Destinatários de E-mail – Necessita Personalização.
- Rastreamento de Mensagens – Não é necessária personalização.
- Mova Caixas de Correio – Não é necessária personalização.
- Políticas de destinatário – Função de gerenciamento não necessária.
- Caixas de correio de equipe – Função de gerenciamento não necessária.
Vamos seguir os passos abaixo para criar e personalizar o grupo de funções “Recipient Management”.
1. Crie um novo grupo de funções “Helpdesk Administrator” utilizando o seguinte comando PowerShell
New-RoleGroup “HelpDesk Administrator”
2. Agora, vamos trabalhar na função de gerenciamento “Distribution Groups” e encontrar todos os cmdlets disponíveis para o Grupo de Distribuição, antes de ser personalizado. O comando PowerShell abaixo nos fornecerá todas as ManagementRoleEntry para a função de gerenciamento “Distribution Groups”.
Get-ManagementRole “Distribution Groups” | Get-ManagementRoleEntry
3. Crie a nova função de gerenciamento “Distribution Groups with no Remove” utilizando o comando abaixo. Este comando criará uma nova função de gerenciamento “Distribution Groups with no Remove” e também copiará todos os cmdlets disponíveis em “Distribution Groups” para a função de gerenciamento “Distribution Groups with no Remove”.
Get-ManagementRole "Distribution Groups" | New-ManagementRole "Distribution Groups with no Remove"
4. Em seguida, remova todos os cmdlets “Remove-*” do papel de gerenciamento “Distribution Groups with no Remove” utilizando o seguinte comando PowerShell.
Get-ManagementRole "Distribution Groups with no Remove" | Get-ManagementRoleEntry | Where {$_.Name -like "remove*"} | Remove-ManagementRoleEntry -confirm:$false
5. Por fim, atribua a função de gerenciamento personalizada “Distribution Groups with no Remove” ao grupo de funções “HelpDesk Administrator” usando o comando abaixo.
New-ManagementRoleAssignment -SecurityGroup "HelpDesk Administrator" -Role "Distribution Groups with no Remove"
6. Com isso, personalizamos a função de gerenciamento “Distribution Groups” . Agora, precisamos personalizar a função de gerenciamento “Mail Recipient Creation” e “Mail Recipients”.
7. A seguir estão o conjunto de comandos PowerShell para personalizar a função de gerenciamento “Mail Recipient Creation”. Ele cria uma nova função de gerenciamento personalizada – “Mail Recipient Creation with no Remove” e a atribui ao grupo de funções “HelpDesk Administrator”.
Get-ManagementRole "Mail Recipient Creation" | New-ManagementRole "Mail Recipient Creation with no Remove"
Get-ManagementRole "Mail Recipient Creation with no Remove" | Get-ManagementRoleEntry | Where {$_.Name -like "remove*"} | Remove-ManagementRoleEntry -confirm:$false
New-ManagementRoleAssignment -SecurityGroup "HelpDesk Administrator" -Role "Mail Recipient Creation with no Remove"
8. Da mesma forma, abaixo está o conjunto de comandos PowerShell para personalizar a função de gerenciamento “Mail Recipients”. Ele cria uma nova função de gerenciamento personalizada – “Mail Recipients with no Remove” e a atribui ao grupo de funções “HelpDesk Administrator”.
Get-ManagementRole "Mail Recipients" | New-ManagementRole "Mail Recipients with no Remove"
Get-ManagementRole "Mail Recipients with no Remove" | Get-ManagementRoleEntry | where {$_.Name -like "remove*"} | Remove-ManagementRoleEntry -confirm:$false
New-ManagementRoleAssignment -SecurityGroup "HelpDesk Administrator" -Role "Mail Recipients with no Remove"
9. As funções de gerenciamento “Message Tracking” e “Move Mailboxes” não precisam de personalização, pois possuem cmdlets que são necessários para realizar as operações. Os comandos abaixo atribuem as funções padrão “Message Tracking” e “Move Mailboxes” ao grupo de funções “HelpDesk Administrator”
New-ManagementRoleAssignment –SecurityGroup “HelpDesk Administrator” –Role “Message Tracking”
New-ManagementRoleAssignment –SecurityGroup “HelpDesk Administrator” –Role “Move Mailboxes”
10. Por fim, adicione membros ao grupo de funções “HelpDesk Administrator” utilizando o comando PowerShell abaixo
Get-RoleGroup “HelpDesk Administrator” | Add-RoleGroupMember –Member Krishna.kumar
Finalmente, temos o grupo de funções totalmente personalizado “HelpDesk Administrator”. Os membros do grupo “HelpDesk Administrator” terão permissão para criar e modificar caixa de correio, grupo de distribuição etc., mas não terão permissão para remover. Espero que você tenha obtido um bom entendimento sobre como personalizar permissões RBAC usando PowerShell.
Conteúdo relacionado selecionado:
Compartilhar em
Saiba Mais
Sobre o autor
Krishna Kumar
N/A
Krishna tem mais de 10 anos de experiência em TI e possui experiência prática com Microsoft Exchange, Active Directory, Office 365, PowerShell e VMware. Krishna é certificado com um MCITP e também foi um MVP em PowerShell. Krishna também oferece treinamentos sobre diversos tópicos de Exchange e PowerShell. Ele também mantém um blog pessoal que contém dezenas de artigos técnicos sobre vários tópicos de TI. Krishna adora jogar críquete e badminton, e também gosta de cultivar vegetais orgânicos em seu jardim na cobertura.
Saiba mais sobre este assunto
Criar usuários do AD em massa e enviar suas credenciais por e-mail usando PowerShell
Como criar, alterar e testar senhas usando PowerShell
Como adicionar e remover grupos AD e objetos nos grupos com PowerShell
Confianças no Active Directory
Ataques de ransomware ao Active Directory