Active Directoryのユーザを一括で部署異動したい
キーワード:Active Directory,グループ,一括
概要
Active Directoryグループ内のユーザの所属グループを一括で変更したい場合、Active Directoryアダプタのグループ所属メンバ登録/更新/削除処理を使用します。サンプルプロジェクトの説明
CSVファイル「異動情報一覧」にしたがってActive Directoryに一括変更を行います。「異動情報一覧」のアカウント名について、異動前のグループから削除を行ったあと、異動後のグループに追加を行います。
実行イメージ
処理実行前
|
処理実行後
|
|

処理の流れ
サンプルプロジェクトの処理の流れは以下の通りです。- 「CSVファイル読み取り処理」で「異動情報一覧」を読み取ります。
- 「繰り返し(データ件数)処理」で入力データの件数分、以下の処理を繰り返します。
- 「変数代入処理」で、Active Directoryのユーザ識別名を作成し、異動情報をスクリプト変数に代入します。
- 「グループ所属メンバ登録/更新/削除処理」でユーザを異動前のグループから削除します。
- 「グループ所属メンバ登録/更新/削除処理」でユーザを異動後のグループに追加します。

ポイントとなる機能
名前 | 説明 | ツールパレット上の場所 |
---|---|---|
グループ所属メンバ登録/更新/削除処理 | 入力データをもとに、指定したグループの所属メンバを登録/更新/削除します。 | 「ディレクトリサービス」-「Active Directory」-「グループ所属メンバ登録/更新/削除」 |
処理のポイント
グループ所属メンバ登録/更新/削除処理に設定する識別名は、Active Directoryから取得できる識別名(distinguishedName)を指定してください。- 例: CN=TEST_USER,OU=Users,DC=ad,DC=local


サンプルプロジェクトの使用方法
上記処理を実装したサンプルプロジェクトを用意しています。サンプルプロジェクトを使用する場合の手順は、以下の通りです。サンプルプロジェクトのダウンロード | 逆引きリファレンス シナリオ081のサンプルプロジェクト |
---|
- サンプルプロジェクトの展開
サンプルプロジェクトファイル「rl_reference_081.zip」を展開します。 - プロジェクトのアップロード
「rl_reference_081.zip」を展開後に作成される「rl_reference_081プロジェクト」ディレクトリがプロジェクトファイルとなります。
DataSpider Studioを起動し、マイプロジェクトの画面から[ファイル]-[ローカルからアップロード]で展開したディレクトリ「rl_reference_081プロジェクト」をアップロードしてください。 - サンプルデータの準備
「rl_reference_081.zip」を展開後に作成される「samples」ディレクトリがサンプルデータとなります。
$DATASPIDER_HOME/server/samplesディレクトリに上書きしてください。 - グローバルリソースの設定
コントロールパネルの[グローバルリソースの設定]から、[新しいグローバルリソースの追加]を選択し、Active Directoryのグローバルリソースを追加します。
グローバルリソースの設定方法については、DataSpider Servistaヘルプの「グローバルリソースのプロパティ」を参照してください。
スクリプトの作成手順

- グループ所属メンバ登録/更新/削除処理の処理対象として使用するスクリプト変数を作成します。
- スクリプト変数のプロパティは、以下のように設定します。
スクリプト変数のプロパティ
変数名 変数型 初期値 ユーザー識別名 文字列型 異動前グループ名 文字列型 異動前組織名 文字列型 異動後グループ名 文字列型 異動後組織名 文字列型
- スクリプト変数のプロパティは、以下のように設定します。
- デザイナのツールパレット「ファイル」-「CSV」-「CSVファイル読み取り」から、CSVファイル読み取り処理をスクリプトキャンバスに配置します。
- CSVファイル読み取り処理の設定は、以下のように行います。
[必須設定]タブ
- CSVファイル読み取り処理の設定は、以下のように行います。
- デザイナのツールパレット「基本」-「フロー」-「繰り返し(データ件数)」から、繰り返し(データ件数)処理をスクリプトキャンバスに配置します。
- 繰り返し(データ件数)処理の設定は、以下のように行います。
[必須設定]タブ
- 繰り返し(データ件数)処理の設定は、以下のように行います。
- デザイナのツールパレット「基本」-「処理」-「変数代入」から、変数代入処理をスクリプトキャンバスに配置します。
- 変数代入処理のMapperエディタを開き、Active Directoryのユーザ識別名を作成し、異動情報をスクリプト変数に代入します。
- マッピングキャンバスは、以下のように設定します。
マッピングキャンバス
番号 ロジック名 説明 ツールパレット上の場所 (1) 単一行文字列定数 単一行文字列定数を出力します。
[必須設定]タブの[一行文字列]には「CN=」と入力します。「文字列」-「基本」-「単一行文字列定数」 (2) 単一行文字列定数 単一行文字列定数を出力します。
[必須設定]タブの[一行文字列]には「,CN=Users,DC=ad2012-qa,DC=local」と入力します。「文字列」-「基本」-「単一行文字列定数」 (3) 連結 複数の入力文字列を連結して返します。
[必須設定]タブの[入力数]には「3」と入力します。「文字列」-「演算」-「連結」
処理のポイント
- Active Directoryのユーザ識別名を作成します。
識別名の詳細については、Active Directoryのドキュメントを参照してください。
- Active Directoryのユーザ識別名を作成します。
- マッピングキャンバスは、以下のように設定します。
- デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理(「mapping」)をスクリプトキャンバスに配置します。
- デザイナのツールパレット「ディレクトリサービス」-「Active Directory」-「グループ所属メンバ登録/更新/削除」から、グループ所属メンバ登録/更新/削除処理をスクリプトキャンバスに配置します。
- グループ所属メンバ登録/更新/削除処理の設定は、以下のように行います。
[必須設定]タブ
処理のポイント
- 入力スキーマのメンバを異動前の組織およびグループから削除するため、[処理方法]は[差分削除]を選択します。
- グループ所属メンバ登録/更新/削除処理の設定は、以下のように行います。
- マッピング処理(「mapping」)のMapperエディタを開き、ユーザ識別名をグループ所属メンバ登録/更新/削除処理の入力スキーマにマッピングする処理を作成します。
- マッピングキャンバスは、以下のように設定します。
マッピングキャンバス
- マッピングキャンバスは、以下のように設定します。
- デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理(「mapping(1)」)をスクリプトキャンバスに配置します。
- デザイナのツールパレット「ディレクトリサービス」-「Active Directory」-「グループ所属メンバ登録/更新/削除」から、グループ所属メンバ登録/更新/削除処理をスクリプトキャンバスに配置します。
- グループ所属メンバ登録/更新/削除処理の設定は、以下のように行います。
[必須設定]タブ
処理のポイント
- 入力スキーマのメンバを異動後の組織およびグループに追加するため、[処理方法]は[差分追加]を選択します。
- グループ所属メンバ登録/更新/削除処理の設定は、以下のように行います。
- マッピング処理(「mapping(1)」)のMapperエディタを開き、ユーザ識別名をグループ所属メンバ登録/更新/削除処理の入力スキーマにマッピングする処理を作成します。
- マッピングキャンバスは、以下のように設定します。
マッピングキャンバス
- マッピングキャンバスは、以下のように設定します。
- スクリプトを実行し、正常終了すれば成功です。