あ、ところで、ここをご覧になっているみなさんはActiveDirectoryにおける「グループ」と「OU」について理解していますでしょうか。
ただ適当にアカウントを突っ込んでおく箱ではないんですよ。私もなんとなくしか知りませんで構築するようになって知りました。

簡単に補足すると、「OU」は、グループポリシーの適用先として使用されます。つまりグループポリシーを作ってユーザーに適用したい場合は、OUという箱にユーザーアカウントを格納し、そのOUに対して、適用したグループポリシーをリンク付けしてはじめて適用されます。

そして「グループ(セキュリティグループ)」は、アクセス権で使用されます。
OUのように箱に格納ではなく、ユーザーアカウントをそろぞれグループに参加させるのですね。そのグループをファイルサーバの共有フォルダのアクセス権設定で、そのグループをフルコントロールなり、読み取り権限なりを定義することで、そのグループに参加しているユーザーが、共有フォルダを利用できるようになります。
実際はユーザーアカウント単位でもアクセス権設定は可能ですが、ここに来る、コマンドで管理したいっていう管理者の皆様としては、おそらく100人以上超えるユーザーやたくさん組織を管理しているであろうから、グループ単位で管理するメリットはありますよね。

さあそれでは、ここを抑えてしまったならば、あとは下に記載しているコマンドリファレンスを見れば解説は不要ですね。

 

始める前にここでのルールと心の準備
・リモートデスクトップでサーバに、Administratorでログインしてください。以下で説明する作業は全てドメインサーバ上で実施します。
・ドメイン名は「amachan.local」として説明をしていますので、適宜みなさんのドメイン名に置き換えてくださいね。コマンドやテキストを編集する際は、「cn=amachan,dc=local」の箇所ですね。 
・なぜテキストなんだ?エクセルでねーの?えっとーエクセルで書いてコマンドで読ませるためにタブや空白区切りでcsvやテキストに吐くとダブルクォーテーションつくんですね。
ようは,カンマ区切り文字を1セル内に記載するとダブルクォーテーション""がもれなく付いてくる。
そんでもって、それを外す作業ってのをやるんだったら、最初っからテキストに書いても同じじゃね?ってことです。さーせん。
・コマンドを間違ったって、結果中途半端にアカウントは登録されず”失敗”と返されます。やり直しが可能なので、どこで間違ったのか、コマンド結果を見て、冷静になってリラックスして再チャレンジしてくださいね。(私の間違いでしたら優しく優しくフィードバックをいただければ幸いですw) 


(1)アカウント登録手順(コマンド操作)

1. サクラエディタとかで以下カラムをコピペして、適宜修正してください。 
▲はタブ区切りに置換してくださいね。
ou=OU名,cn=amachan,dc=local▲ユーザーアカウント▲パスワード▲氏名▲cn=グループ名,cn=Users,dc=amachan,dc=local


2.  上記のとおり、カラム間をタブで区切ったサンプルが記載されています。
このサンプルを登録するアカウント分だけ、コピーしてください。
下記の実行コマンドにより、テキストの中身を上から行単位で読み取るためのデータを作成します。
  
3. 次にコピーした行の各カラムの“太字箇所”にデータを入力します。
 上記のサンプルをみて、赤字の箇所についてユーザー情報を編集入力してください。
 
・1列はユーザーが所属するOU名を入力します。
・2列に「ユーザーアカウント」を入力します。(例:t-amachan)
・3列は初期パスワードであるため入力不要。
・4列にログインの際に画面に表示されるユーザーの「漢字氏名」を入力します。(例:あまちゃん花子
・5列は「グループ名」を入力します。※グループに参加しない場合、「cn=グループ名,」の箇所を削除してください。


4. 入力が完了したらテキストファイルを保存します。

C:\ dsadduser.txt



5. コマンドプロンプトより、以下のコマンドを実行する。
※以下の枠の中のコマンドをコピーして実行してください。
for /f "tokens=1-5" %A in (C:\dsadduser.txt) do dsadd user "cn=%B,%A" -display "%D" -pwd %C -memberof "%E" -mustchpwd yes



6. コマンドが終了したら、各実行結果を確認して成功していることを確認します。
 

※もし失敗した場合、コマンドの実行結果にて失敗理由も表示されるので、対象ユーザーの設定情報を見直して、1~5の手順を再度実施してください。(成功したユーザーの情報は2重登録で失敗となるためはずしてください。)

以上


(2)グループへのユーザーアカウント追加手順(コマンド操作)

1. サクラエディタとかで以下カラムをコピペして、適宜修正してください。
▲はタブ区切りに置換してくださいね。
CN=Users,DC=amachan,DC=local ▲グループ名ユーザーアカウント▲CN=OU名,DC=amachan,DC=local



2. 上記カラム間をタブで区切ったサンプルが記載されていますので、このサンプルを登録するアカウント分だけ、コピーしてください。
後述のコマンドにより、上から行単位で読み取られるデータを作成します。



3. ユーザー分の行コピーが完了したら、“太字箇所”にデータを入力します。
 上記のサンプルをみて、赤字の箇所についてユーザー情報を編集入力してください。

・1列はオブジェクトの規定の格納場所で入力不要。
・2列に「グループ名」を入力します。(例:営業部)
・3列に「ユーザーアカウント」を入力します。
・4列にユーザーアカウントが所属する「OU名」を入力します。



4. 入力が完了したらテキストファイルを保存します
  C:\ dsaddgroup.txt



5. コマンドプロンプトより、以下のコマンドを実行します。
 ※以下の枠の中のコマンドをコピーして実行してください。
for /f "tokens=1-4" %A in (C:\ dsaddgroup.txt) do dsmod group "CN=%B,%A" -addmbr "CN=%C,%D"



6. コマンドが終了したら、各実行結果を確認して成功していることを確認します。
※もし失敗した場合、コマンドの実行結果にて失敗理由も表示されるので、
対象ユーザーの設定情報を見直して、1~4の手順を再度実施してください。
(成功したユーザーの情報は2重登録で失敗となるためはずしてください。)



7. 他のグループに対してもユーザーを追加したい場合は、上記1~5の手順を繰り返してください。



(3)グループへのユーザーアカウント削除手順(コマンド操作)

(2)の削除のコマンドを置換するだけです。太字箇所が違うだけですね。
 ・ファイル名については適宜変更してください。(2)章と同じカラムの並びとなります。
 ・削除の引数は"-rmmbr "です。ただそれだけの違いですね。
for /f "tokens=1-4" %A in (C:\ dsrmgroup.txt) do dsmod group "CN=%B,%A" -rmmbr "CN=%C,%D"





🌟ちょっとでもあなたの仕事に役立つページであったなら、ここをクリックしてくれるとまた頑張れるんだ。


それでは、さよなら。さよなら。