Get-CsAdminRole
Tópico modificado em: 2012-03-23
Retorna informações sobre as funções do Controle de acesso baseado em função (RBAC) utilizadas na organização. As funções do RBAC são utilizadas para especificar as tarefas de gerenciamento que os usuários podem efetuar e para determinar o escopo em que os usuários poderão efetuar essas tarefas.
Sintaxe
Get-CsAdminRole [-Identity <String>] [-LocalStore <SwitchParameter>]
Get-CsAdminRole [-Sid <String>] [-LocalStore <SwitchParameter>]
Get-CsAdminRole [-Filter <String>] [-LocalStore <SwitchParameter>]
Descrição Detalhada
O Controle de acesso baseado em função (RBAC) permite aos administradores delegar o controle de tarefas de gerenciamento específicas no Microsoft Lync Server 2010. Por exemplo: em vez de conceder à assistência técnica da organização privilégios plenos de administrador, é possível fornecer direitos muito específicos, como o direito de gerenciar apenas contas de usuário, o direito de gerenciar apenas componentes do Enterprise Voice e o direito de gerenciar apenas o arquivamento e Servidor de Arquivamento. Além disso, esses direitos podem ser limitados em escopo: alguém pode receber o direito de gerenciar o Enterprise Voice, mas apenas no site de Redmond, enquanto outra pessoa pode receber o direito de gerenciar usuários, mas apenas se essas contas de usuários estiverem na unidade organizacional (OU) Financeiro.
A implementação do Lync Server 2010 do RBAC é feita com base em dois elementos principais: Grupos de segurança do Active Directory e cmdlets do Windows PowerShell. Ao se instalar o Lync Server 2010, criam-se diversos grupos de segurança universal, como CsAdministrator, CsArchivingAdministrator e CsViewOnlyAdministrator, por exemplo. Esses grupos de segurança universal possuem uma correspondência de um para um com as funções do RBAC. Isso significa que todos os direitos de qualquer usuário que estiver no grupo de segurança CsArchivingAdministrator serão concedidos à função CsArchivingAdministrator do RBAC. Por sua vez, os direitos concedidos a uma função do RBAC têm como base os cmdlets atribuídos a essa função (os cmdlets podem ser atribuídos a diversas funções do RBAC). Por exemplo: suponhamos que uma função tenha recebido a atribuição dos seguintes cmdlets:
Get-ArchivingPolicy
Grant-ArchivingPolicy
New-ArchivingPolicy
Remove-ArchivingPolicy
Set-ArchivingPolicy
Get-ArchivingConfiguration
New-ArchivingConfiguration
Remove-ArchivingConfiguration
Set-ArchivingConfiguration
Get-CsUser
Export-CsArchivingData
Get-CsComputer
Get-CsPool
Get-CsService
Get-CsSite
A lista acima representa os únicos cmdlets que um usuário que tiver recebido a atribuição de uma função do RBAC hipotética poderá executar em uma sessão remota do Windows PowerShell. Se o usuário tentar executar o cmdlet Disable-CsUser, esse comando falhará porque os usuários que tiverem recebido a função hipotética não têm o direito de executar Disable-CsUser. Isso também se aplica ao Painel de Controle do Lync Server. Por exemplo: um Administrador de arquivamento não pode desabilitar um usuário usando o Painel de Controle do Lync Server, porque o Painel de Controle do Lync Server cumpre as funções do RBAC. (sempre que se executar um comando no Painel de Controle do Lync Server, se estará chamando de fato um cmdlet do Windows PowerShell). Se você não tiver permissão para executar Disable-CsUser, não fará diferença se você executar esse cmdlet diretamente, em uma sessão remota do Windows PowerShell, ou indiretamente, dentro do Painel de Controle do Lync Server. O comando falhará.
Observe que o RBAC se aplica apenas ao gerenciamento remoto. Se você estiver registrado em um computador que executa Lync Server 2010 e você abrir Shell de Gerenciamento do Lync Server, as funções do RBAC não serão impostas. Em vez disso, a segurança será imposta principalmente nos grupos de segurança RTCUniversalServerAdmins, RTCUniversalUserAdmins e RTCUniversalReadOnlyAdmins.
Ao se instalar o Lync Server 2010, a Instalação cria diversas funções do RBAC. Essas funções abrangem áreas administrativas comuns, como a administração de voz, o gerenciamento de usuários e a administração do Grupo de resposta. Essas funções incorporadas não podem ser modificadas de maneira alguma: não é possível adicionar ou remover cmdlets de funções, nem é possível excluir essas funções. (qualquer tentativa de excluir uma função incorporada resultará em uma mensagem de erro). No entanto, é possível usar as funções incorporadas para criar funções de RBAC personalizadas. Essas funções personalizadas podem então ser modificadas alterando-se os escopos administrativos. Por exemplo: é possível limitar a função, de forma que gerencie as contas de usuários de uma determinada OU do Active Directory.
O cmdlet Get-CsAdminRole retorna informações sobre todas as funções do RBAC disponíveis para uso na organização.
Quem pode executar esse cmdlet: Por padrão, membros dos seguintes grupos são autorizados a executar o cmdlet Get-CsAdminRole localmente: RTCUniversalUserAdmins, RTCUniversalServerAdmins e RTCUniversalReadOnlyAdmins. Para retornar uma lista de todas as funções do RBAC que tiverem recebido a atribuição desse cmdlet (inclusive qualquer função do RBAC personalizada criada por você), execute o seguinte comando no prompt do Windows PowerShell:
Get-CsAdminRole | Where-Object {$_.Cmdlets –match "Get-CsAdminRole\b"}
Parâmetros
Parâmetro | Obrigatório | Digite | Descrição |
---|---|---|---|
Identity |
Opcional |
Cadeia de caracteres |
Identificador exclusivo da função de RBAC a ser retornada. A Identidade de uma função de RBAC deve ser a mesma que SamAccountName do grupo de segurança universal do Active Directory que estiver associado a essa função. Por exemplo: a função Assistência técnica possui uma Identidade igual a CsHelpDesk; CsHelpDesk é também o SamAccountName do grupo de segurança do Active Directory associado a essa função. |
Filter |
Opcional |
Cadeia de caracteres |
Permite utilizar caracteres curinga para especificar a função (ou funções) do RBAC a ser retornada. Por exemplo: para retornar todas as funções que incluírem o valor de cadeia de caracteres "Redmond" em sua Identidade, utilize essa sintaxe: -Filter "*Redmond*". |
Sid |
Opcional |
Identificador de Segurança |
Permite utilizar um identificador de segurança (SID) para especificar a função do RBAC a ser recuperada. Os SIDs são atribuídos pelo Lync Server 2010 no momento em que a função do RBAC for criada e têm a seguinte aparência: S-1-5-21-1573807623-1597889489-1765977225-1145. Esse mesmo SID também pode ser encontrado no grupo de segurança correspondente do Active Directory. |
LocalStore |
Opcional |
Parâmetro de opção |
Recupera os dados do RBAC ma réplica local do Repositório de Gerenciamento Central, em vez do Repositório de Gerenciamento Central em si. |
Tipos de Entrada
Nenhuma.
Tipos de Retorno
Get-CsAdminRole retorna instâncias do objeto Microsoft.Rtc.Management.WritableConfig.Settings.Roles.Role.
Exemplo
-------------------------- Exemplo 1 ------------------------
Get-CsAdminRole
O comando apresentado no Exemplo 1 retorna informações sobre todas as funções de RBAC configuradas para uso na organização. Isto é feito chamando-se Get-CsAdminRole sem qualquer parâmetro.
-------------------------- Exemplo 2 ------------------------
Get-CsAdminRole -Identity "CsHelpDesk"
No Exemplo 2, é retornada uma única função do RBAC: a função que possui a Identidade CsHelpDesk.
-------------------------- Exemplo 3 ------------------------
Get-CsAdminRole -Filter "*Voice*"
O comando anterior retorna todas as funções do RBAC que possuírem um valor de cadeia de caracteres "Voice" em alguma posição de sua Identidade (CsVoiceAdministrator; RedmondVoiceAdministrators, por exemplo). Para fazer isso, chama-se Get-CsAdminRole, juntamente com o parâmetro Filter. O valor de filtro "*Voice*" limita os dados retornados às funções do RBAC que possuírem o valor da cadeia de caracteres "Voice" em qualquer posição de sua Identidade.
-------------------------- Exemplo 4 ------------------------
Get-CsAdminRole | Where-Object {$_.IsStandardRole -eq $False}
O Exemplo 4 retorna todas as funções de RBAC personalizadas que tiverem sido criadas para uso na organização. Para realizar essa tarefa, o comando utiliza primeiramente Get-CsAdminRole, para retornar uma coleção de todas as funções do RBAC em uso. Esta coleção será canalizada para o cmdlet Where-Object, que selecionará apenas as funções nas quais a propriedade IsStandardRole for igual a False. Por definição, qualquer função que atenda a esses critérios é uma função de RBAC personalizada.
-------------------------- Exemplo 5 ------------------------
Get-CsAdminRole | Where-Object {$_.Cmdlets -match "Set-CsUser\b"}
O comando exibido no Exemplo 5 retorna todas as funções do RBAC que incluírem o cmdlet Set-CsUser. Para fazer isso, o comando primeiramente chama Get-CsAdminRole, sem qualquer parâmetro, para retornar uma coleção de todas as funções do RBAC na organização. Essa coleção será então canalizada para Where-Object, que selecionará qualquer função cuja propriedade Cmdlets incluir o valor de cadeia de caracteres "Set-CsUser\b". (\b é um marcador de limite de palavras que indica que "Set-CsUser" representa todo o valor de cadeia de caracteres).
-------------------------- Exemplo 6 ------------------------
Get-CsAdminRole | Where-Object {$_.UserScopes -match "OU: ou=Redmond,dc=litwareinc,dc=com"}
O Exemplo 6 retorna informações sobre todas as funções do RBAC que incluírem a OU especificada (ou=Redmond, dc=litwareinc, dc=com) na propriedade UserScopes. Para realizar essa tarefa, o comando primeiramente chama Get-CsAdminRole, para retornar uma coleção de todas as funções do RBAC configuradas para uso. Essa coleção será então canalizada para Where-Object, que selecionará todas as funções que incluírem o valor de cadeia de caracteres "OU:ou=Redmond,dc=litwareinc,dc=com" na propriedade UserScopes.
-------------------------- Exemplo 7 ------------------------
Get-CsAdminRole -Identity "CsVoiceAdministrator" | Select-Object -ExpandProperty Cmdlets
O comando anterior retorna uma lista de todos os cmdlets incluídos na função CsVoiceAdministrator. Para fazer isso, o comando primeiramente utiliza Get-CsAdminRole, para retornar todas as propriedades e os valores de propriedade de CsVoiceAdministrator. Estas informações serão então canalizadas para o cmdlet Select-Object, que utilizará o parâmetro ExpandProperty para exibir todos os itens contidos na propriedade Cmdlets.