Skip to main content
Classic Login を使用している場合は、AD/LDAP Connector を介して Active Directory とフェデレーションできます。AD/LDAP Connector を使用すると、企業ネットワーク内のドメイン参加済みマシンを使用しているユーザーが認証できるようになります。

Active Directory を設定する

  1. Auth0 Dashboard > Authentication > Enterprise > Active Directory/LDAP に移動し、設定する接続を選択します。
  2. Use Windows Integrated Auth (Kerberos) スイッチを有効にします。

Kerberos の自動検出範囲

Kerberos 認証が有効な場合、AD Connector を実行しているサーバーの外部公開 IP アドレスは、ネットワーク IP 範囲に自動的に追加されます。つまり、ユーザーのリクエストの送信元が AD Connector と同じ外部公開 IP アドレスである場合、Kerberos 認証が試行されます。
  1. IP Ranges を設定します。CIDR-notation を使用してください。ここには、Auth0 から見える IP 範囲を指定する必要があります。Auth0 がクラウドで実行されている場合、ユーザーの内部 IP アドレスは参照できません。その場合は、会社の公開側/WAN IP アドレスを設定します。
  2. この設定を変更したら、そのたびに AD Connector をホストしている Windows Service を再起動することをおすすめします。これにより、変更がすぐに反映されます。

認証フロー

IP 範囲が設定されている場合、ユーザーの所在地によって認証フローは異なります。Fabrikam を例にすると、Auth0 の SaaS 版を使用しているため、接続に Public IP Address (24.12.34.56/32) を設定しています。建物内から接続するユーザーは、全員 24.12.34.56 から接続しているものとして扱われます (接続で設定されているとおり) 。認証時には、ユーザーは AD/LDAP のネイティブフローを利用でき、シームレスな を利用できます。 これを機能させるには、ネットワークで、ユーザーが config.json ファイルで設定されたポート経由で AD/LDAP Connector に接続できるようにする必要があります。Connector の高可用性デプロイでは、ユーザーの接続先アドレスは、すべての Connector インスタンスの前段にあるネットワークロードバランサーになります。
Kerberos フローによる AD/LDAP Connector 認証の設定図
詳細については、高可用性環境向けに AD/LDAP Connector をデプロイする。を参照してください。 一方、ユーザーが社内ネットワーク上にいない場合 (たとえば顧客先にいる場合や、VPN なしで在宅勤務している場合) は、AD/LDAP Connector に直接アクセスできません。ユーザーはユーザー名とパスワードを入力する必要があり、Auth0 はそれらの認証情報を AD/LDAP Connector で検証します (さらに AD/LDAP Connector が Active Directory を使用して、その認証情報を検証します) 。
Kerberos 認証情報フローによる AD/LDAP Connector 認証の設定図

Lock による自動ログイン

AD/LDAP 接続で IP 範囲を検出し、その範囲を Lock で使用して統合 Windows 認証を有効にする機能は Lock 10 では動作しますが、Lock 11 では Universal Login シナリオでのみ使用できます。Lock 11 を Embedded Login シナリオで使用する場合、この機能は無効になります。
アプリケーションが Auth0 でホストされる Login Page 内で Lock 10 または 11 を使用している場合 (通常は /WS-Federation プロトコルおよびシングルサインオン (SSO) 統合で使用されます) 、ユーザーが “Windows Authentication” を使用して認証できるボタンが表示されます。 状況によっては、Kerberos が利用可能な場合 (エンドユーザーの IP アドレスに基づいて) に、ユーザーを自動的にサインインさせたいことがあります。Kerberos が利用可能な場合にユーザーを自動的にサインインさせるには、Auth0 の Login Page に次の変更を追加します。

実行時に Kerberos をバイパスする

接続設定で指定した範囲内の IP アドレスからユーザーがログインしている場合でも、lock.show()rememberLastLogin: false を渡すことで、Kerberos が使用されないようにできます。

Kerberos リクエストのログ記録を有効にする

  1. Kerberos リクエストの詳細なログ記録を有効にするには、システムレベルの環境変数 DEBUG=kerberos-server を追加します。
  2. Connector を再起動します。
  3. 再度ログインし、詳細を確認するためにログを確認します。

Firefox での Kerberos サポート

デフォルトでは、FirefoxKerberos でのユーザー認証に必要な “negotiate” リクエストをすべて拒否します。Firefox で Kerberos を使用するには、コネクタがインストールされているサーバーを許可リストに追加する必要があります。
  1. Firefox のタブを開き、アドレスバーに about:config と入力します。
  2. 警告メッセージが表示されたら閉じ、検索ボックスに negotiate と入力します。
  3. network.negotiate-auth.trusted-uris 項目を見つけて、ダブルクリックし、値を変更します。
  4. コネクタがインストールされているサーバーのドメイン名を入力します。ロードバランサーの背後でコネクタのインスタンスを複数運用している場合は、ロードバランサーの DNS 名を追加します。 値には、mydomain.com, https://myotherdomain.com のように、URL プレフィックスまたはドメインをカンマ区切りで指定できます。
  5. Ok をクリックします。変更を反映するためにサーバーを再起動する必要はありません。

Kerberos の HTTPS サポート

Kerberos 認証は HTTP 上で動作し、HTTPS には対応していません。Microsoft Office 365 などの最新の製品は、HTTP では動作しない場合があります。 この制限を解消するには:
  1. リバースプロキシを設定し、AD/LDAP Connector を HTTPS ドメインで公開します。SERVER_URL (Front Facing URL) パラメーターを使用すると、AD/LDAP Connector が受信リクエストを待ち受ける公開 URL を指定できます。
  2. リバースプロキシで、SERVER_URL をデプロイされたコネクタのすべての内部インスタンスにマッピングします。