Sun ONE ロゴ      前へ      目次      索引      次へ     

Sun ONE Identity Server 配備ガイド

付録 C
Active Directory に対する認証

SunTM ONE Identity Server では、さまざまなバックエンドソースに対して認証を実行することが可能です。主に使用されるのは Sun ONE Directory Server および LDAP ですが、LDAP 認証モジュールを設定することで Microsoft Active Directory を認証ソースとして使用できます。この付録は、次の節で構成されています。


概要

Active Directory は LDAPv3 に準拠したディレクトリサーバーであるため、Identity Server を設定するだけで Active Directory を認証ソースとして認識させることが可能です。この設定を定義する際、 管理者は、すべての LDAP 認証が Active Directory を指し示すようにするか、この目的に使用する認証モジュールを新規に作成して登録するかを選択できます。


注

LDAP v3 に準拠するすべてのサーバーに対し、LDAP 認証モジュールをここで説明する方法で使用できます。


既存の LDAP 認証モジュールを指し示す

この方法では、LDAP 認証モジュールを使用して認証を試みるすべてのユーザーが Active Directory で認証されます。Sun ONE Directory Server で検証が行われるデフォルトの LDAP 認証とは、この点が異なります。この付録では、このシナリオについて主に説明します。

Active Directory 認証モジュールを新規作成する

別のオプションは、Active Directory に対して LDAP 認証を実行する、専用の認証モジュールを作成および登録する方法です。Identity Server では、1 つの認証モジュールの複数インスタンスを異なる複数のサーバ設定で使用することはできません。この手法を採用する場合は、新規クラスが必要になります。このオプションは、Active Directory サフィックスと Directory Server サフィックスが同じでない場合に使用します。このオプションについて、ここでは扱いません。カスタム認証モジュールの作成方法については『Sun ONE Identity Server Customization And API Guide』を参照してください。

複数の LDAP サブ設定

管理者は、1 つの組織内に複数の LDAP 認証モジュール設定を定義できます。これらの追加設定はコンソールには表示されませんが、要求元のユーザーの認証が初期検索で見つからない場合に、プライマリ設定と連動して動作します。たとえば、ある組織で、2 つの異なるドメイン内で認証を検索できるように LDAP サーバーの検索を定義することも、1 つのドメイン内で複数のユーザーネーミング属性を設定することも可能です。後者の場合、コンソールにテキストフィールドが 1 つだけ表示されます。プライマリ検索条件を使用してユーザーが検出されない場合、LDAP モジュールは 2 番目のスコープを使用して検索を実行します。このオプションの詳細については、『Sun ONE Identity Server Customization And API Guide』を参照してください。


Active Directory 認証の設定

以下に、LDAP 認証モジュールを使用して Active Directory に対して証明情報を確認する手順を示します。

  1. Identity Server をインストールおよび設定します。
  2. 以下に、LDAP 認証モジュールのデフォルト設定を変更する手順を示します。これは、潜在的な危険性の伴う操作であり、ロックアウトが発生する可能性があります。Identity Server へのアクセスが拒否された場合は、「トラブルシューティング」を参照してください。

  3. 組織のコア認証サービスの「ユーザープロファイル」で、「ダイナミックに作成」を選択します。
  4. Identity Server では、外部ソースに認証が委任されていても、Directory Server 内部に認証用のアカウントが存在する必要があります。これには、次のオプションが存在します。

    • メタディレクトリを使用して、アカウントを同期させる
    • ダイナミックプロファイル作成を有効にする。これにより、Identity Server は該当するユーザーのアカウントを検索できるようになる。該当するアカウントが存在しない場合は、Active Directory 内に同名のアカウントが自動的に作成される

    • 注

      この属性の詳細および有効化の方法については、『Sun ONE Identity Server 管理ガイド』を参照してください。


  5. LDAP 認証モジュール内のプライマリ LDAP サーバーおよびポート属性を、Active Directory のホスト名およびポート番号に変更します。書式は、hostname.domain.com:389 になります。
  6. 「ユーザー検索の開始 DN」を、Active Directory 用の適切なベースに変更します。
  7. ベースサフィックスを指定するだけでは、この属性は機能しません。通常、cn=Users に cn=Users,dc=domain,dc=com 内のサフィックスを追加したものになります。

  8. 「root ユーザーバインド DN」属性を、Active Directory の読み取り権限を持つユーザーに変更して、パスワードを更新します。
  9. Active Directory への匿名アクセスは許可されないため、バインドアカウントが必要になります。これは、ユーザーが認証する属性に対する読み取り機能を持つ Active Directory の単なるアカウントです。たとえば、cn=administrator,cn=Users,dc=domain,dc=com のようになります。このエントリのパスワードは、更新が必要です。

  10. ユーザーネーミング属性を変更します。
  11. LDAP 認証モジュールは、この属性を Active Directory 内で検索し、検出した属性を使って Directory Server 内の UID を一致させます。たとえば、メタディレクトリにより 2 つのシステムの同期が行われ、Directory Server 内のエントリがメールを使用して RDN として格納される場合、Active Directory 内へのメールアドレスの格納時に userPrinicipalName をここに指定できます。この場合、sAMAccountName が Active Directory 内で最も UID に類似した属性であるため、これを指定するのが最善です。

  12. 「ユーザーエントリ検索属性」を変更します。
  13. この属性は、Active Directory 内でのアカウントの検出に使用されます。これは、ユーザーがログインに使用する属性に対応している必要があります。たとえば、ユーザーが共通名を使用してログインする場合、この属性の値は cn になります。この場合、sAMAccountName が Active Directory 内で最も UID に類似した属性であるため、これを指定するのが最善です。


    注

    この属性には複数の値を含めることができ、それぞれの値を使用して実行が試みられます。


  14. 「認証において ユーザー DN を返す」を選択解除します。
  15. この属性により、LDAP 認証モジュールは認証した DN を Identity Server に返すため、DN を再度検索して承認する手間を省くことができます。Active Directory の DN は、Directory Server の DN と同じではないため、オフにする必要があります。これにより、Identity Server が Active Directory から返される値を手順 6 の「ユーザーネーミング属性」で指定された属性として取得し、コア認証で指定された属性 (デフォルトでは uid) を使用して Directory Server を検索することが可能になります。この例では、LDAP 認証は Active Directory で sAMAccountName=UID_entered_by_user を検索し、認証後に Directory Server で Active Directory から返された uid=sAMAccountName を検索します。

  16. amAdmin アカウントを Active Directory に追加します。
  17. amAdmin が Identity Server へのログインを続行できるように、amAdmin の sAMAccountName を使用してアカウントを作成する必要があります。このユーザーは、次のいずれかの方法で Active Directory 内で作成されます。

    1. 「スタート」->「プログラム」->「管理ツール」で、「Active Directory ユーザーとコンピュータ」を選択します。
    2. 左の区画で「ユーザー」ノードを右クリックして、「新規」->「ユーザー」を選択します。
    3. 適切な情報を入力し、アカウント名に amAdmin を指定します。
  18. amAdmin が Identity Server にログインできることを確認します。
  19. Active Directory で定義されたユーザーが Identity Server にログインできることを確認します。

これで、Identity Server が Active Directory での認証用に設定されました。


トラブルシューティング

LDAP 認証情報の変更により、ロックアウトが発生する可能性があります。以下に、この問題に対処する方法を示します。

Identity Server へのクイックアクセス

AMConfig.properties の com.iplanet.authentication.super.user プロパティ内で検出された DN を使用すると、amAdmin が LDAP 認証モジュールを介して Identity Server にログインできます。amAdmin は、Directory Server の Identity Server マネージャです。このプロパティの値は、amAdmin アカウントの完全な DN である、uid=amAdmin,ou=People,root-suffix です。完全な DN は、「ユーザー名」フィールドに入力します。この場合、AMConfig.properties で設定された Directory Server のインスタンスが使用されます。LDAP 認証モジュールパラメータは使用されません。

Directory Server を使用した再設定

認証設定情報は Directory Server に格納されるため、エントリは簡単に変更できます。ou=default,ou=OrganizationConfig,ou=1.0,ou=iPlanetAMAuthLDAPService,ou=service,root-suffix は、認証設定サービスを定義するオブジェクトです。iplanetKeyValue 属性を変更して、発生したすべてのエラーを訂正します。該当する値は次のとおりです。



前へ      目次      索引      次へ     


Copyright 2003 Sun Microsystems, Inc. All rights reserved.