Active Directory Application Mode (ADAM) ディレクトリ サービスを使用して LDAP データ ストアを作成する

更新日: 2007年6月

 

トピックの最終更新日: 2015-03-09

Active Directory ディレクトリ サービスを使用できない状況にあったり (Linux ベースのネットワーク内など)、Project Server ユーザーの認証にネットワーク オペレーティング システムの Active Directory を使用しないことが組織内で決まったりしたとします。そのような場合、外部のディレクトリ サービスを使用して、ユーザーの認証先になる LDAP (ライトウェイト ディレクトリ アクセス プロトコル) データ ストアを作成することができます。

Active Directory Application Mode (ADAM) は、ディレクトリ対応のアプリケーションにディレクトリ サービスを提供する際に Active Directory のみに依存することのできない組織や、使用できる Active Directory がない組織のニーズを満たせるように設計されたディレクトリ サービスです。Active Directory は、ネットワーク インフラストラクチャを管理するうえで多くの利点を備えていますが、組織では、ディレクトリ対応アプリケーションをサポートする、より柔軟性の高いディレクトリ サービスが必要になることも少なくありません。ADAM は、特に Microsoft Office Project Server 2007 などのディレクトリ対応アプリケーション向けに設計された LDAP ディレクトリ サービスです。ADAM は、システム サービスとしてではなく、ユーザー サービスとして実行されます。ADAM は、Windows Server 2003 ファミリ (Windows Server 2003 Web Edition を除く) のオペレーティング システムを実行しているサーバーおよびドメイン コントローラと、Windows XP Professional を実行しているコンピュータで実行できます。

Office Project Server 2007 ユーザー用のディレクトリ サービスとして ADAM を使用する状況には、以下のようなシナリオが考えられます。

  • ある企業で、ビジネス パートナーや契約従業員が、Project Web Access (PWA) を介して一定の社内リソースにアクセスできるようにしたいとします。企業ポリシーでは、ビジネス パートナーや契約従業員を会社の Active Directory 構造に追加し、Windows 認証で PWA にログインできるようにすることは禁止されています。これは、このようなユーザーが、アクセスする権限のない社内リソースにアクセスすることを防ぐためです。ADAM を使用して別のディレクトリを作成すると、これらのユーザーが Project Web Access を介してエクストラ ネット サイトにログインするときに、このディレクトリで認証を行うことができます。

  • 以前に、Microsoft Office Project Server 2003 を使用して、Project Server 認証によってイントラネットとエクストラネットのユーザー認証を行っていた企業があるとします。ユーザーは Project Server 2003 データベース内のディレクトリに対して認証されていました。この企業は今回、Office Project Server 2007 にアップグレードしましたが、このバージョンでは Project Server 認証がサポートされません。そこで、この企業では ADAM を使用して新しいディレクトリを作成し、移行した Project Server 2003 アカウントをこのディレクトリに追加することにします。次に、イントラネット ユーザーとエクストラネット ユーザーの両方のために、対応する PWA サイトを作成します。どちらのユーザーも、同じコンテンツにアクセスします。これらのユーザーは、Office Project Server 2007 にアクセスできるようになり、ADAM インスタンスによって作成されるディレクトリを介して認証されます。

  • ある企業で、ネットワーク オペレーティング システム (NOS) の Active Directory を、NOS の認証および承認だけに使用することにしました。これは、Active Directory でアプリケーションの認証を行うことによって追加されるオーバーヘッドを回避するためです。ADAM は、Office Project Server 2007 にアクセスするユーザーのディレクトリを別途作成するために使用されます。

  • ADAM の詳細については、「ADAM のステップ バイ ステップ ガイド」(https://www.microsoft.com/downloads/details.aspx?FamilyID=5163b97a-7df3-4b41-954e-0f7c04893e83\&displaylang=ja) を参照してください。

ADAM をダウンロードしてインストールする

ADAM は、Microsoft ダウンロード センターからダウンロードできます。Microsoft Windows Server 2003 R2 の一部としても提供されており、オプション コンポーネント マネージャからインストールできます。

以下の手順では、ADAM をダウンロードしてコンピュータにインストールする方法について説明します。下記の ADAM ダウンロード ページに記載されている必要システムを確認してください。

ADAM をダウンロードしてインストールする

  1. Web ブラウザで、Active Directory Application Mode (ADAM) のダウンロード ページ (https://www.microsoft.com/downloads/details.aspx?FamilyID=9688f8b9-1034-4ef6-a3e5-2a2a57b5c8e4\&displaylang=ja) に移動します。

  2. ADAMSP1_x86_JPN.exe という名前のファイルを見つけ、[ダウンロード] をクリックします。

  3. [ファイルのダウンロード - セキュリティの警告] ページで、[実行] をクリックします。

  4. ソフトウェア更新のインストール ウィザードの最初のページで、[次へ] をクリックします。

  5. [使用許諾契約書] ページで [同意します] を選択し、[次へ] をクリックします。

  6. インストールが完了したら、[完了] をクリックします。

ADAM の新しいインスタンスを作成する

ADAM をコンピュータにインストールした後、ADAM の新しいインスタンスを構成してディレクトリ構造を作成できます。以下の手順では、ディレクトリへのアクセス時に経由するポートの選択、アプリケーション ディレクトリ パーティションの作成、およびアクティブなディレクトリにテンプレートを提供する LDIF ファイルのインポートを行うことができます。

新しい ADAM インスタンスを作成する

  1. [スタート] ボタンをクリックし、[すべてのプログラム] をクリックします。次に、[ADAM] プログラム グループの [ADAM インスタンスの作成] をクリックします。

  2. [Active Directory Application Mode セットアップ ウィザードの開始] ページで、[次へ] をクリックします。

  3. [セットアップ オプション] ページで、[一意のインスタンス] を選択し、[次へ] をクリックします。

  4. [インスタンス名] ページで、[インスタンス名] ボックスにインスタンスの一意の名前を入力します。サービス名では、入力したインスタンス名の前に "ADAM_" が挿入されます。たとえば、"Instance1" と入力すると、サービス名は "ADAM_Instance1" になります。

  5. [次へ] をクリックします。

  6. [ポート] ページで、[LDAP ポート番号] ボックスに、利用可能なポート番号 (たとえば 50000) を入力します。[SSL ポート番号] ボックスに、別の利用可能なポート番号 (たとえば 50001) を入力します。[次へ] をクリックします。ポート番号を入力しない場合、LDAP と SSL の既定のポートが選択されます。

  7. [アプリケーション ディレクトリ パーティション] ページで、[アプリケーション ディレクトリ パーティションを作成する] を選択します。

  8. インストール中に新しいアプリケーション ディレクトリ パーティションを作成する場合は、パーティションの一意の識別名を指定する必要があります。ADAM は、次の表に示した識別名のコンポーネントを含め、最上位のディレクトリ パーティションについて、DNS と X.500 の両方のスタイルの名前をサポートしています。

    属性 説明

    C=

    国/地域

    CN=

    共通名

    DC=

    ドメイン コンポーネント

    L=

    場所

    O=

    組織

    OU=

    組織単位

    [パーティション名] ボックスに、このアプリケーション ディレクトリ パーティションに付ける識別名を入力します。各コンポーネントはコンマで区切ります。たとえば、「OU=Contoso,O=Marketing,C=US」と入力します。

  9. [ファイルの場所] ページで、ADAM データとデータ回復ファイルを格納する場所を入力します。[データ ファイル] ボックスと [データ回復ファイル] ボックス内に表示されている既定の場所を使用できます。[次へ] をクリックします。

  10. [サービス アカウントの選択] ページで、ADAM のこのインスタンスを実行するアカウントを入力します。サーバー用の Network Service アカウントを使用することも、サービスを実行するユーザー アカウントを指定することもできます。[次へ] をクリックします。

  11. [ADAM 管理者] ページで、ADAM のこのインスタンスに対して管理者権限を持つユーザーまたはユーザーのグループを割り当てます。[<現在ログオンしているユーザー>] を選択してこのユーザー アカウントを指定するか、[このアカウント] を選択し、ローカルまたはドメインのユーザーあるいはグループを指定することができます。[次へ] をクリックします。

  12. [LDIF ファイルのインポート] ページで、選択した LDIF (LDAP Data Interchange Format) ファイルを指定します。これらのファイルには、いくつかのユーザー クラス スキーマ定義と共に、Windows の承認マネージャで使用するためのオブジェクトが含まれています。これらのオブジェクトは、新しい ADAM インスタンスにインポートできます。

    次の表に、オプションでインポートできる各 LDIF ファイルの説明を示します。

    LDIF ファイル ユーザー クラス どのような場合にこのファイルをインポートするか

    MS-Users.LDF

    • Person

    • Organizational-Person

    • User

    ADAM ディレクトリ内にユーザー オブジェクトを作成したいが、InetOrgPerson クラス (RFC 2798 に定義されているクラス) のユーザーを作成したくない場合。

    MS-InetOrgPerson.LDF

    • Person

    • Organizational-Person

    • Users

    • InetOrgPerson

    ADAM ディレクトリ内にユーザー オブジェクトを作成し、InetOrgPerson クラス (RFC 2798 に定義されているクラス) のユーザーを作成したい場合。

    MS-UserProxy.LDF

    • User-Proxy

    バインドのリダイレクトで使用するために ADAM 内にプロキシ オブジェクトを作成したい場合。

    MS-ASMan.LDF

    該当なし

    ADAM で承認マネージャを使用したい場合。

  13. [選択された LDIF ファイルをこの ADAM インスタンス用にインポートする] を選択し、[利用可能なファイル] の一覧から LDIF ファイルを選択します。次に、[追加] をクリックしてファイルを [選択された LDIF ファイル] の一覧に移動します。LDIF ファイルをテンプレートとして使用しない場合は、[この ADAM インスタンス用には LDIF ファイルをインポートしない] をクリックします。[次へ] をクリックします。

    [!メモ] LDIFDE (LDIF Directory Exchange) コマンド ライン ツールを使用して、後で LDIF ファイルをインポートすることもできます。

  14. [インストールの準備完了] ページで選択内容を確認し、[次へ] をクリックしてインスタンスのインストールを開始します。

  15. インスタンスのインストールが完了したら、[完了] をクリックします。

ADAM インスタンスを構成する

ADAM ADSI Edit ツールを使用して、ADAM のインスタンスを構成できます。ADAM ADSI Edit は ADAM と共にインストールされ、[ADAM] プログラム グループから開くことができます。

ADAM インスタンスを構成する

  1. [スタート] ボタンをクリックし、[すべてのプログラム] をクリックします。次に、[ADAM] プログラム グループの [ADAM ADSI 編集] をクリックします。

  2. ADAM ADSI Edit ツールで、[操作] メニューの [接続] をクリックします。

  3. [接続の設定] ページで、[接続名] ボックスに一意の名前を入力します。

  4. [ポート] ボックスに、LDAP インスタンスを作成するときに LDAP ポートとして指定したポート番号を入力します。

  5. [次のノードに接続する] セクションで、[識別名 (DN) または名前付けコンテキスト] を選択します。ボックスに、LDAP インスタンスを作成したときに入力したパーティション名を入力します。たとえば、「OU=Contoso,o=Marketing,C=US」と入力します。

  6. [接続に使う資格情報} セクションで、現在のユーザーが ADAM インスタンスの管理者である場合は [現在ログオンしているユーザーのアカウント] を選択します。別のアカウントを指定する場合は、[次のアカウント] を選択します。[OK] をクリックします。

ファーム管理者にディレクトリへのアクセスを許可する

Windows SharePoint Services のファーム管理者のアカウントがディレクトリへのアクセス権を持っていることを確認します。次の手順を使用して Readers ロールにユーザー アカウントを追加することで、アカウントにアクセスを許可できます。

ディレクトリにアクセスするアカウントを追加する

  1. ADAM ADSI Edit ツールで、目的の ADAM インスタンスが左側のウィンドウに表示されます。インスタンス名を展開し、次に名前付けコンテキストを展開して、作成された他のコンテナを表示します。

  2. 左側のウィンドウで、[CN=Roles] をクリックします。右側のウィンドウで、[CN=Readers] を右クリックし、[プロパティ] をクリックします。[CN=Readers のプロパティ] ページの [属性] の一覧で、[member] をクリックし、[編集] をクリックします。

  3. [複数値のセキュリティ プリンシパル付識別名エディタ] ページで、[Windows アカウントの追加] をクリックします。

  4. [ユーザー、コンピュータまたはグループの選択] ページで、追加する Windows アカウントの名前を入力し、[OK] をクリックします。

  5. [プロパティ] ページで [OK] をクリックします。

ディレクトリにユーザーを追加する

これで、次の手順に従って、ディレクトリにユーザーを追加できます。追加するユーザーのコンテナをディレクトリ内に作成することもできます。たとえば、サポート部門のユーザーとマーケティング部門のユーザーに個別のコンテナを作成できます。次の手順では、すべてのユーザーに 1 つのコンテナを作成します。

ディレクトリにユーザーを追加する

  1. 左側のウィンドウで、名前付けコンテキストを右クリックし、[新規作成]、[オブジェクト] の順にクリックします。[オブジェクトの作成] ページの [クラスを選択してください] の一覧で、[container] を選択します。[次へ] をクリックします。

  2. [オブジェクトの作成] ページで、[] ボックスに、ユーザーの追加先になるコンテナの一意の名前を入力します (たとえば、「Users」や「Support」と入力します)。[次へ] をクリックし、[完了] をクリックします。

  3. 左側のウィンドウで、作成したばかりのユーザー コンテナ オブジェクトを右クリックし、[新規作成]、[オブジェクト] の順にクリックします。

  4. [オブジェクトの作成] ページの [クラスを選択してください] の一覧で、[user] を選択します。[次へ] をクリックします。

  5. ユーザー名を追加するページで、[] ボックスにユーザーの名前を入力します。[次へ] をクリックします。

  6. ユーザーの属性を設定できるページで、[完了] をクリックします。

  7. ADAM ADSI Edit の右側のウィンドウで新しいユーザーを右クリックし、[パスワードのリセット] をクリックします。

  8. [パスワードのリセット] ページで、[新しいパスワード] ボックスに新しいパスワードを入力します。[パスワードの確認入力] にパスワードを再入力し、[OK] をクリックします。

    [!メモ] ユーザーに新しいパスワードを入力しているときには、ADAM によって、そのサーバー上に存在するすべてのパスワード ポリシーが適用されます。

  9. 必要に応じて手順 3. ~ 8. を繰り返し、その他のユーザーをユーザー コンテナ オブジェクトに追加します。