Directory Syncの実行で「Active Directory/LDAP サーバから取得したユーザをキャッシュに保存できませんでした」とのエラーが発生する
現象
Directory Syncの実行が失敗し、イベントログを確認すると「SQLite3::ConstraintException: NOT NULL constraint failed」というエラーが発生していた。
概要Active Directory/LDAP サーバから取得したユーザをキャッシュに保存できませんでした。 詳細#<ActiveRecord::StatementInvalid: SQLite3::ConstraintException: NOT NULL constraint failed: ad_users.user_name: INSERT INTO "ad_users" ("dn", "external_id", "family_name", "given_name", "active", "created_at", "updated_at") VALUES (?, ?, ?, ?, ?, ?, ?)> |
※表示されるユーザ属性は設定ファイル(config.yml)の内容によって異なります
原因
Directory Syncの設定で、IIJ IDユーザの「外部ID」と「ID」に設定されているActive Directoryの属性が空のActive Directoryユーザが存在しています。
「外部ID」と「ID」はIIJ IDでの必須属性となるため、値が必要です。
対応
Directory Syncの設定ファイル(config.yml)を確認し、以下の設定値を確認します。
- iid.scim.attribute.user.ad_bind.externalId(外部ID)
- iid.scim.attribute.user.ad_bind.userName(ID)
この値がIIJ IDユーザの「外部ID」と「ID」に設定されるActive Directory属性となります。
該当のActive Directory属性に値を設定するか、該当ユーザをDirectory Syncの同期対象から除外してください。