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=Userscn=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 へのログインを続行できるように、amAdminsAMAccountName を使用してアカウントを作成する必要があります。このユーザーは、次のいずれかの方法で 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.propertiescom.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.