Set-CsAdminRole
Dernière rubrique modifiée : 2012-03-26
Modifie un rôle RBAC (Contrôle d’accès basé sur un rôle) existant. Les rôles de contrôle d’accès basé sur un rôle (RBAC) sont utilisés pour spécifier les tâches de gestion que les utilisateurs peuvent réaliser, et pour déterminer l’étendue dans laquelle les utilisateurs sont en mesure de réaliser ces tâches.
Syntaxe
Set-CsAdminRole -Identity <String> [-ConfigScopes <PSListModifier>] [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-UserScopes <PSListModifier>] [-WhatIf [<SwitchParameter>]]
Description détaillée
Le contrôle d’accès basé sur un rôle (RBAC) permet aux administrateurs de déléguer le contrôle de certaines tâches de gestion dans Microsoft Lync Server 2010. Par exemple, au lieu d’octroyer au personnel du support technique de l’organisation des privilèges d’administrateur complets, vous pouvez lui donner des droits très spécifiques : le droit de gérer uniquement des comptes d’utilisateurs, le droit de gérer uniquement des composants Enterprise Voice et le droit de gérer uniquement l’archivage et le serveur d’archivage. De plus, l’étendue de ces droits peut être limitée : une personne peut avoir le droit de gérer Enterprise Voice, mais uniquement sur le site de Redmond ; une autre personne peut avoir le droit de gérer les utilisateurs, mais uniquement les comptes des utilisateurs dans l’unité d’organisation Finance.
L’implémentation du contrôle RBAC dans Lync Server 2010 repose sur deux éléments clés : les groupes de sécurité Active Directory et les cmdlets Windows PowerShell. Lorsque vous installez Lync Server 2010, certains groupes universels de sécurité sont créés pour vous, notamment les groupes CsAdministrator, CsArchivingAdministrator et CsViewOnlyAdministrator. Ces groupes universels de sécurité disposent d’une correspondance exacte avec des rôles RBAC, ce qui signifie que tous les utilisateurs du groupe de sécurité CsArchivingAdministrator bénéficient des droits octroyés au rôle RBAC CsArchivingAdministrator. À leur tour, les droits octroyés à un rôle RBAC sont fondés sur les cmdlets affectées à ce rôle (les cmdlets peuvent être affectées à plusieurs rôles RBAC). Par exemple, imaginons que les cmdlets suivantes aient été affectées à un rôle :
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
La liste ci-dessus répertorie uniquement les cmdlets qu’un utilisateur affecté à un rôle RBAC hypothétique peut exécuter dans une session Windows PowerShell distante. Si l’utilisateur tente d’exécuter la cmdlet Disable-CsUser, cette commande échouera étant donné que les utilisateurs auxquels le rôle hypothétique a été affecté n’ont pas le droit d’exécuter Disable-CsUser. Ceci s’applique également au Panneau de configuration Lync Server. Par exemple, un administrateur d’archivage ne peut pas désactiver un utilisateur à l’aide du Panneau de configuration Lync Server puisque le Panneau de configuration Lync Server est conforme aux rôles RBAC. Chaque fois que vous exécutez une commande dans le Panneau de configuration Lync Server, vous appelez en fait une cmdlet Windows PowerShell. Si vous n’êtes pas autorisé à exécuter Disable-CsUser, peu importe si vous exécutez directement cette cmdlet depuis Windows PowerShell ou si vous l’exécutez indirectement la cmdlet depuis le Panneau de configuration Lync Server : cette commande échouera.
Notez que le contrôle d’accès basé sur un rôle (RBAC) ne s’applique qu’à la gestion à distance. Si vous êtes connecté à un ordinateur équipé de Lync Server 2010 et ouvrez Lync Server Management Shell, les rôles RBAC ne sont pas appliqués. Au lieu de cela, la sécurité est principalement renforcée par le biais des groupes de sécurité RTCUniversalServerAdmins, RTCUniversalUserAdmins et RTCUniversalReadOnlyAdmins.
Lorsque vous installez Lync Server 2010, le programme d’installation crée plusieurs rôles RBAC intégrés couvrant des tâches administratives courantes, telles que l’administration de la voix, la gestion des utilisateurs et l’administration Response Group. Ces rôles intégrés ne peuvent en aucune manière être modifiés : vous ne pouvez pas ajouter des cmdlets aux rôles ou en supprimer, et vous ne pouvez pas supprimer ces rôles. (Toute tentative de suppression d’un rôle intégré aboutira à un message d’erreur.) Toutefois, vous pouvez utiliser les rôles intégrés pour créer des rôles RBAC personnalisés. Ces rôles personnalisés peuvent être modifiés en modifiant les étendues d’administration. Par exemple, il est possible de limiter le rôle de gestion des comptes d’utilisateurs à une unité d’organisation Active Directory en particulier.
Tout rôle personnalisé que vous créez doit être basé sur un modèle : un rôle RBAC existant. Par exemple, pour créer un rôle d’administrateur de conférence rendez-vous, vous devez efficacement « cloner » un rôle RBAC existant (par exemple, vous pourriez baser le rôle d’administrateur de conférence rendez-vous sur le rôle d’administrateur de voix existant). Après avoir créé le rôle personnalisé, vous pouvez ensuite utiliser la cmdlet Set-CsAdminRole pour modifier les propriétés de ce nouveau rôle.
Personnes autorisées à exécuter cette cmdlet : Par défaut, les membres des groupes qui suivent sont autorisés à exécuter localement la cmdlet Set-CsAdminRole : RTCUniversalServerAdmins. Pour retourner une liste de tous les rôles RBAC (Contrôle d’accès basé sur un rôle) auxquels cette cmdlet a été affectée (y compris les rôles RBAC personnalisés créés par vos soins), exécutez la commande suivante à l’invite Windows PowerShell :
Get-CsAdminRole | Where-Object {$_.Cmdlets –match "Set-CsAdminRole"}
Paramètres
Paramètre | Obligatoire | Type | Description |
---|---|---|---|
Identity |
Obligatoire |
Chaîne |
Identificateur unique du rôle RBAC à modifier. L’identité du rôle RBAC doit être identique au SamAccountName du groupe universel de sécurité Active Directory associé à ce rôle. Par exemple, l’identité du rôle Help Desk (support technique) est égale à CsHelpDesk. CsHelpDesk est également le SamAccountName du groupe de sécurité Active Directory associé à ce rôle. |
ConfigScopes |
Facultatif |
Modificateur de liste PS |
Limite l’étendue de la cmdlet aux paramètres de configuration dans le site spécifié. Pour limiter l’étendue de la cmdlet à un seul site, utilisez une syntaxe semblable à ceci : -ConfigScopes site:Redmond. Plusieurs sites peuvent être spécifiés sous la forme d’une liste de valeurs séparées par des virgules. -ConfigScopes "site:Redmond, "site:Dublin". Vous pouvez également définir la propriété ConfigScopes sur « global ». Lorsque vous affectez une valeur au paramètre ConfigScopesn vous devez utiliser le préfixe « site: » suivi de la valeur de la propriété SiteId du site. La valeur SiteId n’est pas nécessairement identique à la valeur Identity ou la valeur DisplayName du site. Pour déterminer la valeur SiteId d’un site donné, vous pouvez recourir à une commande semblable à celle-ci : Get-CsSite "Redmond" | Select-Object SiteId Vous devez spécifier une valeur pour l’une des propriétés (ou les deux) ConfigScopes et UserScopes. |
UserScopes |
Facultatif |
Modificateur de liste PS |
Limite l’étendue de la cmdlet aux activités de gestion des utilisateurs au sein de l’unité d’organisation spécifiée. Pour limiter l’étendue de la cmdlet à une seule unité d’organisation, utilisez une syntaxe semblable à celle-ci : -UserScopes "OU:ou=Redmond,dc=litwareinc,dc=com". Plusieurs unités d’organisation peuvent être spécifiées sous la forme d’une liste de valeurs séparées par des virgules. -UserScopes "OU:ou=Redmond,dc=litwareinc,dc=com", "OU:ou=Dublin,dc=litwareinc,dc=com". Pour ajouter de nouvelles étendues (ou supprimer des étendues existantes) dans un rôle, utilisez la syntaxe du modificateur de liste Windows PowerShell. Pour plus d’informations, consultez la section Exemples de cette rubrique. Vous devez spécifier une valeur pour l’une des propriétés (ou les deux) ConfigScopes et UserScopes. |
Force |
Facultatif |
Paramètre de commutateur |
Supprime l’affichage de tous les messages d’erreur récupérable susceptibles d’apparaître lors de l’exécution de la commande. |
WhatIf |
Facultatif |
Paramètre de commutateur |
Décrit ce qui se passe si vous exécutez la commande sans l’exécuter réellement. |
Confirm |
Facultatif |
Paramètre de commutateur |
Vous demande confirmation avant d’exécuter la commande. |
Types d’entrées
Aucun.
Types de retours
Set-CsAdminRole ne retourne ni valeur ni objet. Au lieu de cela, la cmdlet configure les instances de l’objet Microsoft.Rtc.Management.WritableConfig.Settings.Roles.Role.
Exemple
-------------------------- Exemple 1 ------------------------
Set-CsAdminRole -Identity "RedmondVoiceAdministrators" -UserScopes @{Add="OU:ou=Portland,dc=litwareinc,dc=com"}
La commande ci-dessus ajoute une nouvelle unité d’organisation (Portland) à la propriété UserScopes pour le rôle RBAC RedmondVoiceAdministrators. Pour cela, la commande inclut le paramètre UserScopes avec la valeur suivante : @{Add="OU:ou=Portland,dc=litwareinc,dc=com"}. Cette syntaxe ajoute l’unité d’organisation avec le nom unique « ou=Portland,dc=litwareinc,dc=com » aux unités d’organisation figurant déjà dans la propriété UserScopes.
-------------------------- Exemple 2 ------------------------
Set-CsAdminRole -Identity "RedmondVoiceAdministrators" -UserScopes @{Remove="OU:ou=Portland,dc=litwareinc,dc=com"}
La commande présentée dans l’exemple 2 supprime l’unité d’organisation Portland du rôle RBAC RedmondVoiceAdministrators. Pour cela, la commande inclut le paramètre UserScopes avec la valeur suivante : @{Remove="OU:ou=Portland,dc=litwareinc,dc=com"}. Cette syntaxe supprime l’unité d’organisation avec le nom unique « ou=Portland,dc=litwareinc,dc=com » de la collection des unités d’organisation qui figurent déjà dans la propriété UserScopes.
-------------------------- Exemple 3 ------------------------
Set-CsAdminRole -Identity "RedmondVoiceAdministrators" -ConfigScopes @{Add="site:Redmond"}
Dans l’exemple 3, un nouveau site (doté de la valeur SiteId Redmond) est ajouté à la propriété ConfigScopes pour le rôle RBAC RedmondVoiceAdministrators. Pour cela, la commande inclut le paramètre ConfigScopes avec la valeur suivante : @{Add="OU:ou=Portland,dc=litwareinc,dc=com"}. Cette syntaxe ajoute le site Redmond à tous les éléments déjà inscrits dans la propriété ConfigScopes.
-------------------------- Exemple 4 ------------------------
Set-CsAdminRole -Identity "RedmondVoiceAdministrators" -ConfigScopes @{Remove="siteRedmond"}
La commande présentée dans l’exemple 4 supprime le site Redmond du rôle RBAC RedmondVoiceAdministrators. Pour cela, la commande inclut le paramètre ConfigScopes avec la valeur suivante : @{Remove="site:Redmond"}. Ce paramètre supprime le site Redmond de la collection des éléments déjà inscrits dans la propriété ConfigScopes. Notez que cette commande échouera si le site Redmond est le seul site répertorié dans la propriété ConfigScopes. Si vous supprimez le seul site que contient la propriété ConfigScopes, vous devez recourir à une commande semblable à celle-ci pour remplacer tous les élements dans ConfigScopes à l’aide de la propriété Global :
Set-CsAdminRole -Identity "RedmondVoiceAdministrators" -ConfigScopes @{Replace="Global"}