1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

LDAP Managerを使ってみた! 6. AD → LDAP編

Last updated at Posted at 2025-03-03

前回の続きです。

ADからLDAPに反映するためには

4つのプラグイン・Webアプリケーションなどを組み合わせて連携を実施します。
今回は一連のシステムすべてを検証します。

  1. ADアグリゲータ
    ADのユーザ情報を定期的に取得し、内部DBとの差分情報をCSV化して「アグリゲータレシーバ」に送信するWebアプリケーション。
  2. アグリゲータレシーバ
    ADアグリゲータや管理者メンテナンス、RESTful APIを通じて送信されたCSVを受け取り、暗号化して共有ファイルサーバに保存するWebアプリケーション。
    最大99個のエンドポイントを持つことができ、エンドポイントごとにCSVファイルの格納先を設定できる。
  3. CSV→LDAP反映
    CSVの情報からLDAPサーバにユーザ情報を反映するプラグイン。
  4. ADパスワード同期
    ADのパスワード更新情報をADアグリゲータに連携するアプリケーション。
    製品としては前回使用したものと同じです。

設定

アグリゲータレシーバ

任意の場所に共有フォルダを作成します。
pic (1).png
<tomcat_home>\webapps\以下にaggregator-rvフォルダをコピーします。
pic (2).png
LDAP Manager付属の設定値生成ツール(<インストールメディア>\LDAPManager\LDAPManager7\TOOL\ExgenConvert\ExgenConvert.exe)を使用し、暗号化パスワードを生成します。
pic (3).png
<tomcat_home>\webapps\aggregator-rv\WEB-INF\aggregatorrv.ini.templeteaggregatorrv.iniにコピーします。
pic (4).png
aggregatorrv.iniを編集します。
idXXXには任意の値を、passwordXXXには設定値生成ツールで暗号化したパスワードを指定します。
CIFS情報セクションでは、エンドポイントごとにCSVファイルを配置する共有フォルダと認証情報を指定します。
net_passwordには設定値生成ツールで暗号化したパスワードを指定します。
ここでは、エンドポイントupload01に送信されたCSVファイルが192.168.181.42\csv\Adaggregatorに保存される設定としています。

aggregatorrv.ini
;認証ID,パスワード
[authentication]
id001=admin001
password001=d99145262b24cc7356fc10aff1951434

;CIFS情報
;エンドポイントupload01の共有先
[upload01]
domain=ldap-manager
net_id=administrator
net_password=dba641b113da44cf
host=192.168.181.42
upload_path=/csv/Adaggregator/

保存してTomcatを再起動します。

パスワード同期フックモジュール

ADPasswdSyncHookCfg.exeで設定します。
連携先を「ADアグリゲータ」とし、任意の連携情報格納パス、ADアグリゲータのURLと、任意のID・パスワードを設定してサービスを起動します。
pic (5).png

ADアグリゲータ

<tomcat_home>\webapps\adaggregatorフォルダをコピーします。
pic (6).png
<tomcat_home>\webapps\adaggregator\WEB-INF\adaggregator.ini.templeteadaggregator.iniにコピーします。
pic (7).png
adaggregator.iniを編集します。
アグリゲータレシーバのURLとして設定した受信エンドポイントのURLを指定し、認証IDとパスワードもそれぞれアグリゲータレシーバでの設定値に合わせます。
ADパスワード同期サービス管理情報として、設定した認証ID、パスワードを入力します。
設定項目init_start_time=をコメントアウトし、ADアグリゲータが起動した瞬間からポーリングを開始するようにしました。
ADへの接続情報、ベースDN、フィルタ等も指定します。
ADから取得した情報と比較するDBにはPostgreSQLとSQLiteが使えますが、今回はSQLiteとしました。

adaggregator.ini
;アグリゲータレシーバサーバ情報
[aggregator_rv]

;アグリゲータレシーバのURL
url=http://192.168.181.43:8080/aggregator-rv/upload01

;プロキシサーバ経由の接続を行うか
;on(行う)/off(行わない)
proxy_use=off

;プロキシサーバのホスト名
proxy_host=

;プロキシサーバのポート番号
proxy_port=

;認証ID
id=admin001

;パスワード(ExgenConvertで生成された値)
password=d99145262b24cc7356fc10aff1951434


;ADパスワード同期サービス管理情報
[password_hook]

;認証ID
id=admin

;パスワード(ExgenConvertで生成された値)
password=d99145262b24cc7356fc10aff1951434

;ポーリング情報
[polling]

;実行間隔分(10~1440)
per_minute_exe_interval=10

;初回実行時間(hh:mm)
:init_start_time=12:00

;AD接続情報
[ad]

;ホスト名
host_name=ad2ldap.example.com

;ポート番号
port=389

;SSL接続有無 on(する)/off (しない)
ssl=off

;ベースDN
basedn=DC=ad2ldap,DC=example,DC=com

;検索時の抽出フィルタ

filter=(&(objectclass=user)(userPrincipalName=*))

;接続ユーザDN
userdn=cn=Administrator,cn=Users,dc=ad2ldap,dc=example,dc=com

;接続ユーザパスワード(ExgenConvertで生成された値)
userpassword=dba641b113da44cf

;連携時にキーとなる属性 1:(userPrincipalName)、2(sAMAccountname)
key_attribute=1

;1回の検索での検索上限数(1~2000000000)
search_limit=1000

;比較DB情報
[db]

; 比較DBの種類 1(PostgreSQL) / 2(SQLite)
db_type=2

;比較DBがPostgreSQLの場合
;ホスト名
db_host=
;ポート番号
db_port=5432
;データベース名
db_name=adaggregator
;接続ユーザID
db_user=postgres
;パスワード(ExgenConvertで生成された値)
db_password=d99145262b24cc7356fc10aff1951434

;比較DBがSQLiteの場合
;DB(SQLite)を格納するフォルダ
directory="c:\\temp"

;アグリゲータレシーバ送信用CSVフォーマット情報
[aggregator_rv_csv]

;区切り文字 1(カンマ)/2(タブ)
delimiter=1

;複数値区切り文字 1(セミコロン)/2(タブ)
multi_delimiter=2

;ファイル出力文字コード 1(SHIFT_JIS)/2(Unicode)
character_code=2

生成するCSVファイルの設定が<tomcat_home>\webapps\adaggregator\WEB-INF\mapping.xmlで可能ですが、デフォルトでも十分な設定がされているため、今回はスキップします。

CSV → LDAP反映

プラグインをインストールします。
pic (8).png
LDAP Manager コンソール「環境設定」> 「CSV -> LDAP反映1」を選択します。
「CSV属性名設定」にて、ADアグリゲータが作成するCSVファイル用のテンプレート(<インストールメディア>\LDAPManager\CSVLDAP&CSVLDAPGroup\Template\ADAggregator.csv)を指定して「ファイルインポート」します。
pic (9).png
pic (10).png
「基本設定」にて、共有フォルダにアクセスするユーザの認証情報、フォルダ名、ファイル名、区切り文字等と、反映先LDAPサーバの情報を入力します。
pic (11).png
マッピング設定は以下のようにしました。
pic (12).png

確認

ADにてユーザを作成します。
pic (13).png
Tomcatを起動します。
ADアグリゲータとアグリゲータレシーバにより、指定の場所にCSVファイルが作成されます。
pic (14).png
このCSVファイルをCSV → LDAP反映で取り込みます。今回は手動実行で取り込み処理を行います。実運用ではスケジュール実行などを使用するのが良いでしょう。
pic (15).png
正常に取り込み処理が実行されると、LDAPサーバ側にユーザエントリが追加されます。
pic (16).png
その他、変更処理や削除処理も正常に行えています。
pic (17).png
pic (18).png
pic (19).png
pic (20).png

まとめ

ADからLDAPに反映する一連のシステムについて検証しました。
次の記事では、LDAP Managerの管理機能をWebアプリケーション上のGUIで使用できる
管理者ポータル について検証します。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?