ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Unified Directory管理者ガイド
11g リリース2 (11.1.2)
B72794-04
  目次へ移動
目次

前
 
次
 

28 Oracle Enterprise User SecurityへのOracle Unified Directoryの統合

Oracle Enterprise User Security (EUS)を使用することによって、Oracle Database認証用に、LDAPに準拠したディレクトリ・サービスにユーザーIDを格納できます。

エンタープライズ・ユーザー・セキュリティを使用すると、エンタープライズ全体でデータベース・ユーザーを一元的に管理できます。エンタープライズ・ユーザーは、LDAPに準拠にしたディレクトリ・サービス内に作成されます。ディレクトリに登録された様々なエンタープライズ・データベースのロールや特権をこのエンタープライズ・ユーザーに割り当てることができます。

ユーザーは、Oracle Unified DirectoryまたはOracle Unified Directoryプロキシ・サーバーによってフロントエンド処理された外部LDAP準拠のディレクトリに格納されている資格証明を指定して、Oracle Databaseに接続します。データベースはLDAP検索操作を実行して、ユーザー固有の認証および認可情報について問い合せます。

Oracle Unified Directoryとエンタープライズ・ユーザー・セキュリティとを統合すると、追加の同期を行うことなく、LDAP準拠ディレクトリ・サービスに格納されているユーザーIDを活用できるため、認証機能と認可機能が強化され、かつ簡素化されます。

この章では、次のトピックを取り扱います:

28.1 このリリースでの新機能

このリリースにおけるOracle Unified DirectoryでのEUSのサポート内容は次のとおりです:

エンタープライズ・ユーザー・セキュリティの構成の詳細は、『Oracle Databaseエンタープライズ・ユーザー管理者ガイド』を参照してください。

28.2 統合シナリオの概要

Oracle Unified Directoryとエンタープライズ・ユーザー・セキュリティとを統合するには、次のいずれかのシナリオを選択できます:

28.3 エンタープライズ・ユーザー・セキュリティでディレクトリ・サーバーとして使用されるOracle Unified Directory

この項では、Oracle Unified Directoryをエンタープライズ・ユーザー・セキュリティに統合するために必要なタスクについて説明します。この際、Oracle Unified Directoryに格納されたユーザーIDを別途同期する必要はありません。これを行うには、次を実行します:

28.3.1 タスク1: エンタープライズ・ユーザー・セキュリティとの統合のためのOracle Unified Directoryの準備

EUSとの統合のために、Oracle Unified Directoryを準備する必要があります。この作業は、Oracle Unified Directoryをインストールする際に行うか、既存のOracle Unified Directoryサーバー・インスタンスで行います。

28.3.1.1 インストール時のエンタープライズ・ユーザー・セキュリティの有効化

このオプションは、Oracle Unified Directoryのインストール時に使用できます。Oracle Unified Directoryディレクトリ・サーバー・インスタンスの設定時に、そのサーバー・インスタンスとEUSとの統合を有効化します。この手順は、Oracle Fusion Middleware Oracle Unified Directoryインストレーション・ガイドのディレクトリ・サーバーの設定に関する項の説明に従ってください。


注意:

oud-setupのグラフィカル・インタフェース・オプションの実行時に「Oracleコンポーネントの統合」画面で「EUSで有効にする」を選択します。または、--cliオプションを指定してoud-setupを実行する場合は、インストーラの起動時に次のオプションを指定します:

oud-setup --eus

28.3.1.2 既存のインスタンスでの、ODSMを使用したエンタープライズ・ユーザー・セキュリティの有効化

既存のディレクトリ・サーバー・インスタンスで、ODSMを使用してEUS用の新しい接尾辞を作成できます。


注意:

この機能と同等のコマンド行はありません。


ODSMを使用してEUS用の接尾辞を作成する手順は次のとおりです:

  1. SSLが有効化されたLDAP接続ハンドラがサーバー・インスタンスに存在することを確認します。

    SSLが有効になっていない場合は、第17.2項「Oracle Directory Services Managerを使用したサーバー構成の管理」で説明している手順に従ってLDAPS接続を追加します。

  2. 第21.2項「Oracle Directory Services Managerからサーバーへの接続」の説明に従って、ODSMからディレクトリ・サーバーに接続します。

  3. 「ホーム」タブを選択します。

  4. 「構成」メニューで、「ローカル・ネーミング・コンテキストの作成」を選択します。

    「新規ローカル・ネーミング・コンテキスト」ウィンドウが表示されます。

  5. 次の詳細を入力します:

    1. 「ベースDN」フィールドに、作成する接尾辞の名前を入力します。


      注意:

      ユーザー・データがすでに移入されている既存の接尾辞では、EUSの有効化はできません。


    2. 「ディレクトリ・データ・オプション」グループから、接尾辞へのデータの移入オプションとして次のいずれかを選択します:

      「ベース・エントリの作成のみ」では、接尾辞のベース・エントリとともにデータベースが作成されます。その他のエントリは、接尾辞の作成後に追加する必要があります。

      「データベースを空のままにする」では、空のデータベースが作成されます。ベース・エントリおよびその他のエントリは、接尾辞の作成後に追加する必要があります。


      注意:

      接尾辞は少なくとも1つのエントリを含んでいる必要があるため、「データベースを空のままにする」オプションは選択しないでください。


      「生成されたサンプル・データのインポート」を選択すると、接尾辞にサンプル・エントリが移入されます。

      「ユーザー・エントリ数」フィールドに、生成するエントリ数を指定します。ODSMを使用してインポートできるサンプル・エントリ数は、最大30,000です。30,000を超える数のエントリを追加する場合は、import-ldifコマンドを使用する必要があります。

    3. 「Oracleコンポーネントの統合」リージョンで、「エンタープライズ・ユーザー・セキュリティ(EUS)に使用可能」を選択して、新しい接尾辞を有効にします。

      EUSを選択すると、この接尾辞が作成されるほかに、2つの接尾辞"cn=oracleschemaversion""cn=oraclecontext"が自動的に作成されます。また、EUSワークフロー要素がローカルのバックエンド・ワークフロー要素の前に追加されます。さらに、"cn=schema"のDNリネーム・ワークフロー要素が追加され、"cn=subschemasubentry" DNを使用してこの要素にアクセスできるようになります。

    4. 「ネットワーク・グループ」リージョンで、次の手順に従って1つ以上のネットワーク・グループに接尾辞をアタッチします:

      • 接尾辞を既存のネットワーク・グループにアタッチする場合は、「既存のものを使用」を選択し、必要なネットワーク・グループをリストから選択します。

      • 接尾辞を新しいネットワーク・グループにアタッチする場合は、「新規作成」を選択し、作成するネットワーク・グループ名を「名前」フィールドに入力します。

      同じ接尾辞を複数のネットワーク・グループにアタッチできます。

    5. 「ワークフロー要素」リージョンで、次のいずれかの手順に従ってワークフロー要素に接尾辞をアタッチします:

      • 接尾辞を既存のワークフロー要素にアタッチする場合は、「既存のものを使用」を選択し、必要なワークフロー要素をリストから選択します。

      • 接尾辞を新しいワークフロー要素にアタッチする場合は、「新規作成」を選択し、作成するワークフロー要素名を「名前」フィールドに入力します。

    6. 「作成」をクリックします。

      次の確認メッセージが表示されます:

      構成が正常に作成されました。

28.3.2 タスク2: ユーザーおよびグループの場所の構成

EUSに対するOracle Unified Directoryの構成後、次の手順を実行してユーザーおよびグループの格納に使用されるネーミング・コンテキストを構成する必要があります。

  1. LDIFテンプレート・ファイル(install_dir/config/EUS/modifyRealm.ldif)を見つけます。

  2. modifyRealm.ldifファイルを次のように編集します:

    • dc=example,dc=comをサーバー・インスタンスの現在のネーミング・コンテキストに置き換えます。

    • ou=peopleou=groupsをDIT内のユーザー・エントリとグループ・エントリの現在の場所にそれぞれ置き換えます。

  3. ldapmodifyコマンドを使用して、編集済のLDIFテンプレート・ファイルで構成を更新します。例:

    $ ldapmodify -h localhost -p 4444 -D "cn=directory manager" -j pwd-file -v -f modifyRealm.ldif
    

28.3.3 タスク3: Oracle Unified Directoryに対応した、Oracle Databaseの構成

次の手順に従って、エンタープライズ・ユーザー・セキュリティに対応するようにOracle Databaseを構成する必要があります:

28.3.3.1 Oracle Unified Directoryを使用するためのデータベースの構成

Net Configuration Assistant (NetCA)ツールを実行して、Oracle Unified Directoryのホスト名とポート番号をデータベースに対して構成します。

ディレクトリを使用するようにデータベースを構成するには:

  1. Oracle Net Configuration Assistantを起動します:

    Unix

    コマンド行でnetcaを実行します(これは$ORACLE_HOME/binにあります)。

    Windows

    「スタート」「プログラム」「Oracle - HOME_NAME」「構成および移行ツール」「Net Configuration Assistant」の順に選択します。

    「Oracle Net Configuration Assistant: ようこそ」画面が表示されます。

  2. 「ディレクトリ使用構成」を選択して「次へ」をクリックします。

    「Oracle Net Configuration Assistant: ディレクトリ使用構成-ディレクトリ・タイプ」画面が表示されます。

  3. ディレクトリ・タイプとして「Oracle Unified Directory」を選択して、「次へ」をクリックします。

    「Oracle Net Configuration Assistant: ディレクトリ使用構成-ディレクトリの場所」画面が表示されます。

  4. 次の詳細を入力します:

    • ホスト名: Oracle Unified Directoryサーバーを実行するホストの名前を入力します。

    • ポート: Oracle Unified Directoryのポート番号を入力します。

    • SSLポート: Oracle Unified DirectoryのSSLポート番号を入力します。

    「次へ」をクリックします。

    「Oracle Net Configuration Assistant: ディレクトリ使用構成-Oracleコンテキストの選択」画面が表示されます。

  5. cn=OracleContext,<your base DN>を選択します。<your base DN>はユーザー・エントリとグループ・エントリを格納するためのネーミング・コンテキストです。「次へ」をクリックします。

    ディレクトリ使用構成の完了画面が表示されます。

  6. ディレクトリ使用構成が正常に完了したことを確認します。「次へ」をクリックします。

  7. 「終了」をクリックします。

NetCAによって、$ORACLE_HOME/network/adminディレクトリ(Unixの場合)またはORACLE_HOME\network\adminディレクトリ(Windowsの場合)にldap.oraファイルが作成されます。このファイルには、ディレクトリに関する接続情報の詳細が格納されます。

例28-1 ldap.oraファイル

DIRECTORY_SERVERS= (oudserver:1389:1636)
DEFAULT_ADMIN_CONTEXT = "dc=eus,dc=com"
DIRECTORY_SERVER_TYPE = OID

Oracle Unified Directoryサーバーは、LDAPポート1389およびLDAPSポート1636を使用して、ホスト名oudserver上で実行されています。ユーザーおよびグループは、dc=eusおよびdc=comに格納されます。

28.3.3.2 Oracle Unified Directoryへのデータベースの登録

データベースをディレクトリ・サービスに登録します。Database Configuration Assistant (DBCA)ツールを使用して、データベースをOracle Unified Directoryに登録できます。

データベース情報(データベース名および接続情報)を含むエントリが作成されると、データベースがOracle Unified Directoryでリクエストを実行する際の認証に使用されます。

データベースをディレクトリに登録するには:

  1. dbcaコマンドを使用してDBCAを起動します。

    • UNIXシステムでは、次のコマンドを使用してDBCAを起動できます:

      $ORACLE_HOME/bin/dbca

    • Windowsでは、「スタート」メニューからDBCAを起動することもできます:

      「スタート」「すべてのプログラム」「Oracle - OracleHomeName」「構成および移行ツール」の順にクリックし、「Database Configuration Assistant」を選択します。

    「ようこそ」画面が表示されます。

  2. 「次へ」をクリックします。

    「操作」画面が表示されます。

  3. 「データベース・オプションの構成」を選択します。

    「次へ」をクリックします。

    「データベース」画面が表示されます。

  4. 構成するデータベース名を選択します。オペレーティング・システムの認証を使用していない場合は、SYSユーザー資格証明の入力を求められることもあります。

    「次へ」をクリックします。

    「管理オプション」画面が表示されます。

  5. Database Controlを使用してデータベースの管理を続行する場合は、「Database Controlで構成済のデータベースを維持」を選択します。また、Grid Controlを使用したデータベースの管理を選択することもできます。

    「次へ」をクリックします。

    「セキュリティ設定」画面が表示されます。

  6. 11gのセキュリティ設定を維持する場合は、「11gのデフォルトの高度セキュリティ設定を維持」を選択します。

    「次へ」をクリックします。

    「ネットワーク構成」画面が表示されます。

  7. 「データベースを登録する」を選択してデータベースをディレクトリに登録します。Oracle Unified Directoryへのデータベースの登録を許可されたユーザーの識別名(DN)を入力します。また、ディレクトリ・ユーザーのパスワードも入力します。ウォレット・パスワードを入力します。「パスワードの確認」フィールドにパスワードを再度入力します。

    「次へ」をクリックします。


    注意:

    データベースでは、ランダムに生成されたパスワードを使用してディレクトリにログインします。このデータベース・パスワードは、Oracleウォレットに格納されます。また、このウォレットを使用して、SSL接続に必要な証明書を格納することもできます。

    指定するウォレット・パスワードは、データベース・パスワードとは異なります。ウォレット・パスワードは、ウォレットの保護に使用します。


    「データベース・コンポーネント」画面が表示されます。

  8. 「次へ」をクリックします。

    「接続モード」ページが表示されます。

  9. 「専用サーバー・モード」または「共有サーバー・モード」を選択します。

    「終了」をクリックします。

    「確認」ダイアログ・ボックスが表示されます。

  10. 「OK」をクリックします。

  11. Oracle Unified DirectoryサーバーでDBCAによって作成される次のエントリを検索することで、データベース登録を確認できます。

    cn=<database name>,cn=oraclecontext,<your baseDN>
    

注意:

データベースをディレクトリに登録した後に、データベース・ウォレットの自動ログインが有効になっていることを確認します。デフォルトのウォレットは、$ORACLE_BASE/admin/database_sid/walletディレクトリ(Unixの場合)またはORACLE_BASE\admin\database_sid\walletディレクトリ(Windowsの場合)に作成されます。

ウォレット・ディレクトリにcwallet.ssoファイルが存在することをチェックすることで、ウォレットに対する自動ログインが有効であることを確認できます。このファイルが存在しない場合は、Oracle Wallet Managerを使用してウォレットを開き、ウォレットに対する自動ログインを有効にするオプションを使用して、自動ログインを有効にできます。詳細は、Oracle Database Advanced Security管理者ガイドOracle Wallet Managerの使用に関する項を参照してください。


28.3.3.3 エンタープライズ・ユーザーのマッピング

Oracle Databaseエンタープライズ・ユーザー・セキュリティ管理者ガイド共有スキーマへのエンタープライズ・ユーザーのマッピングに関する項の説明に従って、エンタープライズ・マネージャを使用してユーザースキーマ・マッピングを作成する必要があります。

28.3.3.4 エンタープライズ・ユーザーとしてのデータベースへの接続

Oracle Databaseエンタープライズ・ユーザー・セキュリティ管理者ガイドエンタープライズ・ユーザーとしてのデータベースへの接続に関する項の説明に従って、エンタープライズ・ユーザーとしてデータベースに接続します。

28.3.3.5 エンタープライズ・ロールの使用

詳細は、Oracle Databaseエンタープライズ・ユーザー・セキュリティ管理者ガイドエンタープライズ・ロールの使用に関する項を参照してください。

28.3.3.6 プロキシ権限の使用

詳細は、Oracle Databaseエンタープライズ・ユーザー・セキュリティ管理者ガイドプロキシ権限の使用に関する項を参照してください。

28.4 エンタープライズ・ユーザー・セキュリティで外部LDAPディレクトリのプロキシ・サーバーとして使用されるOracle Unified Directory

この項では、ユーザーIDが外部LDAPディレクトリ・サーバーに格納されている場合に、Oracle Unified DirectoryをEUSに統合するために必要な手順について説明します。

Oracle Unified Directoryが外部LDAPリポジトリのフロントエンド処理を実行するプロキシとして構成されている場合は、EUSを外部LDAPディレクトリに統合できます。EUSの構成の詳細はOracle Unified Directoryにローカルで格納され、エンタープライズ・ユーザーとエンタープライズ・グループの詳細のみがリモートの外部LDAPディレクトリに格納されます。

Oracle Unified DirectoryをOracle Enterprise User Securityに統合するには、次の手順を完了する必要があります。


注意:

ORACLE_HOME/config/eus/ディレクトリ(Unixの場合)またはORACLE_HOME\config\eus\ディレクトリ(Windowsの場合)のバックアップ・コピーを作成します。エンタープライズ・ユーザー・セキュリティ統合で必要な構成ファイルはすべてeusディレクトリにあります。eusディレクトリのバックアップ・コピーを作成すると、使用する環境に基づいているオリジナルのeusディレクトリにあるファイルをテンプレートとして編集しつつ、オリジナル・ファイルのコピーを保持しておくことができます。


28.4.1 タスク1: 外部ディレクトリでの統合の準備

ユーザー・エントリとグループ・エントリが外部LDAPディレクトリに格納されている場合、このディレクトリ・サーバーをエンタープライズ・ユーザー・セキュリティ用に準備する必要があります。

次の外部LDAP準拠ディレクトリをサポートしています:

  • Microsoft Active Directory

  • Novell eDirectory

  • Oracle Directory Server Enterprise Edition

  • Oracle Unified Directory


    注意:

    別のOracle Unified Directoryをプロキシ・サーバーとして持つ外部ディレクトリ・サーバーとして、Oracle Unified Directoryインスタンスを構成できます。


この手順は、外部ディレクトリのタイプごとに次の項に分かれています:


注意:

Microsoft Active Directoryを除いて、これらの外部ディレクトリではバックエンドのLDAPスキーマ拡張は不要になりました。これらの変更はOracle Unified Directoryローカル・ストアで実行されるようになりました。

Active Directoryの場合は、orclCommonAttribute属性を追加するための、スキーマに対する単一の最小限の変更のみが必要です。


28.4.1.1 Microsoft Active DirectoryのユーザーID

ユーザーIDがActive Directoryに格納されている場合に、Oracle Unified Directoryをエンタープライズ・ユーザー・セキュリティに統合する手順は次のとおりです:

  1. Active Directoryイメージのバックアップ・コピーを作成します。Active Directory内部のスキーマ拡張は永続的で、キャンセルできません。バックアップ・イメージがあると、必要になったときに変更をすべてリストアできます。

  2. Oracle Unified Directoryに組み込まれているJavaクラスを使用してエンタープライズ・ユーザー・セキュリティの必須スキーマであるExtendADをActive Directoryにロードするために、次のコマンドを実行します。

    ExtendADファイルは、$ORACLE_HOME/config/EUS/ActiveDirectory/ディレクトリ(Unixの場合)またはORACLE_HOME\config\EUS\ActiveDirectory\ディレクトリ(Windowsの場合)にあります。ORACLE_HOME/jdk/binディレクトリのjava実行可能ファイルを使用できます。

    java ExtendAD -h Active_Directory_Host_Name -p Active_Directory_Port 
    -D Active_Directory_Admin_DN -w Active_Directory_Admin_Password
    –AD Active_Directory_Domain_DN -commonattr
    

    例:

    java ExtendAD -h myhost -p 389 -D cn=administrator,cn=users,dc=example,dc=com -w <pwd> -AD dc=example,dc=com -commonattr
    
  3. 次の手順に従って、Oracle Unified Directoryパスワード変更通知プラグインoidpwdcn.dllをインストールします:

    1. Windowsのタイプに応じて、次の操作を行います:

      Windows 32ビット

      OUD_HOME\config\EUS\ActiveDirectory\win\oidpwdcn.dllファイルをActive DirectoryのWINDOWS\system32ディレクトリにコピーします。

      Windows 64ビット

      OUD_HOME\config\EUS\ActiveDirectory\win64\oidpwdcn.dllファイルをActive DirectoryのWINDOWS\system32ディレクトリにコピーします。

    2. regedt32またはregedt64を使用してレジストリを編集し、oidpwdcn.dllを有効にします。コマンド・プロンプトでregedt32と入力して、regedt32を起動します。

    3. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\レジストリにあるNotification Packagesエントリの末尾にoidpwdcnを追加します。例:

      RASSFM
      KDCSVC
      WDIGEST
      scecli
      oidpwdcn
      

      それによって、パスワードDLLが有効化され、EUSで必要なパスワード検証がorclCommonAttribute属性に移入されます。

    4. 変更したら、Active Directoryシステムを再起動します。

  4. ldapmodifyを実行して、Active Directoryでの匿名ログインを許可します:

    ldapmodify -h <ADhost> -p <AD port> -D <AD dirmgr> -w <pwd>
    dn: cn=directory service,cn=windows nt,cn=services,cn=configuration,dc=example,dc=com
    changetype: modify
    replace: dsHeuristics
    dsHeuristics: 0000002
    

    注意:

    dc=example,dc=comをActive DirectoryサーバーのDNに必ず置き換えてください。


  5. すべてのActive Directoryユーザーのパスワードをリセットすることで、プラグインがパスワード変更を取得して、パスワード検証を生成および格納できるようにします。

  6. 次の手順に従って、Active Directoryの設定を検証します:

    1. Active Directoryユーザーのパスワードを変更します。

    2. パスワードを変更したユーザーをActive Directoryで検索します。orclCommonAttribute属性に、生成されたハッシュ・パスワード値が含まれることを確認します。

      この値は、Active DirectoryにorclCommonAttribute属性定義を追加します。

  7. 第28.4.2項「タスク2: Oracle Unified Directoryでの統合の準備」で説明しているタスクを実行して統合を行うため、にOracle Unified Directoryを準備します。

  8. 第28.4.3項「タスク3: ユーザーおよびグループの場所の構成」の説明に従って、ユーザーとグループを構成します。

  9. 第28.4.4項「タスク4: エンタープライズ・ユーザー・セキュリティに対応した、Oracle Databaseの構成」の説明に従って、Oracle Databaseを構成します。

28.4.1.2 Oracle Directory Server Enterprise EditionのユーザーID

ユーザーIDがOracle Directory Server Enterprise Editionに格納されている場合に、Oracle Unified Directoryをエンタープライズ・ユーザー・セキュリティに統合する手順は次のとおりです:

  1. Oracle Directory Server Enterprise Editionからldapmodifyコマンドを次のように実行して、アカウント・ロックの拡張操作を有効化します:

    ldapmodify -h <ODSEE Server> -p <ODSEE port> -D <ODSEE Admin ID> -w <ODSEE Admin password>
    dn: oid=1.3.6.1.4.1.42.2.27.9.6.25,cn=features,cn=config
    changetype: add
    objectclass: directoryServerFeature
    oid: 1.3.6.1.4.1.42.2.27.9.6.25
    cn: Password Policy Account Management
    
  2. 第28.4.2項「タスク2: Oracle Unified Directoryでの統合の準備」で説明しているタスクを実行して統合を行うため、にOracle Unified Directoryを準備します。

  3. 第28.4.3項「タスク3: ユーザーおよびグループの場所の構成」の説明に従って、ユーザーとグループを構成します。

  4. 第28.4.4項「タスク4: エンタープライズ・ユーザー・セキュリティに対応した、Oracle Databaseの構成」の説明に従って、Oracle Databaseを構成します。

28.4.1.3 Novell eDirectoryのユーザーID

ユーザーIDがNovell eDirectoryに格納されている場合に、Oracle Unified Directoryをエンタープライズ・ユーザー・セキュリティに統合する手順は次のとおりです:

  1. 統合用にNovell eDirectoryを構成するには、eDirectoryのユニバーサル・パスワードを有効化し、管理者がユーザー・パスワードを取得できるようにします。詳細は、Novell eDirectoryのパスワード管理に関するドキュメントを参照してください。

  2. 第28.4.2項「タスク2: Oracle Unified Directoryでの統合の準備」で説明しているタスクを実行して統合を行うため、にOracle Unified Directoryを準備します。

  3. 第28.4.3項「タスク3: ユーザーおよびグループの場所の構成」の説明に従って、ユーザーとグループを構成します。

  4. 第28.4.4項「タスク4: エンタープライズ・ユーザー・セキュリティに対応した、Oracle Databaseの構成」の説明に従って、Oracle Databaseを構成します。

28.4.1.4 Oracle Unified DirectoryのユーザーID

別のOracle Unified Directoryをプロキシ・サーバーとして持つ外部ディレクトリ・サーバーとして、Oracle Unified Directoryインスタンスを構成できます。このシナリオでは、EUSの構成の詳細はOracle Unified Directoryプロキシ・サーバーにローカルで格納され、エンタープライズ・ユーザーとエンタープライズ・グループの詳細のみが外部Oracle Unified Directoryに格納されます。

ユーザーIDがOracle Unified Directoryに格納されている場合に、次の手順を実行してOracle Unified Directoryをエンタープライズ・ユーザー・セキュリティに統合します。

  1. dsconfigコマンドを次のように実行して、パスワード記憶スキームとしてSalted SHA-1を使用するようにデフォルトのパスワード・ポリシーを変更します。

    dsconfig -h <OUD host> -p <OUD admin port> -D <OUD dirmgr> -j <pwdfile> -X -n set-password-policy-prop --policy-name "Default Password Policy" --set default-password-storage-scheme:"Salted SHA-1"
    

    注意:

    エンタープライズ・ユーザーとエンタープライズ・グループの詳細を格納するOracle Unified Directoryのデフォルトのパスワード・ポリシーを変更します。プロキシ・サーバーとして機能するOracle Unified Directoryインスタンスのデフォルトのパスワード・ポリシーは変更しないでください。


  2. 第28.4.2項「タスク2: Oracle Unified Directoryでの統合の準備」で説明しているタスクを実行して統合を行うため、にOracle Unified Directoryプロキシ・サーバーを準備します。

  3. 第28.4.3項「タスク3: ユーザーおよびグループの場所の構成」の説明に従って、ユーザーとグループを構成します。

  4. 第28.4.4項「タスク4: エンタープライズ・ユーザー・セキュリティに対応した、Oracle Databaseの構成」の説明に従って、Oracle Databaseを構成します。

28.4.2 タスク2: Oracle Unified Directoryでの統合の準備

次の手順に従って、Oracle Unified Directoryで外部LDAPディレクトリに関する構成を行います:

28.4.2.1 Oracle Unified Directoryプロキシ・サーバーでのエンタープライズ・ユーザー・セキュリティの構成

EUSとの統合のために、Oracle Unified Directoryを準備する必要があります。この作業は、Oracle Unified Directoryプロキシ・サーバーのインストール時や既存のOracle Unified Directoryプロキシ・サーバー・インスタンスに対して行います。

28.4.2.1.1 プロキシ・サーバーのインストール時のエンタープライズ・ユーザー・セキュリティの有効化

Oracle Unified Directoryディレクトリ・サーバー・インスタンスの設定時に、そのサーバー・インスタンスとEUSとの統合を有効化できます。この手順は、Oracle Fusion Middleware Oracle Unified Directoryインストレーション・ガイドのプロキシ・サーバーの設定に関する項の説明に従ってください。


注意:

  • oud-proxy-setupのグラフィカル・インタフェース・オプションの実行時に「デプロイメント・オプション」画面で「EUSを構成します」を選択します。または、--cliオプションを指定してoud-proxy-setupを実行する場合は、インストーラの起動時に次のオプションを指定します:

    oud-proxy-setup --eusContext {namingContext}
    
  • --cliオプションを指定してoud-proxy-setupを実行する場合は、dsconfigを使用して、LDAPサーバー拡張、プロキシ・ワークフロー要素およびEUSワークフロー要素を手動で構成する必要があります。グラフィカル・インタフェースでは、これらは自動構成されます。

  • Novell eDirectory,の場合、oud-proxy-setupグラフィカル・インタフェースの実行時に「サーバーの追加」をクリックし、プロトコルとして「LDAPS」を選択し、「バックエンド・サーバー」画面にNovell eDirectory LDAPSのポート番号を入力します。


28.4.2.1.2 既存のプロキシ・サーバー・インスタンスでのエンタープライズ・ユーザー・セキュリティの有効化

既存のOracle Unified Directoryプロキシ・サーバー・インスタンスでエンタープライズ・ユーザー・セキュリティの構成を行う手順は次のとおりです:

  1. SSLが有効化されたLDAP接続ハンドラがサーバー・インスタンスに存在することを確認します。

    SSLが有効になっていない場合は、第17.2項「Oracle Directory Services Managerを使用したサーバー構成の管理」で説明している手順に従ってLDAPS接続を追加します。

  2. 第21.2項「Oracle Directory Services Managerからサーバーへの接続」の説明に従って、ODSMからプロキシ・サーバーに接続します。

  3. 「ホーム」タブを選択します。

  4. 「構成」メニューで、「リモートEUSネーミング・コンテキストの作成」を選択します。

    「リモートEUSネーミング・コンテキストの作成」ウィンドウが表示されます。

  5. 次の詳細を入力します:

    • ベースDN: 接尾辞の名前を入力します。

    • ネットワーク・グループ: 接尾辞にアタッチするネットワーク・グループを選択します。

    • サーバー・タイプ: EUSユーザー・エントリを格納するサーバーを選択します。

    • ホスト名: リモート・サーバーのホスト名を入力します。

    • 使用可能なポート: リモート・サーバーのLDAPポート、LDAPSポートまたはLDAPポートとLDAPSポートを入力します。


      注意:

      Novell eDirectoryの場合は、Oracle Unified Directoryプロキシ・サーバーのLDAPSポートを入力します。


    • すべて信頼: リモート・サーバーが提示するすべての証明書を信頼する場合は、このチェック・ボックスを選択します。

    • 信頼マネージャ: サーバーがリクエストを転送するためにリモート・サーバーのLDAPSポートに接続するときに使用する信頼マネージャを選択します。

  6. 「作成」をクリックします。

    次の確認メッセージが表示されます:

    構成が正常に作成されました。

28.4.2.2 インストール後の構成手順の実行

第28.4.2.1項「Oracle Unified Directoryプロキシ・サーバーでのエンタープライズ・ユーザー・セキュリティの構成」で説明されている必要な構成の完了後、Oracle Unified Directoryプロキシ・サーバーが外部LDAPディレクトリ・サーバーとの通信に使用する資格証明を構成する必要があります。これには次の手順を実行します。

  1. dsconfigコマンドを次のように使用してリモート・ルートDNおよびリモート・ユーザー・アカウントを設定して、外部LDAPディレクトリ・サーバーのプロキシ・ワークフロー要素を構成します。

    dsconfig set-workflow-element-prop \
              --element-name proxy-we1 \
              --set remote-root-dn:cn=administrator,cn=users,dc=example,dc=com \
              --set remote-root-password:******** \
              --hostname localhost \
              --port 4444 \
              --trustAll \
              --bindDN cn=directory\ manager \
              --bindPasswordFile pwd.txt \
              --no-prompt
    

    注意:

    proxy-we1を、外部LDAPディレクトリ・サーバーに対応するプロキシ・ワークフロー要素の名前に置換する必要があります。


  2. 外部LDAP準拠ディレクトリのプロキシ・ワークフロー要素は、use-client-identityモードで構成されます。このモードを維持する場合は、除外リスト、リモートLDAPサーバーのバインドDNおよびリモートLDAPサーバーのバインド・パスワードを定義する必要があります。EUSが有効化されている場合、データベースは自身の資格証明を使用して接続を行い、外部LDAPサーバー上で検索を実行します。データベース・エントリはOracle Unified Directoryプロキシ・サーバーにローカルに格納され、外部LDAPサーバー上にはデータベース・エントリは存在しないため、代替IDを使用して外部LDAPサーバーへのバインドが行われます。dsconfigコマンドを次のように使用して、代替IDを定義します。

    dsconfig set-workflow-element-prop \
              --element-name proxy-we1 \
              --add exclude-list:cn=directory\ manager \
              --add exclude-list:cn=oraclecontext,dc=example,dc=com \
              --set remote-ldap-server-bind-dn:cn=administrator,cn=users,dc=example,dc=com \
              --set remote-ldap-server-bind-password:******** \
              --hostname localhost \
              --port 4444 \
              --trustAll \
              --bindDN cn=directory\ manager \
              --bindPasswordFile pwd.txt \
              --no-prompt
    

28.4.3 タスク3: ユーザーおよびグループの場所の構成

EUSに対するOracle Unified Directoryの構成後、次の手順を実行してユーザーおよびグループの格納に使用されるネーミング・コンテキストを構成する必要があります。

  1. LDIFテンプレート・ファイル(install_dir/config/EUS/modifyRealm.ldif)を見つけます。

  2. modifyRealm.ldifファイルを次のように編集します:

    • dc=example,dc=comをサーバー・インスタンスの現在のネーミング・コンテキストに置き換えます。

    • ou=peopleou=groupsをDIT内のユーザー・エントリとグループ・エントリの現在の場所にそれぞれ置き換えます。

  3. ldapmodifyコマンドを使用して、編集済のLDIFテンプレート・ファイルで構成を更新します。例:

    $ ldapmodify -h localhost -p 4444 -D "cn=directory manager" -j pwd-file -v -f modifyRealm.ldif
    

28.4.4 タスク4: エンタープライズ・ユーザー・セキュリティに対応した、Oracle Databaseの構成

第28.3.3項「タスク3: Oracle Unified Directoryに対応した、Oracle Databaseの構成」の説明に従って、Oracle Databaseを構成する必要があります。

28.5 エンタープライズ・ユーザーとしてのデータベースへの接続

統合を検証するために、SQLPLUSを使用してエンタープライズ・ユーザーとしてデータベースに接続できます。

$ sqlplus
SQL> CONNECT joe
Enter password:
Connected.
SQL> 

エラーは第C項「エンタープライズ・ユーザー・セキュリティのトラブルシューティング」を参照してください。

28.6 パスワード・ポリシー

パスワード・ポリシー: パスワード・ポリシーは、アイデンティティ管理レルムのすべてのユーザー・パスワードに適用されるルール・セットです。パスワード・ポリシーには、パスワードの難易度、パスワードの最低限の文字数などが含まれます。アカウントのロックアウトとパスワード有効期限の設定も含まれます。

データベースはOracle Unified Directoryと通信し、パスワード・ポリシー違反についてレポートするようにOracle Unified Directoryにリクエストします。データベースは、Oracle Unified Directoryからポリシー違反に関するレスポンスを取得すると、適切な警告またはエラー・メッセージをユーザーに表示します。

データベースは次のイベントをレポートします:

エンタープライズ・ユーザーによってデータベースへのログイン試行が行われると、Oracle Unified Directoryまたはサポートされている外部LDAP準拠ディレクトリでそのユーザー・アカウントのステータスが更新されます。たとえば、データベースへのログイン試行が連続して失敗すると、ディレクトリのパスワード・ポリシーに従って、そのアカウントはディレクトリでロックされます。