今週は、グループにメンバを追加、あるいは削除する際の手順について解説する。それと関連して、グループの追加とメンバの追加を同時に行う際のコマンド操作についても取り上げる。

グループのメンバ変更(管理ツール編)

グループに、ユーザーアカウントなどのオブジェクトを追加、あるいは削除する際の基本は、[Active Directoryユーザーとコンピュータ]管理ツールを使用する方法だ。手順は以下のようになる。

  1. [Active Directoryユーザーとコンピュータ]管理ツールを起動する。

  2. 左側のツリー画面で、目的のグループがある場所(ドメイン、OUまたはコンテナ)を選択する。

  3. 右側の一覧で、目的のグループをダブルクリックするか、[操作]-[プロパティ]、あるいは右クリックして[プロパティ]を選択する。

  4. メンバを追加するには、続いて表示するダイアログの[メンバ]タブで[追加]をクリックする。

グループのプロパティ画面には4枚のタブがあるが、メンバの追加・削除は[メンバ]タブで行う

  1. 続いて表示するダイアログで、グループに追加するユーザーアカウントを指定して[OK]をクリックする。この操作を、必要なだけ繰り返す。ユーザーアカウント名を手作業で入力するときには、「<ドメイン名>\<ユーザー名>」形式で記述する。このとき、半角のセミコロンで区切って複数を列挙することもできる。

  2. メンバを削除するには、[メンバ]タブの一覧で削除したいオブジェクトを選択して、[削除]をクリックする。

  3. 「4.」-「6.」の操作によって、グループのメンバが意図した内容になったら、最後に[OK]をクリックして設定を確定させる。

グループのメンバ追加・削除(コマンド編)

続いて、コマンド操作によるメンバの追加/削除について解説しよう。追加のときと同様、ドメイングローバルグループはnet groupコマンド、ドメインローカルグループはnet localgroupコマンドを使用する。いずれも、グループ名、追加/削除したいメンバ、「/add」(追加の場合)あるいは「/delete」(削除の場合)を、スペースで区切って列挙すればよい。メンバについては、スペースで区切って複数を列挙することもできる。

以下に、net groupコマンドによるドメイングローバルグループの追加/削除例を示す。net localgroupコマンドも、コマンド名が異なる以外は同じ使い方になる。

ユーザー「kojii」をSales_RWグループのメンバに追加

net group Sales_RW kojii /add

ユーザー「kojii」をSales_RWグループのメンバから削除する

net group Administrators kojii /delete

ユーザー「kojii」「keikoo」「yukikoh」をSales_RWグループのメンバに追加

net group Sales_RW kojii keikoo yukikoh /add

また、dsmod groupコマンドを使用する方法もある。このコマンドの特徴は、個別のオブジェクトごとに追加/削除を指定できるだけでなく、一度にメンバの総入れ替えを行える点にある。

メンバの追加/削除を行う場合、対象になるグループのLDAP識別名、「-addmbr」(追加の場合)あるいは「-rmmbr」(削除の場合)、追加/削除の対象となるオブジェクトのLDAP識別名を、それぞれスペースで区切って列挙する。追加/削除の対象となるオブジェクトはスペースで区切って複数を列挙できるが、LDAP識別名を使用すると記述が長くなる難点がある。

ドメイン「ad-domain.company.local」内のコンテナ「Users」に配置したグループ「Domain Admins」に、ドメイン「ad-domain.company.local」内のコンテナ「Users」に配置したユーザー「kojii」を追加

dsmod group "cn=Domain Admins,cn=Users,dc=ad-domain,dc=company,dc=local" -addmbr cn=kojii,cn=Users,dc=ad-domain,dc=company,dc=local

ドメイン「ad-domain.company.local」内のOU「Tokyo」に配置したグループ「Sales_RW」から、ドメイン「ad-domain.company.local」内のOU「Tokyo」に配置したユーザー「keikoo」を削除する

dsmod group cn=Sales_RW,ou=Users,dc=ad-domain,dc=company,dc=local -rmmbr cn=keikoo,ou=Tokyo,dc=ad-domain,dc=company,dc=local

前者の実行例ではグループ名がスペースを含んでいるため、LDAP識別名全体を引用符で囲んでいる点に留意されたい。

また、引数「-chmbr」を使うとメンバの総入れ替えを行える。コマンド実行の時点で所属していたメンバをすべて削除して、引数「-chmbr」の後にスペースで区切って列挙したオブジェクトだけをメンバとして追加し直す操作になる。以下に実行例を示す。

ドメイン「ad-domain.company.local」内のOU「Tokyo」に配置したグループ「Sales_RW」のメンバをすべて削除して、ドメイン「ad-domain.company.local」内のOU「Tokyo」に配置したユーザー「keikoo」と「kojii」を追加

dsmod group cn=Sales_RW,ou=Users,dc=ad-domain,dc=company,dc=local -chmbr cn=keikoo,ou=Tokyo,dc=ad-domain,dc=company,dc=local cn=kojii,ou=Tokyo,dc=ad-domain,dc=company,dc=local

最後に、dsadd groupコマンドでグループを追加すると同時にメンバまで指示してしまうコマンド操作の例を示す。引数「-member」と追加するメンバを、スペースで列挙する点がポイントだ。

ドメイン「ad-domain.company.local」内のコンテナ「Users」に、ドメイングローバルグループ「Sales_RW」を作成して、メンバにコンテナ「Users」内のユーザー「kojii」を追加

dsadd group cn=Sales_RW,cn=Users,dc=ad-domain,dc=company,dc=local -scope g -member cn=kojii,cn=users,dc=ad-domain,dc=company,dc=local

ドメイン「ad-domain.company.local」内のOU「Tokyo」に、ドメインローカルグループ「Sales_RW」を追加して、メンバにOU「Tokyo」内のユーザー「keikoo」を追加

dsadd group cn=Sales_RW,ou=Tokyo,dc=ad-domain,dc=company,dc=local -scope l -member cn=keikoo,ou=Tokyo,dc=ad-domain,dc=company,dc=local