ID同期を行う – 管理エージェント作成編 (1)

 
ここからは、いよいよID同期編です。
FIM2010でサポートされる(予定の)ディレクトリ/データベースは非常に多岐にわたっており、
Active DirectoryやSQL Serverデータベースはもちろん、CSVファイルなどのテキストファイルや
Oracleデータベース、SunONEディレクトリ、Lotus Notesなど、さまざまなベンダーに対応しています。
 
しかし、Tech・Edでは純粋なID同期とプロビジョニングを見てもらおうと思っているので、
・ CSVファイルで従業員情報を所有しているとき、
・ FIM2010を使って、
・ Active Directory ドメインサービスにIDを同期する。
というシンプルな手順をベースに、さまざまなシナリオを紹介する予定です。
 
ということで、
今回から数回にわたって、CSVファイル→Active Directoryの同期手順を紹介します。
ID同期のエンジンには、ILM Synchronization Serviceというコンポーネントを使いますが、
ユーザーインターフェイスには「Identity Management」という、MIIS/ILM2007時代から
おなじみの管理ツールを使います。
ですので、以前のバージョンからご存知の方は、
「管理エージェントを作って、属性のマッピングを設定して、同期すればいいんでしょ」と思い浮かべるかもしれません。
もちろん、その方法も互換性のためにサポートされているのですが、
FIM2010では、従来のやり方とは異なる方法を標準的な運用方法としています。
この図はFIM2010での同期フローを表したものです。
 
 
大ざっぱに説明すると、
CSVファイルから直接ADに同期するのではなく、MSILMデータベースを経由して同期を行います。
もう少し細かく説明すると、
1.CSVファイルで用意されたID情報をコネクタスペース(以下、CS)と呼ばれる領域へのデータの移動
2.CSからメタバース(以下、MV)と呼ばれる領域へのデータの移動
3.MVからMSILMデータベースのCSへのデータの移動
4.CSからMSILMデータベースへのデータの移動
5.MSILMデータベースからCSへのデータの移動
6.MSILMデータベースのCSからMVへのデータの移動
7.MVからAD用CSへのデータの移動
8.CSからADへのデータの移動
というプロセスでID同期が行われます。
 これがFIM2010での標準的なID同期方法になります。
 
この一連の処理を行うときに、CSVファイルやADなどの各種ディレクトリとFIM2010のCSやMVの間の
接続を担当するのが、管理エージェントになります。管理エージェントはディレクトリごとにそのコンポーネントが
用意され、同期のコマンドを実行すると、管理エージェントはディレクトリからデータを吸い上げたり、
FIM2010が持つデータをディレクトリに送り込んだりします。
そのため、ID同期を行おうと思ったら、最初に作成しなければならないコンポーネントなのです。
 
では、管理エージェント(以下、MA)の作成方法を紹介しましょう。
ここでは、CSVファイルとADのMAを作成します。
■CSVファイル用MAの作成
CSVファイル用MAを作成するときは、事前にCSVファイルを作成しておく必要があります。
CSVファイルの1行目にFIMへ流し込むID情報の属性一覧を記述しておきます。
ここでは、シンプルにemployeeID,FirstName,LastName,DisplayNameの4つだけ書いておきます。
 
Identity Management管理ツールからManagement Agentをクリックし、
ActionsのCreateをクリックして、MAの作成を開始します。
最初にMAの種類とMAの名前を指定します。
MAの種類はCSVファイル用のMAなので、「Delimited text file」を選択します。
 
MAで読み込むテキストファイルのパスを指定します。ここで指定するテキストファイルは
前の手順で作成したファイルです。
 
テキストファイルから属性を読み込みます。
1行目に属性一覧を記述しているので、「Use first row for header names」にチェックをつけ、
カンマ区切りですので、Commaを選択しておきます。
 
読み込んだ属性一覧から、キー(FIMではAnchorと呼ぶ)として使う属性を選択します。
employeeIDが間違いなく一意な情報なので、Set Anchorをクリックして、employeeIDを選択します。
以降の手順は、互換性のために用意されているものなので、そのままNextを連打して終了します。
 
Identity Management管理ツールにCSVMAという名前の管理エージェントができました。
次はMAに対して行うコマンドを登録します。
登録するコマンドとしては、
・CSVファイル → CSの移動コマンドであるImport
・CS → MVもしくはMV → CSの移動コマンドであるSynchronization
・CS → CSVファイルの移動コマンドであるExport
があります。
では、Importのコマンド登録方法を紹介します。
MAを右クリックして、Configure Run Profilesをクリックします。
表示されたダイアログから、New Profileをクリックして作成をスタートします。
 
実行コマンドの名前をつけます。ここではImportとしておきます。
Nextをクリックします。
 
コマンドの種類を選択します。
ここでは、Full Importを選択します。
ちなみに、Importにはすべての情報をインポートするFull Importのほかに、差分だけインポートするDelta Importなどあります。
 
次にインポートするときに参照するテキストファイルを指定します。
ここで指定するテキストファイルは最初の手順で作成したテキストファイルなのですが、
このファイルは、c:Program FilesMicrosoft Identity Integration ServerMaDataCSVMAフォルダ内に
あるファイルしか指定することができません。ですので、作成したファイルを事前にこのフォルダへ移動させておきましょう。
そして、これ以降、ファイルの編集をするときは必ずこのフォルダへ移動したファイルを使ってください。
 
ここまでで、Importコマンド登録が完成しました。同様にしてSynchronization、
Exportも作成しておいてください。
 
■AD用MAの作成
 AD用のMAもIdentity Management管理ツールのManagement Agentから作成します。
ActionsのCreateをクリックして、最初にMAの種類とMAの名前を指定します。
AD用のMAは「Active Directory Domain Services」を選択します。
 
 
次にADに接続するときのアカウントを指定します。言うまでもありませんが、
ADの管理者アカウントでなければなりません。
 
次に接続するディレクトリパーティションを指定します。
ドメインパーティションに対して同期を行いますので、ドメインパーティション(DC=nwtraders,DC=com)に
チェックをつけておいてください。また、Containersをクリックすると
同期に使用するOUを選択することができます。
 
同期に使用するOUの選択画面
 
同期対象のオブジェクトを選択します。
userがデフォルトでは選択されていないので、チェックをつけておきましょう。
 
同期対象となる属性を選択します。
今回は、ユーザーの同期を行うので、同期対象となるユーザーの属性を選択します。
ここはデモ環境ですので、cn,displayname,givenname,sn,userAccountControl,userPrincipalName,sAMAccountName,unicodePwd
までを選択します。(実環境でお使いになるときはきちんと同期対象を選択してくださいね)
以降のステップは、互換性のためのものなので、Nextを連打してください。
 
ただし、ウィザードの最後の画面だけはご注意を。
ADユーザーのパスワードをFIMを通じて管理するときは、
Enable Password managementのチェックをつけておいてください。
具体的には、パスワードリセットをFIMクライアントの機能を使って行いたいという時に必要です。
 
あとは、AD用のMAにもImport,Synchronization,Exportのコマンド(プロファイル)を作成しておいてください。
ここまでで、MAの作成は完了です。
 
しかし、まだまだやらなければならないことはあります。
 
・ MSILM用のMAっていらないの?
・ CS→MVまたはMV→CSへの同期を行う時に、属性マッピングとかやらなくて良いの?
 
と思ったあなた、そのとおりです。設定しなければなりません。
これについては次回以降、紹介します。