8.2.4 ウォレットを使用するためのLDAPネーミング・アダプタの構成

クライアントLDAPネーミング・アダプタは、LDAPディレクトリへの接続中にLDAPバインドを認証し、接続文字列名を解決します。認証中にOracleウォレットを使用するようにアダプタを構成できます。

  1. LDAPサーバー証明書を取得し、Oracleウォレットを作成して、証明書およびLDAPユーザー資格証明をウォレット・トラストストアに格納します。
    1. openssl s_clientを使用して、LDAPディレクトリ・サーバーからLDAPサーバー証明書を取得します。
      openssl s_client -connect LDAP server host:port -showcerts -outform PEM

      -connect LDAP server host:portオプションは、接続のLDAPディレクトリ・サーバーのホスト名およびポートを指定します。-showcertsオプションは、サーバーによって送信されたLDAPサーバーの証明書リストを表示します。-outform PEMオプションは、サーバー証明書をファイル・システム・ディレクトリ(/tmp/ldapservercert.txtなど)にPEM形式で抽出します。

    2. 空のOracleウォレットを作成します。
      orapki wallet create -wallet wallet_directory

      -wallet wallet_directoryオプションは、ウォレットを作成するファイル・システム・ディレクトリの場所を指定します。

    3. LDAPサーバー証明書をウォレットに追加します。
      orapki wallet add -wallet wallet_directory -trusted_cert -cert

      -certオプションは、LDAPサーバー証明書を格納したファイル・システム・ディレクトリの場所(/tmp/ldapservercert.txtなど)を指定します。

    4. LDAPユーザー名のDNを使用して、ウォレットにエントリを作成します。
      mkstore -wrl wallet_directory -createEntry oracle.ldap.client.dn dn_of_ldap_username

      たとえば:

      mkstore -wrl /app/wallet -createEntry oracle.ldap.client.dn cn=userinldap,dc=example,dc=com

      Microsoft Active Directoryの場合、userPrincipalNameまたはダウンレベルのログオン名(sAMAccountName)属性を指定することもできます。

    5. LDAPパスワードを使用して、ウォレットにエントリを作成します。
      mkstore -wrl wallet_directory -createEntry oracle.ldap.client.password ldap_password
    6. ウォレットの自動ログインを有効にします。
      orapki wallet create -wallet wallet_directory -auto_login

      ノート:

      • mkstoreウォレット管理コマンドライン・ツールは、Oracle Database 23aiでは非推奨であり、将来のリリースで削除される可能性があります。

        ウォレットの管理には、orapkiコマンドライン・ツールの使用をお薦めします。

      • 自動ログイン・ウォレットは、ファイル・システム権限によって保護されます。オペレーティング・システム・ユーティリティを使用して、クライアントに対してのみ読取りおよび書込み権限を付与することでウォレット・ディレクトリを保護します。

      • Oracle Database 23aiでは、新しい自動ログイン・ウォレット・バージョン(7)が導入されました。Oracleローカル自動ログイン・ウォレットのバージョン6は非推奨です。

        ローカル自動ログイン・ウォレットは、orapkiで変更することで更新できます。

  2. WALLET_LOCATIONパラメータを使用して、sqlnet.oraファイルにウォレット・ディレクトリを指定します。
    WALLET_LOCATION=
      (SOURCE=
        (METHOD=file)
        (METHOD_DATA=
           (DIRECTORY=wallet_directory)))

    たとえば:

    WALLET_LOCATION=
      (SOURCE=
        (METHOD=FILE)
        (METHOD_DATA=
           (DIRECTORY=/app/wallet/)))

    このパラメータの構成の詳細は、WALLET_LOCATIONを参照してください。

    ノート:

    パラメータWALLET_LOCATIONは、Oracle DatabaseサーバーのOracle Database 23aiでの使用は非推奨です。Oracle Databaseクライアントおよびリスナーでの使用は非推奨ではありません。

    Oracle Databaseサーバーの場合は、WALLET_LOCATIONを使用するかわりに、WALLET_ROOTシステム・パラメータの使用をお薦めします。

  3. sqlnet.oraファイルでLDAP接続の認証設定を構成します。
    • NAMES.LDAP_AUTHENTICATE_BIND=TRUEを設定して、(WALLET_LOCATIONで定義された)ウォレット・ディレクトリを使用してLDAP接続が認証されるように指定します。

    • NAMES.LDAP_AUTHENTICATE_BIND_METHOD=LDAPS_SIMPLE_AUTHを設定して、LDAPS (LDAP over TLS接続)で簡易認証方式を使用します。

    これらの設定の構成の詳細は、NAMES.LDAP_AUTHENTICATE_BINDおよびNAMES.LDAP_AUTHENTICATE_BIND_METHODを参照してください。

  4. Oracle Net Managerを使用して、LDAPサーバーに1つ以上のディレクトリ・エントリを追加します。
  5. SQL*Plusまたはその他のデータベース・クライアントを使用して、名前解決を確認します。