Set-CsAdminRole
Ultima modifica dell'argomento: 2012-03-26
Modifica un ruolo RBCA (Role-Based Access Control) esistente. I ruoli RBAC consentono di specificare le attività di gestione consentite agli utenti e di determinare l'ambito in cui gli utenti potranno eseguire tali attività.
Sintassi
Set-CsAdminRole -Identity <String> [-ConfigScopes <PSListModifier>] [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-UserScopes <PSListModifier>] [-WhatIf [<SwitchParameter>]]
Descrizione dettagliata
Il controllo di accesso basato sui ruoli (RBAC) consente agli amministratori di delegare il controllo di attività di gestione specifiche in Microsoft Lync Server 2010. Ad esempio, invece di concedere privilegi di amministrazione completi agli addetti al supporto tecnico dell'organizzazione, è possibile assegnare a tali dipendenti diritti molto specifici, ovvero il diritto di gestire solo gli account utente, il diritto di gestire solo i componenti di VoIP aziendale e il diritto di gestire solo l'archiviazione e il Server di archiviazione. Inoltre, tali diritti possono essere limitati nell'ambito: ad alcuni dipendenti può essere concesso il diritto di gestire VoIP aziendale, ma solo nel sito Redmond, mentre ad altri può essere concesso il diritto di gestire gli utenti, ma solo se tali account utente sono nell'unità organizzativa Finance.
L'implementazione del controllo di accesso basato sui ruoli in Lync Server 2010 è incentrata su due elementi chiave, ovvero i gruppi di sicurezza di Active Directory e i cmdlet di Windows PowerShell. Quando si installa Lync Server 2010, vengono creati automaticamente diversi gruppi di sicurezza universali, tra cui CsAdministrator, CsArchivingAdministrator e CsViewOnlyAdministrator. Questi gruppi di sicurezza universali presentano una corrispondenza uno-a-uno con i ruoli RBAC, quindi qualsiasi utente incluso nel gruppo di sicurezza CsArchivingAdministrator dispone di tutti i diritti concessi al ruolo RBAC CsArchivingAdministrator. A loro volta, i diritti concessi ad un ruolo RBAC si basano sui cmdlet assegnati a tale ruolo (i cmdlet possono essere assegnati a ruoli RBAC multipli). Si supponga ad esempio che a un ruolo siano stati assegnati i seguenti cmdlet:
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
Nell'elenco precedente sono riportati solo i cmdlet che possono essere eseguiti da un utente a cui è stato assegnato un ipotetico ruolo RBAC in una sessione remota di Windows PowerShell. Se l'utente tenta di eseguire il cmdlet Disable-CsUser, il comando avrà esito negativo, in quanto gli utenti con il ruolo ipotetico non sono autorizzati a eseguire Disable-CsUser. Lo stesso vale per il Pannello di controllo di Lync Server. Ad esempio, un amministratore dell'archiviazione non può disabilitare un utente utilizzando il Pannello di controllo di Lync Server, in quanto quest'ultimo si attiene ai ruoli RBAC. Ogni volta che si esegue un comando nel Pannello di controllo di Lync Server, in pratica si chiama un cmdlet di Windows PowerShell. Se non si è autorizzati a eseguire Disable-CsUser, non avrà alcuna importanza se si esegue direttamente il cmdlet da Windows PowerShell o se lo si esegue indirettamente nel Pannello di controllo di Lync Server. Il comando avrà comunque esito negativo.
RBAC si applica solo alla gestione remota. Se si è connessi a un computer in cui è in esecuzione Lync Server 2010 e si apre Lync Server Management Shell, i ruoli RBAC non verranno applicati. La sicurezza invece viene applicata principalmente tramite i gruppi di sicurezza RTCUniversalServerAdmins, RTCUniversalUserAdmins e RTCUniversalReadOnlyAdmins.
Quando si installa Lync Server 2010, vengono creati diversi ruoli RBAC predefiniti che riguardano aree amministrative comuni quali l'amministrazione vocale, la gestione degli utenti e l'amministrazione di Response Group. Questi ruoli predefiniti non possono essere in alcun modo modificati: non è possibile aggiungere o rimuovere i cmdlet assegnati ai ruoli e non è possibile eliminare tali ruoli. Qualsiasi tentativo di eliminare un ruolo predefinito genererà un messaggio di errore. Tuttavia, è possibile utilizzare i ruoli predefiniti per creare ruoli RBAC personalizzati. Questi ruoli personalizzati possono quindi essere modificati cambiando gli ambiti amministrativi. Ad esempio, è possibile limitare il ruolo alla gestione degli account utente in una determinata unità organizzativa di Active Directory.
I ruoli personalizzati devono essere basati su un modello: un ruolo RBAC esistente. Ad esempio, per creare un ruolo di amministratore delle conferenze telefoniche con accesso esterno, è necessario clonare un ruolo RBAC esistente. È ad esempio possibile basare il ruolo di amministratore di tali conferenze sul ruolo di amministratore dei servizi vocali esistente. Una volta creato il ruolo personalizzato, è possibile utilizzare Set-CsAdminRole per modificarne le proprietà.
Utenti autorizzati a eseguire il cmdlet: per impostazione predefinita, sono autorizzati a eseguire localmente il cmdlet Set-CsAdminRole i membri dei gruppi seguenti: RTCUniversalServerAdmins. Per restituire un elenco di tutti i ruoli RBAC a cui è stato assegnato questo cmdlet, inclusi gli eventuali ruoli RBAC personalizzati creati dall'utente, dal prompt di Windows PowerShell eseguire il comando seguente:
Get-CsAdminRole | Where-Object {$_.Cmdlets –match "Set-CsAdminRole"}
Parametri
Parametro | Obbligatorio | Tipo | Descrizione |
---|---|---|---|
Identity |
Obbligatorio |
Stringa |
L'identificatore univoco per il ruolo RBAC da modificare. L'identità per un ruolo RBAC deve corrispondere a quella di SamAccountName per il gruppo di protezione universale di Active Directory associato a tale ruolo. Ad esempio, il ruolo Help Desk ha un valore Identity uguale a CsHelpDesk e CsHelpDesk è anche il valore SamAccountName del gruppo di sicurezza di Active Directory associato a tale ruolo. |
ConfigScopes |
Facoltativo |
Modificatore elenco PS |
Limita l'ambito del cmdlet alle impostazioni di configurazione nel sito specificato. Per limitare l'ambito del cmdlet a un singolo sito, utilizzare una sintassi analoga alla seguente: -ConfigScopes site:Redmond. Per specificare più siti, utilizzare un elenco separato da virgole: -ConfigScopes "site:Redmond, "site:Dublin". La proprietà ConfigScopes può anche essere impostata su "global". Quando si assegna un valore al parametro ConfigScopes, è necessario utilizzare il prefisso "site:" seguito dal valore della proprietà SiteId del sito. SiteId non corrisponde necessariamente al valore del parametro Identity o DisplayName del sito. Per stabilire il valore SiteId di un determinato sito, è possibile utilizzare un comando analogo al seguente: Get-CsSite "Redmond" | Select-Object SiteId È necessario specificare un valore per una o per entrambe le proprietà ConfigScopes e UserScopes. |
UserScopes |
Facoltativo |
Modificatore elenco PS |
Limita l'ambito del cmdlet alle attività di gestione degli utenti nell'unità organizzativa specificata. Per limitare l'ambito del cmdlet a una singola unità organizzativa, utilizzare una sintassi analoga alla seguente: -UserScopes "OU:ou=Redmond,dc=litwareinc,dc=com". Per specificare più unità organizzative, utilizzare un elenco separato da virgole: -UserScopes "OU:ou=Redmond,dc=litwareinc,dc=com", "OU:ou=Dublin,dc=litwareinc,dc=com". Per aggiungere nuovi ambiti o rimuovere ambiti esistenti da un ruolo, utilizzare la sintassi dei modificatori di elenco di Windows PowerShell. Per informazioni dettagliate, vedere la sezione degli esempi in questo argomento della Guida. È necessario specificare un valore per una o per entrambe le proprietà ConfigScopes e UserScopes. |
Force |
Facoltativo |
Parametro opzionale |
Consente di non visualizzare i messaggi relativi agli errori non irreversibili che possono verificarsi durante l'esecuzione del comando. |
WhatIf |
Facoltativo |
Parametro opzionale |
Descrive ciò che accadrebbe se si eseguisse il comando senza eseguirlo realmente. |
Confirm |
Facoltativo |
Parametro opzionale |
Viene visualizzata una richiesta di conferma prima di eseguire il comando. |
Tipi di input
Nessuno.
Tipi restituiti
Set-CsAdminRole non restituisce alcun oggetto o valore. Il cmdlet piuttosto configura le istanze dell'oggetto Microsoft.Rtc.Management.WritableConfig.Settings.Roles.Role.
Esempio
-------------------------- Esempio 1 ------------------------
Set-CsAdminRole -Identity "RedmondVoiceAdministrators" -UserScopes @{Add="OU:ou=Portland,dc=litwareinc,dc=com"}
Con il comando precedente viene aggiunta una nuova unità organizzativa (Portland) alla proprietà UserScopes del ruolo RBAC RedmondVoiceAdministrators. A tale scopo, nel comando sono inclusi il parametro UserScopes e il seguente valore per il parametro: @{Add="OU:ou=Portland,dc=litwareinc,dc=com"}. Questa sintassi consente di aggiungere l'unità organizzativa con il nome distinto "ou=Portland,dc=litwareinc,dc=com" alle unità organizzative già esistenti nella proprietà UserScopes.
-------------------------- Esempio 2 ------------------------
Set-CsAdminRole -Identity "RedmondVoiceAdministrators" -UserScopes @{Remove="OU:ou=Portland,dc=litwareinc,dc=com"}
Il comando mostrato nell'esempio 2 consente di rimuovere l'unità organizzativa Portland dal ruolo RBAC RedmondVoiceAdministrators. A tale scopo, nel comando sono inclusi il parametro UserScopes e il seguente valore per il parametro: @{Remove="OU:ou=Portland,dc=litwareinc,dc=com"}. Questa sintassi consente di eliminare l'unità organizzativa con il nome distinto "ou=Portland,dc=litwareinc,dc=com" dalla raccolta di unità organizzative già presenti nella proprietà UserScopes.
-------------------------- Esempio 3 ------------------------
Set-CsAdminRole -Identity "RedmondVoiceAdministrators" -ConfigScopes @{Add="site:Redmond"}
Nell'esempio 3 viene aggiunto un nuovo sito (con SiteId Redmond) alla proprietà ConfigScopes per il ruolo RBAC RedmondVoiceAdministrators. A tale scopo, nel comando sono inclusi il parametro ConfigScopes e il seguente valore per il parametro: @{Add="OU:ou=Portland,dc=litwareinc,dc=com"}. Questa sintassi consente di aggiungere il sito Redmond a qualsiasi elemento già presente nella proprietà ConfigScopes.
-------------------------- Esempio 4 ------------------------
Set-CsAdminRole -Identity "RedmondVoiceAdministrators" -ConfigScopes @{Remove="siteRedmond"}
Il comando mostrato nell'esempio 4 rimuove il sito Redmond dal ruolo RBAC RedmondVoiceAdministrators. A tale scopo, nel comando sono inclusi il parametro ConfigScopes e il seguente valore per il parametro: @{Remove="site:Redmond"}. Questo parametro elimina il sito Redmond dalla raccolta di elementi già presenti nella proprietà ConfigScopes. Tale comando avrà esito negativo se il sito Redmond è l'unico sito presente nella proprietà ConfigScopes. Se si ha necessità di rimuovere l'unico sito della proprietà ConfigScopes, è consigliabile utilizzare un comando analogo al seguente, che sostituisce tutti gli elementi di ConfigScopes con la proprietà Global:
Set-CsAdminRole -Identity "RedmondVoiceAdministrators" -ConfigScopes @{Replace="Global"}