DigitalBase Docs

AD / LDAP・SSO 連携

Active Directory / LDAP と連携し、既存のアカウントで DigitalBase にログインできるようにします。認証方式は .envAUTH_MODE で切り替えます(local / ldap / oidc)。SSO は OIDC(AUTH_MODE=oidc)に対応します。

対象:管理者必要権限:管理者ロール

前提

  • 管理者アカウントでログインできること
  • ディレクトリの接続情報(ホスト・ベース DN・バインド情報)が手元にあること

連携の流れ

初期設定は次の 4 ステップで行います。

  1. 接続設定[管理] > [AD連携] でホスト・ベース DN・バインド情報を入力します。
  2. 属性マッピング — メール・氏名などの属性を、ディレクトリの項目に対応づけます。
  3. ロール割当 — グループ(memberOf)から DigitalBase のロール・タグへの対応を設定します。
  4. 接続テスト — テストを実行し、疎通とユーザー取得を確認します。 → 成功すると対象ユーザーが一覧に表示されます。

ディレクトリ / IdP 別

利用する環境に応じて設定が分かれます。

  • Active Directory(オンプレ)AUTH_MODE=ldap
  • Microsoft Entra IDAUTH_MODE=oidc(SSO)
  • 汎用 LDAPAUTH_MODE=ldap

属性マッピング

ディレクトリのユーザーは初回ログイン時に自動登録(プロビジョニング)され、ログイン ID(メールアドレスを兼ねる 1 つの識別子)は次の属性から決まります。

方式ログイン ID
AD / LDAPmail 属性。無ければアカウント名(sAMAccountName、OpenLDAP は uid。それも無ければ入力されたユーザー名)。ドメインを補って合成することはしません
OIDC(Entra ID)email クレーム。無ければ preferred_username、それも無ければ sub

2 回目以降のログインは、このログイン ID の一致(大文字小文字は区別しない)で既存ユーザーに結び付けます。

グループ(memberOf)に対応づけたロールは、ログインのたびに再評価されます。対応するグループから外れたユーザーは既定では現在のロールを維持します(ログに記録)。LDAP_DEMOTE_UNMAPPED=1 を設定すると USER に戻します。

ディレクトリとの同期(退職者の無効化)

ディレクトリ側で削除・無効化されたユーザーは、次にログインしないため自動では止まりません。[管理] > [ユーザー]「LDAP と同期」(AD / LDAP モードのときだけ表示)を実行すると、ディレクトリに見つからない LDAP 由来のアカウントを無効(INACTIVE)にし、発行済みのセッションも失効させます。 → 確認した件数・無効化したユーザー・判定できなかったユーザーが表示され、監査ログに記録されます。

LDAPS の証明書検証

LDAP_USE_SSL=true のとき、サーバー証明書は既定では検証しませんLDAP_TLS_VERIFY=0、社内 CA や自己署名の AD をそのまま使えます。接続時にログへ記録されます)。検証する場合は LDAP_TLS_VERIFY=1 にし、社内 CA の証明書は LDAP_CA_FILE に PEM ファイルのパスを指定してください(空なら OS の信頼ストア)。

注意

IdP 側で X.509 証明書が必要な場合は、StartTLS を有効化したうえで証明書を登録してください。

補足

LDAP / OIDC モードでも、初期管理者 admin はパスワードでログインできます(ディレクトリ障害時の緊急用)。不要なら AUTH_LOCAL_FALLBACK=0 で止めてください。詳しくはユーザー・権限管理を参照してください。

関連