プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle API Catalog管理者ガイド
12cリリース1 (12.1.3)
E59448-03
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

7 外部の認証ツールを使用するOracle API Catalogの構成

この章では、LDAP/Active Directoryなどの外部の認証ツールを使用したOracle API Catalogの認証方法について説明します。

この章には、次のセクションがあります。

7.1 概要

この項では、Oracle API Catalogで、ユーザーを認証するためにLDAP/Active Directoryを使用する方法について説明します。

この項には次のトピックが含まれます:

7.1.1 LDAP/Active Directory

ユーザーの認証にLDAP/Active Directory(AD)を使用する場合、LDAP/Active Directoryサーバーを使用する前に、ユーザーの部署とロールの構成にいくつかの考慮が必要です。統合を有効にすると、すべてのユーザーがLDAP/ADを介して認証されます。そのためには、Oracle API Catalogのデータベース内に作成された、LDAP/ADからのユーザー名と一致する、少なくとも1つの管理者レベルのユーザー・アカウントが必要です。LDAP/ADが有効な場合も、Oracle API Catalog内の管理機能が実行できるように、このユーザー・アカウントには管理者のロールを割り当てる必要があります。

LDAP/ADからのロール同期が有効になっている場合は、少なくとも1つのユーザー・アカウントに管理者レベルのロールを割り当てる必要があります。ロール同期のオプションを使用する前に、Oracle API Catalog内でLDAPロールを作成し、適切なOracle API Catalogの権限を割り当てる必要があります。ロール名は名前のみで同期されます。管理者レベルのユーザーがLDAP/ADを使用してOracle API Catalogにログインする場合、当然、そのユーザーはアプリケーションを構成および管理できます。このユーザー・アカウントは、日常的な業務には使用しないでください。

7.1.2 LDAP統合システム・プロパティの有効化

この手順は、Oracle API Catalogの「管理」画面で実行します。

  1. 左ペインの「システム設定」をクリックします。「システム設定」画面がメイン・ペインに表示されます。

  2. システム設定の検索ボックスを使用すると、簡単に次の各設定を検索できます。

  3. 検索ボックスにenterprise.authentication.ldap.enabledと入力します。値にTrueを設定し、「保存」をクリックします。

    次に示すように設定を変更します。

    • 未承認ユーザーのログイン

      • Trueに設定します。

    • プラグイン・ログイン・モジュールのクラス名

      • テキスト・ボックスにcom.flashline.enterprise.authentication.server.loginmodule.LDAPLoginと入力します。


        注意:

        このプロパティにより、LDAPのオンとオフが切り替わります。有効にすると、アプリケーションはユーザー認証にLDAPサーバーを使用します。

  4. 完了したら、「保存」をクリックします。

7.1.3 LDAP/Active Directoryのプロパティの変更

LDAP/ADのプロパティは次のように変更できます。

  1. 左ペインの「システム設定」をクリックします。

  2. システム設定の検索を使用すると、簡単に次の各設定を検索できます。次に示すように値を入力します。

    • LDAPサーバーのホスト名

      • テキスト・ボックスに、ホスト名またはディレクトリ・サーバーのIPアドレスを入力します。

    • LDAPサーバーのポート番号

      • テキスト・ボックスに389と入力します。

    • LDAPマスク

      • LDAPの場合はuid=^と入力します。

        または

      • Active Directoryの場合はsamAccountName=^と入力します。

    • 未承認ユーザー・アカウントの作成

      • Trueに設定します。

    • ユーザーへのデフォルト・ロールの割当て

      • Trueに設定します。


      注意:

      このプロパティにより、すべてのユーザー認証でデフォルトのロールが割り当てられます。

    • 欠落しているロールの自動作成

      • Trueに設定します。


      注意:

      このプロパティにより、LDAP/ADサーバーから同期してロールを作成しますが、そのロールには何も権限を割り当てません。

    • 欠落している部署の自動作成

      • Trueに設定します。


      注意:

      このプロパティにより、LDAP/ADサーバーから同期して部署を作成しますが、その部署には何も説明を割り当てません。ただし、ユーザーには新規ロールが割り当てられます。

    • LDAPバージョン

      • テキスト・ボックスに3と入力します。(サポートされるバージョンは2および3です)

    • 管理者アカウントの識別名


      注意:

      このプロパティは、Active Directoryの使用に必須です。このプロパティには、少なくとも読取り専用ディレクトリのルックアップ権限を持つユーザー・アカウントのDNが含まれている必要があります。

      例: CN=Some_User,CN=Users,DC=ad,DC=example,DC=com

    • 管理者アカウントのパスワード

      • テキスト・ボックスに、前述の管理者アカウントの識別名プロパティで識別される管理者アカウントのパスワードを入力します。

    • SSL接続の使用

      • Trueを設定し、LDAPのSSL接続を有効にします。デフォルト値はfalseです。

    • 照会先を追跡する

      • Trueに設定します。

    • 管理者アカウントを使用してデータを取得する

      • LDAP(該当する場合)では、Falseに設定します。

      • Active Directoryまたは制限されたLDAP環境では、Trueに設定します。

    • 検索を開始する場所


      注意:

      このプロパティには、ユーザー・レコードの検索を開始するディレクトリ・ツリー内の場所を定義します。

      例:

      • LDAPの場合: OU=MemberGroupB, O=en_us

      • Active Directoryの場合: CN=Users,DC=ad,DC=example,DC=com

    • 検索範囲

      • リスト内のサブツリーを選択します。


        注意:

        このプロパティには、ユーザー・レコード検索の深さ(baseDNの下)を定義します。

    • 検出したエントリを識別する属性名


      注意:

      このプロパティには、ツリー検索の有効範囲内でユーザー・アカウントを一意に識別する属性名を指定します。

      • LDAPの場合: uid

        または

      • Active Directoryの場合: samAccountName

    • 検出したエントリの電子メールの属性名

      • mailと入力します。

    • 検出したエントリの名前の属性名

      • givenNameと入力します。

    • 検出したエントリのミドルネームの属性名

      • LDAPまたはActive Directoryからのミドルネーム属性を入力します(該当する場合)

    • 検出したエントリの姓の属性名

      • snと入力します

    • 検出したエントリの電話番号の属性名

      • telephoneNumberと入力します

    • LDAPの部署を使用

      • Trueに設定します。


        注意:

        このプロパティには、Oracle API Catalog内で同期されているユーザーの部署の属性値を定義します。

    • 部署属性

      • departmentと入力します

    • LDAPのロールを使用

      • Falseに設定します。

    • ロール属性

      • ユーザーのロール情報が含まれているLDAP/Active Directory属性を入力します。

    • 第2レベルのルックアップ属性


      注意:

      このプロパティには、ユーザー情報を取得するための第2レベルのルックアップを識別する属性を定義します。その値はDNにする必要があります。第2レベルのルックアップのリダイレクトを使用している場合は、この第2のルックアップのベースDNを定義します。

  3. 完了したら、「保存」をクリックします。

  4. Oracle API Catalogアプリケーションを再起動します。

7.1.4 セキュリティ上の考慮事項

Oracle API CatalogのLDAP/Active Directoryコネクタを使用すると、Oracle API Catalogのユーザー認証およびロール割当てのためのユーザー識別の単一のソースとしてLDAPを動作させることができます。しかしこれは、Oracle API Catalogを介してファイルにアクセスするためのユーザー認証を、各ホストのリポジトリが管理することを妨げるものではありません。

Oracle API CatalogのLDAP/Active Directoryコネクタを使用すると、Oracle API Catalogは、ユーザーを認証するために、LDAPまたはActive Directoryに依存します。ユーザー名とパスワードの組合せは、バインド要求としてLDAPシステムに委任されます。ユーザーはバインド要求が成功した場合にのみ認証されます。

オプションとして、Oracle API Catalogのユーザー・ロールの割当てを格納または取得するようにLDAPを構成できます。この構成では、ユーザーがログインするたびに、Oracle API Catalogにより、LDAPに格納されているそのユーザーのロールと同期されます。ロールはLDAPを介して直接追加され、Oracle API Catalogでは管理されません。LDAP内のグループ·マッピングはOERでは使用されません。このオプションを使用するには、ldap.enable-synch-rolesシステム設定をTrueに設定する必要があります。ldap.rbac.roleAttribシステム設定は、ユーザーがOracle API Catalog内に持っているロール名を含む、複数値LDAP属性の名前に設定する必要があります。ldap.enable-synch-rolesシステム設定が有効に設定されていない場合、またはldap.rbac.roleAttribオプションで参照されているLDAP属性が構成されていない場合は、管理者が手動でOracle API Catalogにユーザーのロールを割り当てます。

7.1.4.1 ユース・ケースのサンプル・シナリオ

次のシナリオで、LDAPの設定および構成の選択を説明し、ユーザー管理のためのプロパティ設定を明らかにします。

シナリオ1

LDAP認証にもかかわらず、Oracle API Catalogへのユーザーのアクセスを防止します。アクセスは、アクティブなOracle API Catalogアカウントを持つ既存のユーザーのみに提供されます。

  • 理由

    • あらかじめユーザーのベースが定義されている非エンタープライズのライセンス契約では、アプリケーションに許可されるユーザーの数が限られます。

  • プロパティ設定

    • ldap.allow-user-creation

      • Falseに設定します。

    • enterprise.security.unapproveduser.allowlogin

      • Falseに設定します。

シナリオ2

LDAP認証で、デフォルトのOracle API Catalogユーザー・アカウントを作成してデフォルトのロールを割り当てながら、Oracle API Catalogへのユーザーのアクセスを拒否します。

Oracle API Catalogでは、デフォルトのロールは開発者です。

  • 理由

    • 新規ユーザー・アカウントが作成されたことがセキュリティ管理者に通知されるまで、新規ユーザーのOracle API Catalogへのアクセスを拒否します。セキュリティ管理者に承認されると、ユーザーのステータスがOracle API Catalogへのログインが許可されるアクティブに変更されます。

  • プロパティ設定

    • ldap.allow-user-creation

      • Trueに設定します。

    • ldap.assign-default-roles

      • Trueに設定します。

    • enterprise.security.unapproveduser.allowlogin

      • Falseに設定します。

シナリオ3

LDAP認証で、デフォルトのOracle API Catalogユーザー・アカウントがデフォルトのロールで作成され、ユーザーはOracle API Catalogへのログインを許可されます。

  • 理由

    • LDAP認証が新規ユーザーの作成に関する唯一の制限であるエンタープライズ・ライセンス契約。通常、LDAPアカウントでロールが事前定義されていない新規ユーザーのアクセスを制限するため、デフォルトのOracle Enterprise Repositoryのロールは開発者に設定されます。

  • プロパティ設定

    • ldap.allow-user-creation

      • Trueに設定します。

    • ldap.assign-default-roles

      • Trueに設定します。

    • enterprise.security.unapproveduser.allowlogin

      • Trueに設定します。

7.1.5 LDAPプロパティの例

ディレクトリ・サーバーに匿名でバインドされている(認証されていない)間、Active Directoryの制限によりトップレベルより下のディレクトリの検索が防止されるため、Oracle API Catalogのユーザー情報のルックアップでは、「バインドDN」、「バインド・パスワード」および「管理者としてデータを取得」のプロパティに適切な値を設定する必要があります。表7-1に、LDAP/Active Directoryのプロパティとその例を示します。

表7-1 Active Directoryおよび従来のLDAPプロパティ

Active Directory 従来のLDAP(InetOrgPerson)

ldap.host

ad.example.com

ldap.host

ad.example.com

ldap.port

389

ldap.port

389

ldap.version

3

ldap.version

3

ldap.bindDN

CN=Some_User,OU=Users,DC=ad,DC=example,DC=com

ldap.bindDN

(匿名ルックアップが無効化されている場合は必須)

ldap.bindPassword

password

ldap.bindPassword

(匿名ルックアップが無効化されている場合は必須)

ldap.retrieve-data-as-admin

true

ldap.retrieve-data-as-admin

false(匿名ルックアップが無効化されている場合はTRUE)

ldap.mask

sAMAccountName=^

ldap.mask

uid=^

ldap.baseDN

CN=Users,DC=ad,DC=example,DC=com

ldap.baseDN

OU=MemberGroupB, O=en_us

ldap.scope

subtree

ldap.scope

one

ldap.uniqueIDAttrib

samAccountName

ldap.uniqueIDAttrib

uid

ldap.emailAttrib

mail

ldap.emailAttrib

mail

ldap.givennameAttrib

givenname

ldap.givennameAttrib

givenName

ldap.surnameAttrib

sn

ldap.surnameAttrib

sn

ldap.telephoneAttrib

telephonenumber

ldap.telephoneAttrib

telephoneNumber

ldap.deptAttrib

department

ldap.deptAttrib

department


表7-2に、カスタムおよび共通のLDAPプロパティを示します。

表7-2 カスタムおよび共通のLDAPプロパティ

カスタムおよび共通のプロパティ(実装の有無を問わず)

ldap.deptAttrib

department

ldap.rbac.roleAttrib

ロール

ldap.allow-user-creation

true

ldap.enable-synch-roles

true

ldap.enable-synch-depts

true