New-CsAdminRole
トピックの最終更新日: 2012-03-23
新しい役割ベースのアクセス制御 (RBAC) の役割を作成します。RBAC の役割は、ユーザーに実行を許可する管理タスクを定義し、それらのタスクの実行をユーザーに許可する範囲を指定するために使用します。
構文
New-CsAdminRole -Identity <String> -Template <String> [-ConfigScopes <PSListModifier>] [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-InMemory <SwitchParameter>] [-UserScopes <PSListModifier>] [-WhatIf [<SwitchParameter>]]
解説
役割ベースのアクセス制御 (RBAC) を使用すると、管理者は Microsoft Lync Server 2010 で特定の管理タスクの制御を委任できます。たとえば、組織のヘルプ デスク担当者に完全な管理者特権を付与する代わりに、これらの従業員に次のような非常に限定された権限を付与できます。ユーザー アカウントのみを管理する権限、エンタープライズ VoIP コンポーネントのみを管理する権限、アーカイブと アーカイブ サーバー のみを管理する権限。また、これらの権限の範囲を次のように制限できます。Redmond サイトのみでエンタープライズ VoIP を管理する権限を付与したり、財務組織単位 (OU) にユーザー アカウントがあるユーザーのみを管理する権限を付与したりする。
Lync Server 2010 の RBAC 実装は、Active Directory セキュリティ グループと Windows PowerShell コマンドレットの 2 つの主要な要素に基づいています。Lync Server 2010 をインストールすると、CsAdministrator、CsArchivingAdministrator、CsHelpDesk などの多数のユニバーサル セキュリティ グループが作成されます。これらのユニバーサル セキュリティ グループには RBAC の役割が 1 対 1 対応で設定されています。つまり、CsArchivingAdministrator セキュリティ グループ内のすべてのユーザーは、CsArchivingAdministrator の RBAC の役割に対するすべての権限が付与されます。また、RBAC の役割に付与される権限は、その役割に割り当てられているコマンドレットに基づきます (複数の RBAC の役割にコマンドレットを割り当てることができます)。たとえば、ある役割が次のコマンドレットに割り当てられているとします。
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
上記のリストは、リモートの Windows PowerShell セッション中に仮定の RBAC の役割が割り当てられたユーザーが実行できる、コマンドレットのみを表します。ユーザーが Disable-CsUser コマンドレットを実行しようとすると、そのコマンドは失敗します。仮定の役割が割り当てられているユーザーには、Disable-CsUser を実行できる権限がないためです。このことは、Lync Server コントロール パネル にも同様に当てはまります。たとえば、Lync Server コントロール パネル は RBAC の役割に従うので、アーカイブ管理者は Lync Server コントロール パネル を使用してユーザーを無効にすることができません。Lync Server コントロール パネル でコマンドを実行するたびに、実際に Windows PowerShell コマンドレットを呼び出しています。Disable-CsUser の実行を許可されていない場合、そのコマンドレットを Windows PowerShell から直接実行するのか、または Lync Server コントロール パネル 内から間接的に実行するのかは、問題ではありません (コマンドは失敗します)。
RBAC はリモート管理にのみ適用されることに注意してください。Lync Server 2010 を実行しているコンピューターにログオンして Lync Server 管理シェル を開いた場合、RBAC の役割は適用されません。代わりに、主にセキュリティ グループ RTCUniversalServerAdmins、RTCUniversalUserAdmins、および RTCUniversalReadOnlyAdmins によって、セキュリティが適用されます。
Lync Server 2010 をインストールするときに、セットアップで複数の組み込みの RBAC の役割が作成されます。これらの役割には、音声管理、ユーザー管理、応答グループ管理などの一般的な管理領域が含まれます。これらの組み込みの役割は、どのような方法を使用しても変更できません。役割に対してコマンドレットを追加または削除したり、これらの役割を削除することはできません(組み込みの役割を削除しようとすると、エラーが標示されます)。ただし、組み込みの役割を使用して、カスタムの RBAC の役割を作成できます。これらのカスタムの役割は、管理スコープを変更することによって変更できます。たとえば、特定の Active Directory OU でユーザー アカウントを管理する役割を制限することができます。
新しい役割を作成するには、まず、Active Directory ドメイン サービス (AD DS) 内に役割と同じ名前を使用するユニバーサル セキュリティ グループを作成する必要があります。たとえば、DialInConferencingAdministrator という名前の新しい役割を作成するには、SamAccountName DialInConferencingAdministrator という名前のセキュリティ グループを作成する必要があります。New-CsAdminRole を実行しても、このグループは作成されません。DialInConferencingAdministrator グループが存在しない場合、New-CsAdminRole を呼び出すと、コマンドは失敗します。新しい役割に割り当てる ID は、対応する Active Directory グループの SamAccountName である必要があります。
Active Directory セキュリティ グループを作成した後で、新しいカスタムの役割のテンプレートとして機能する、組み込みの RBAC の役割を選択する必要があります。New-CsAdminRole を使用して、空白の RBAC の役割を作成することはできません。代わりに、すべてのカスタムの役割が、組み込みの RBAC の役割のいずれかに基づいている必要があります。つまり、カスタムの役割には、組み込みの役割のいずれかと同じコマンドレットを割り当てておく必要があります。ただし、Set-CsAdminRole を使用して、このカスタムの役割の管理スコープを変更できます。
このコマンドレットを実行できるメンバー。既定では、次のグループのメンバーが、New-CsAdminRole コマンドレットをローカルで実行することを承認されています。RTCUniversalServerAdmins。このコマンドレットが割り当てられているすべての RBAC の役割の一覧 (自身が作成したカスタムの RBAC の役割を含む) を戻すには、Windows PowerShell プロンプトから次のコマンドを実行します。
Get-CsAdminRole | Where-Object {$_.Cmdlets –match "New-CsAdminRole"}
パラメーター
パラメーター | 必須かどうか | 型 | 説明 |
---|---|---|---|
Identity |
必須 |
文字列 |
作成する RBAC の役割の一意の識別子。RBAC の役割の ID は、その役割に関連付けられている Active Directory ユニバーサル セキュリティ グループの SamAccountName と同じである必要があります。たとえば、ヘルプ デスクの役割の Identity は CsHelpDesk と同じです。CsHelpDesk は、その役割に関連付けられている Active Directory セキュリティ グループの SamAccountName でもあります。 |
Template |
必須 |
文字列 |
作成するカスタムの RBAC の役割のテンプレートとして機能する、組み込みの RBAC の役割の名前。新しい RBAC の役割はすべて、既存の役割に基づいている必要があります。空白 の RBAC の役割 (つまり、コマンドレットが割り当てられていない役割、または ConfigScopes プロパティと UserScopes プロパティのいずれにも値が割り当てられていない役割) を作成することはできません。ただし、カスタムの役割を作成した後で、Set-CsAdminRole コマンドレットを使用して新しい役割のプロパティを変更することができます。 |
ConfigScopes |
省略可能 |
PS リスト修飾子 |
コマンドレットの範囲を、指定のサイト内の構成設定に制限するために使用します。コマンドレットのスコープを 1 つのサイトに制限するには、次のような構文を使用します。-ConfigScopes site:Redmond。複数のサイトを指定するには、次のようなコンマ区切り一覧を使用します。-ConfigScopes "site:Redmond, "site:Dublin"。ConfigScopes プロパティを "global" に設定することもできます。 ConfigScopes パラメーターに値を割り当てる場合、サイトの SiteId プロパティの値の前にプレフィックス "site:" を使用する必要があります。SiteID の値は、サイトの ID や DisplayName と同じであるとは限りません。特定のサイトの SiteId を判断するには、次のようなコマンドを使用します。 Get-CsSite "Redmond" | Select-Object SiteId ConfigScopes および UserScopes プロパティのいずれか (または両方) の値を指定する必要があります。 |
UserScopes |
省略可能 |
PS リスト修飾子 |
コマンドレットの範囲を、指定の組織単位内のユーザー管理作業に制限するために使用します。コマンドレットの範囲を 1 つの組織単位に制限するには、次のような構文を使用します。-UserScopes "OU:ou=Redmond,dc=litwareinc,dc=com"。複数の OU を指定するには、次のようなコンマ区切り一覧を使用します。-UserScopes "OU:ou=Redmond,dc=litwareinc,dc=com", "OU:ou=Dublin,dc=litwareinc,dc=com"。役割に新しいスコープを追加 (または既存のスコープを削除) するには、Windows PowerShell リスト修飾子構文を使用します。詳細については、このヘルプ トピックの「例」セクションを参照してください。 ConfigScopes および UserScopes プロパティのいずれか (または両方) の値を指定する必要があります。 |
Force |
省略可能 |
スイッチ パラメーター |
コマンド実行中に発生する可能性のある、致命的ではないすべてのエラー メッセージを表示しないようにします。 |
InMemory |
省略可能 |
スイッチ パラメーター |
永続的な変更としてオブジェクトをコミットせずに、オブジェクト参照を作成します。このパラメーターを指定して呼び出したコマンドレットの出力を変数に割り当てる場合、オブジェクト参照のプロパティを変更し、コマンドレットに対応する Set- コマンドレットを呼び出してそれらの変更をコミットできます。 |
WhatIf |
省略可能 |
スイッチ パラメーター |
実際にコマンドを実行せずに、コマンドの実行結果がわかります。 |
Confirm |
省略可能 |
スイッチ パラメーター |
コマンドの実行前に確認メッセージを表示します。 |
入力の種類
なし。
戻り値の種類
New-CsAdminRole を実行すると、Microsoft.Rtc.Management.WritableConfig.Settings.Roles.Role オブジェクトの新しいインスタンスが作成されます。
例
-------------------------- 例 1 ------------------------
New-CsAdminRole -Identity "RedmondVoiceAdministrator" -Template "CsVoiceAdministrator"
例 1 のコマンドで、CsVoiceAdministrator という RBAC の役割を複製します。追加パラメーターを指定しないため、新しい役割 RedmondVoiceAdministrators は、CsVoiceAdministrator とまったく同じ複製になり、"global" に設定された UserScopes プロパティと ConfigScopes プロパティの両方が含まれます。
-------------------------- 例 2 ------------------------
New-CsAdminRole -Identity "RedmondVoiceAdministrator" -Template "CsVoiceAdministrator" -UserScopes "OU:ou=Redmond,dc=litwareinc,dc=com"
上記のコマンドは、新しい RBAC の役割 (RedmondVoiceAdministrator) を作成し、1 つのユーザー スコープ (Redmond OU) を許可するよう、その役割を構成します。これを行うために、UserScopes パラメーターを使用して次のパラメーター値を指定します。"OU:ou=Redmond,dc=litwareinc,dc=com"。このパラメーター値で、UserScopes プロパティの現在の値を "ou=Redmond,dc=litwareinc,dc=com" という識別名 (DN) を持つ OU に置き換えます。
-------------------------- 例 3 ------------------------
New-CsAdminRole -Identity "RedmondVoiceAdministrator" -Template "CsVoiceAdministrator" -UserScopes "OU:ou=Redmond,dc=litwareinc,dc=com","OU:ou=Portland,dc=litwareinc,dc=com"
例 3 のコマンドは、例 2 のコマンドの変化形です。唯一異なるのは、この例では 2 つの OU を UserScopes プロパティに追加している点です。コンマ区切り一覧を Replace メソッドに割り当てることで、これを行っています。一覧の 2 つの項目は、新しい RBAC の役割に割り当てる 2 つの OU (Redmond と Portland) の識別子を表します。
-------------------------- 例 4 ------------------------
New-CsAdminRole -Identity "RedmondVoiceAdministrator" -Template "CsVoiceAdministrator" -ConfigScopes "site:Redmond"
例 4 では、SiteId Redmond を持つサイトを新しい RBAC の役割の ConfigScopes プロパティに割り当てます。ConfigScopes プロパティの構文では、追加するサイトの SiteId プロパティの値の前にプレフィックス "site:" を使用する必要があります。