LDAP データを使用したバッチ モードでの連絡先の作成

この記事には、以下のトピックが含まれています。
casm173
この記事には、以下のトピックが含まれています。
LDAP データを使用した連絡先のバッチ インポート
pdm_ldap_import コマンド ライン ユーティリティを実行すると、LDAP データを使用してバッチ モードで CA SDM 連絡先を作成できます。
既存の連絡先が対応する LDAP エントリと同期されていない場合、pdm_ldap_import を実行すると、連絡先が作成されるだけでなく、既存の連絡先が更新されます。 pdm_ldap_sync バッチ処理を使用すると、既存の連絡先を更新できますが、新しい連絡先は作成できません。
LDAP データを使用して連絡先をインポートするときに以下のエラーが発生した場合は、CA SDM サービスを再起動します。
pdm_ldap_import: メソッド got_record が Ldap_Group_Catcher で失敗しました (LDAP エージェントが見つかりません)
pdm_ldap_import 構文を以下に示します。
pdm_ldap_import -n "domain_name" -l "ldap_where_clause" [-c "contact_where_clause"] [-u "userid"]
  • -n
    "domain_name"
    CA SDM への連絡先のインポート元となる LDAP ディレクトリのドメイン名を指定します。 ドメイン名を指定しない場合、CA SDM はデフォルトの LDAP ドメイン名を使用してデータを取得します。
  • -l "
    ldap_where_clause
    "
    検索する LDAP レコードの userid を指定します。 置き換える変数は「?」文字で示します。 たとえば、
    userid = ?
    とします。 デフォルト値は
    userid = ?
    です。 この特別な事例では、id は連絡先属性 ldap_dn にマップされます。
    注:
    ldap.maj
    ファイルで定義されているキーワードを使用してください。 memberOf = 'group_dn' の構文を使用して検索することもできます。
  • -c "
    contact_where_clause
    "
    (省略可)連絡先レコードがすでに存在するかどうかを判断する方法を指定します。 連絡先レコードが存在しない場合、新しい連絡先レコードが挿入されます。 連絡先レコードが存在しているが、最新の LDAP データと同期されていない場合、連絡先レコードが更新されます。
  • -u "
    userid
    "
    (省略可)pdm_ldap_import プログラムが実行されるログイン名を指定します。
pdm_ldap_import でワイルドカードを使用すると、複数のレコードを指定できます。
例: LDAP データを使用したバッチ インポート
以下の例では、userid が jsmith11 である 1 つの LDAP レコードを、exmaple.com というドメイン名の LDAP ディレクトリからインポートされます。
pdm_ldap_import -n "example.com" -l "userid = 'jsmith11'"
以下の例では、文字 C から始まる userid を持つすべての LDAP レコードが、exmaple.com というドメイン名の LDAP ディレクトリからインポートされます。
pdm_ldap_import -n "example.com" -l "userid = 'c%'"
以下の例では、exmaple.com というドメイン名の LDAP ディレクトリから、ディレクトリ内のすべての LDAP ユーザ レコードがインポートされます。
pdm_ldap_import -n "example.com" -l "userid = '%'"
日付と時間による連絡先のバッチ インポート
pdm_ldap_import ユーティリティは、特定の日付と時間の前または後に作成された LDAP レコードをインポートするように設定できます。 この機能を有効にするには、以下の内容を含む ldap.mod ファイルを作成します。
OBJECT ldap { ATTRIBUTES LDAP_Entry { whenCreated whenCreated STRING ; }; };
このコードは、LDAP オブジェクトに
whenCreated
属性を追加します。
whenCreated 属性を使用して、レコードをフィルタするためのルールは以下のとおりです。
  • >= 演算子または <= 演算子のみを使用する。
  • Z を含め、日付/時間の値の文字を
    すべて
    指定する。 明示的に指定しない部分(時間など)にはすべて 0 を指定します。
  • 日付/時間をフィルタの最初に指定する。文字列の先頭に 0 は使用しません。
  • 先頭に世紀を指定しない。 たとえば、2008 年を指定するには、08 を使用します。
日付/時間の値は一重引用符で囲む必要があります。
例: whenCreated 属性を使用した LDAP エントリのインポート
以下の例では、2008 年 3 月 11 日以降に作成された LDAP エントリを whenCreated 属性を使用してインポートします。
Pdm_ldap_import -l "whenCreated >= '080312000000Z'"
例: whenCreated 属性を使用した LDAP レコードの検索
以下の例では、2008 年 3 月 11 日以降に作成された LDAP レコードを、pdm_ldap_test で whenCreated 属性を使用して検索します。
pdm_ldap_test.exe -f "whenCreated>=080312000000Z" -a whenCreated Starting ldap_test.exe... LDAP Directory Type : active directory Service Desk Platform : windows Search Base : DC=kirklandsd,DC=ca,DC=com Search Filter : (&(objectClass=person)(whenCreated>=080312000000Z)) Administrator Username : CN=Administrator,CN=Users,DC=kirklandsd,DC=ca,DC=com Administrator Password : ********** LDAP Host : gecko.kirklandsd.ca.com LDAP Port : 389 LDAP API Version : 3 DN: CN=aixmail,CN=Users,DC=kirklandsd,DC=ca,DC=com whenCreated(17)(0): 20080312035327.0Z DN: CN=hpmail,CN=Users,DC=kirklandsd,DC=ca,DC=com whenCreated(17)(0): 20080312035425.0Z DN: CN=sunmail,CN=Users,DC=kirklandsd,DC=ca,DC=com whenCreated(17)(0): 20080312035726.0Z 3 Total LDAP records found...
概要データおよびログ データのバッチ インポート
pdm_ldap_import コマンドは、各実行のすべてのアクティビティの詳細ログを保守します。 ldap_logging.0-n ログ ファイルは、$NX_ROOT/log ディレクトリに保存されます。
以下は、コマンド ラインで pdm_ldap_import が返す概要データの例です。
pdm_ldap_import Starting... pdm_ldap_import Summary: Processed(21) Updated(1) No Matches(7) New Contacts(11) Multiple Matches(0) Empty Filter(2) Errors(0) pdm_ldap_import Complete...
以下の表で、概要データについて説明します。
ステータス
カウント
説明
Processed(処理済み)
21
対応する LDAP エントリを持つ CA SDM 連絡先の数。
Updated (更新済み)
1
対応する LDAP エントリに別の情報が含まれていたために更新された連絡先レコードの数。
No Matches(一致なし)
7
対応する LDAP エントリを持たない CA SDM 連絡先レコードの数。
New Contacts (新規連絡先)
11
対応する LDAP エントリに基づいて作成された、新しい連絡先レコードの数。
Multiple Matches(複数一致)
0
ldap_search_base オプションによって定義されたとおり、複数の連絡先レコードが一致する LDAP エントリの数。
Empty Filter(空のフィルタ)
2
有効な検索フィルタの生成に使用できなかった LDAP エントリの数。
Errors (エラー)
0
処理中にエラーが発生した LDAP エントリの数。 たとえば、CA SDM に必要とされるフィールド([姓]など)に値が含まれていない LDAP レコードは、エラーとみなされるためインポートできません。
LDAP データを使用した連絡先のバッチ更新
LDAP データを使用してバッチ モードで連絡先レコードを更新するには、pdm_ldap_sync ユーティリティを実行します。
このユーティリティでは、CA SDM で定義されている LDAP 連絡先の既存のテナントを上書きします。 テナント値をそのまま残したい場合は、NX_RETAIN_TENANT_VALUE 変数を手動で追加することによって NX.env を変更し、「yes」に設定する必要があります。 この変数が「no」に設定されていたり、なかったり、または正しく設定されていない場合、ユーティリティはテナント情報を上書きします。
pdm_ldap_sync ユーティリティでは、既存の連絡先を対応する LDAP エントリと同期しますが、連絡先は作成しません。 連絡先を作成するには、pdm_ldap_import バッチ プロセスを使用します。
pdm_ldap_sync の構文は以下のとおりです。
pdm_ldap_sync -n "example.com" -l "ldap_where_clause" [-c "contact_where_clause"] [-u "userid"]
  • -n
    "domain_name"
    CA SDM への連絡先のインポート元となる LDAP ディレクトリのドメイン名を指定します。 ドメイン名を指定しない場合、CA SDM はデフォルトの LDAP ドメイン名を使用してデータを取得します。
  • -l "ldap_where_clause"
    一致する LDAP レコードの検索方法を決定します。 置き換える変数は「?」文字で示します。 たとえば、
    userid = ?
    です。初期設定値は
    id = ?
    です。 この特別な事例では、idは連絡先属性ldap_dnにマップされます。
  • -c "contact_where_clause"
    (オプション)一致する LDAP レコードを検索するときにどの連絡先を使用するかを決定します。
    デフォルト:
    "ldap_dn IS NOT NULL"
  • -u "userid"
    (オプション)pdm_ldap_sync を実行するユーザ ID を指定します。
複数のレコードを指定するには、pdm_ldap_sync でワイルドカードを使用します。
例:
次の例では、対応する LDAP レコードがある連絡先レコードのベースラインを確立しています。
pdm_ldap_sync -n "example.com" -l "userid = ?" -c ""
次の例では、デフォルトのパラメータを使用して、LDAP の識別名がある連絡先をすべて更新しています。
pdm_ldap_sync -n "example.com"
次の例では、単一の連絡先を更新しています。
pdm_ldap_sync -n "example.com" -l "userid = ?" -c "userid = 'jsmith11'"
概要データとログ データのバッチ更新
pdm_ldap_sync コマンドは、実行されるたびにすべてのアクティビティの詳細なログを保守します。 ldap_logging.0-n ファイルは、$NX_ROOT/log ディレクトリに保存されます。
以下は、コマンド ラインで pdm_ldap_sync が返す概要データの例です。
pdm_ldap_sync Starting... pdm_ldap_sync Summary: Processed(21) Updated(1) No Matches(7) No Changes(11) Multiple Matches(0) Empty Filter(2) Errors(0) pdm_ldap_sync Complete...
この概要データの説明は以下の表のとおりです。
ステータス
カウント
説明
Processed(処理済み)
21
対応する LDAP エントリを持つ CA SDM 連絡先の数。
Updated (更新済み)
1
対応する CA SDM 連絡先レコードと情報が異なる LDAP エントリの数。
No Matches(一致なし)
7
対応する LDAP エントリを持たない CA SDM 連絡先レコードの数。
No Changes(変更なし)
11
対応する CA SDM 連絡先レコードと同じ情報を持つ LDAP エントリの数。
Multiple Matches(複数一致)
0
一致する連絡先レコードが CA SDM 内に複数ある LDAP エントリの数。この値は ldap_search_base オプションで定義します。
Empty Filter(空のフィルタ)
2
有効な検索フィルタの生成に使用できなかった LDAP エントリの数。
Errors (エラー)
0
処理中にエラーが発生した LDAP エントリの数。