ヘッダーをスキップ
Oracle® Fusion Middlewareアプリケーション・セキュリティ・ガイド
11gリリース1(11.1.1)
B56235-02
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

3 アイデンティティ、ポリシーおよび資格証明について

アプリケーションでは、それを実行しているドメインで構成されたアイデンティティ・ストア、ポリシー・ストアおよび資格証明ストアを使用します。この章では、アイデンティティ、ポリシーおよび資格証明のセキュリティ・データを格納するリポジトリについて説明します。OPSSでは、ファイルベースのポリシーとLDAPベースのポリシーおよび資格証明ストアがサポートされます。

この章の内容は次のとおりです。

この章で使用する用語の定義は、第2.1項「用語」を参照してください。

ストアの利用法を示すシナリオは、第4章「Oracle Platform Security Servicesのシナリオについて」を参照してください。

3.1 認証の基本

OPSSではWebLogic認証プロバイダを使用します。この認証プロバイダは、ユーザー名とパスワードの組合せまたはデジタル証明書に基づき、ユーザーの資格証明またはシステム・プロセスを検証するコンポーネントです。認証プロバイダには、必要に応じ、ドメイン内の他のコンポーネントでサブジェクトを介してユーザー・アイデンティティ情報を使用できるようにする機能もあります。

認証プロバイダには、DefaultAuthenticator、外部LDAPストア、エンタープライズ・アプリケーションのデータをホストするDBMSなどがあります。認証プロバイダの詳細なリストは、『Oracle Fusion Middleware Developing Security Providers for Oracle WebLogic Server』の第4章「認証プロバイダ」を参照してください。

JavaEEアプリケーションではWebLogic認証プロバイダを使用します。JavaSEアプリケーションの場合、追加設定なしで使用できるアイデンティティ・ストアはファイルベースですが、LDAPベースのアイデンティティ・ストアとして構成することもできます。

詳細は、『Oracle Fusion Middleware Understanding Security for Oracle WebLogic Server』の認証に関する項を参照してください。


注意:

OPSSでは、アプリケーション開発で使用したユーザーおよびグループを、アプリケーションのデプロイ先とするリモートWebLogic Serverに自動的に移行することはできません。ドメインに構成済の認証プロバイダに応じ、Oracle WebLogic管理コンソール、WLSTコマンドまたは適切なツールを使用して、必要なアプリケーション・アイデンティティを別途作成する必要があります。

この項の内容は次のとおりです。

3.1.1 Oracle WebLogicの認証プロバイダ

OPSSには、いくつかの認証プロバイダが用意されています。使用可能な認証プロバイダおよびその選択と構成の詳細は、『Oracle Fusion Middleware Securing Oracle WebLogic Server』の認証プロバイダの構成に関する項およびOracle Fusion Middleware Oracle WebLogic Server管理コンソールのヘルプの認証およびIDアサーション・プロバイダの構成に関する項を参照してください。

追加設定がない状態のOracle WebLogic Serverでは、ユーザーとグループがデフォルトでDefaultAuthenticatorに格納されます。この認証プロバイダは、デフォルト属性としてcnを使用するように設定されています。

LDAP認証プロバイダに格納されたデータには、ユーザー/ロールAPIでアクセスしてユーザー・プロファイル属性を問い合せることができます。LDAP認証プロバイダの詳細は、「LDAP認証プロバイダの使用」を参照してください。


重要:

ドメインでDefaultAuthenticatorを使用する場合は、アプリケーションでユーザー/ロールAPIを使用してデータを問い合せることができるように、ドメイン管理サーバーを実行している必要があります

OPSSでは、ドメインにLDAPベースの認証プロバイダを1つ以上構成しておく必要があります。


X.509 IDアサーションの詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』のLDAP X509 IDアサーション・プロバイダのしくみに関する項を参照してください。

IDアサーション・プロバイダとしてSAML 1.1またはSAML 2.0を使用した認証の詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』のSAML認証プロバイダの構成に関する項を参照してください。

3.1.2 サポートされているLDAPアイデンティティ・ストアのタイプ

アイデンティティ・ストアでサポートされているLDAPリポジトリは、次のとおりです。

  • Sun Java System Directory Serviceバージョン6.3

  • Active Directory 2003、2008

  • Novell eDirectory 8.8

  • OpenLDAP 2.2

3.1.3 その他の認証方式

WebLogic IDアサーション・プロバイダでは、X.509証明書、SPNEGOトークン、SAMLアサーション・トークンおよびCORBA Common Secure Interoperability version 2(CSIv2)IDアサーションを使用した証明認証がサポートされています。

ネゴシエート・アイデンティティ・プロバイダは、SPNEGOプロトコルをサポートするMicrosoftクライアントでSSOに使用します。このプロバイダは、SPNEGOトークンをデコードしてKerberosトークンを取得し、このKerberosトークンを検証してWebLogicユーザーにマップします。

IDアサーション・プロバイダの一般的な情報は、『Oracle Fusion Middleware Understanding Security for Oracle WebLogic Server』のIDアサーション・プロバイダに関する項を参照してください。

MicrosoftクライアントでのSSOの概要は、『Oracle Fusion Middleware Securing Oracle WebLogic Server』のMicrosoftクライアントでのシングル・サインオンの概要に関する項を参照してください。

Kerberos識別情報の詳細は、『Oracle Fusion Middleware Securing Oracle WebLogic Server』のWebLogic ServerのKerberos識別情報の作成に関する項を参照してください。

3.1.4 LDAP認証プロバイダの使用

この項では、アイデンティティ・ストア・サービスの初期化、およびプログラムによるLDAP認証プロバイダへのアクセス方法について説明します。

Oracle WebLogic Serverでは、LDAPベースの認証プロバイダをいくつか提供しています。利用可能なLDAPサーバーの詳細は、第4.1項「サポートされているLDAPベース・サーバーおよびファイルベース・サーバー」を参照してください。DefaultAuthenticatorがデフォルトの認証プロバイダとして構成されているので、Oracle WebLogic Serverのインストール後、追加設定なしですぐに使用できます。

WebLogic管理コンソールを使用すると、その他の認証プロバイダを構成できます。

JavaSEアプリケーションでの認証プロバイダの使用方法の詳細は、第15.2.2項「JavaSEアプリケーションでのLDAPアイデンティティ・ストアの構成」を参照してください。

3.1.4.1 アイデンティティ・ストア・サービスの構成

Oracle WebLogic Serverでは、複数の認証プロバイダのそれぞれに制御フラグを設定し、特定のコンテキストでこれらの認証プロバイダを構成できます。そのうちの1つは、LDAPベースの認証プロバイダとする必要があります。

OPSSでは、構成済のLDAP認証プロバイダのリストから次のアルゴリズムに従って選択したLDAP認証プロバイダを使用して、アイデンティティ・ストア・サービスを初期化します。

  1. 構成されているLDAP認証プロバイダのサブセットを検討します。コンテキストではLDAP認証プロバイダが1つ以上指定されていることが前提なので、このサブセットは空ではありません。

  2. そのサブセットの中で、最大のフラグが設定されている認証プロバイダを検討します。このサブセットでの計算に使用するフラグの順序は次のとおりです。

    REQUIRED > REQUISITE > SUFFICIENT > OPTIONAL
    

    このサブセット(最大のフラグを実現するLDAPのサブセット)も空ではありません。

  3. そのサブセットの中から、該当のコンテキストで最初に構成された認証プロバイダを検討します。

手順3で選択したLDAP認証プロバイダを、アイデンティティ・ストア・サービスの初期化に使用します。LDAP認証プロバイダを使用してSSL接続を確立する際のホスト名検証の詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』を参照してください。

サポートされている様々なLDAP認証プロバイダを初期化するためにOPSSで使用するデフォルト値の詳細は、第H.1項「OPSS APIリファレンス」でユーザー/ロールAPIのJavadocを参照してください。サービス・インスタンスの初期化値がデフォルトで指定されていても、別の初期価値をサービス・インスタンスの構成でも明示的に指定している場合は、その構成した値がデフォルトの値よりも優先されます。


重要:

DefaultAuthenticatorを除き、ドメインで使用するすべてのLDAPベースの認証プロバイダでは、フラグUseRetrievedUserNameAsPrincipalを設定する必要があります。DefaultAuthenticatorでは、追加設定なしでこのフラグが設定されています。

3.2 ポリシー・ストアの基本

Java 2ポリシーは、特定の場所からロードされた署名付きコードに付与されるパーミッションを指定します。

JAASポリシーは、オプションのプリンシパル・リストを指定できるようにすることで、Java 2の権限を拡張します。これにより、特定の場所からロードされた(場合によって署名付きの)コードが、指定のプリンシパルで表されるユーザーによって実行された場合にのみ、そのコードにパーミッションのセマンティックが付与されます。

JACCは、カスタム認可プロバイダ(実行中のJavaEEアプリケーションに付与される認可の制御とカスタマイズを可能にするプラッガブル・コンポーネント)とのインタフェースを定義することで、Java 2およびJAASのパーミッションベースのポリシーをEJBおよびサーブレットに拡張します。

アプリケーション・ポリシーは、Java 2ポリシーとJAASポリシーの集合です。Java 2ポリシーはJVM全体に適用されるのに対して、JAASポリシーは該当のアプリケーションにのみ適用されます。

ポリシー・ストアは、システムおよびアプリケーションに固有のポリシーとロールを格納するリポジトリです。アプリケーション・ロール(管理ロールなど)には、アプリケーション固有のエンタープライズ・ユーザーおよびグループを指定できます。ポリシーでは、これらのグループまたはユーザーをプリンシパルとして使用できます。

ロールを自己管理するアプリケーションの場合は、JavaEEアプリケーション・ロール(ファイルweb.xmlまたはejb-jar.xmlで構成)がエンタープライズ・ユーザーおよびグループにマップされ、アプリケーション固有のポリシーで使用されます。


重要:

ドメインがポリシー・ストアを指している間は、そのポリシー・ストアを環境から削除できません。

ポリシー・ストアのタイプ

ポリシー・ストアはファイルベースまたはLDAPベースにすることができます。ファイルベースのポリシー・ストアはXMLファイルです。このストアは、追加設定なしで使用できるポリシー・ストア・プロバイダです。LDAPベースのポリシー・ストアでは、Oracle Internet DirectoryまたはOracle Virtual DirectoryのいずれかのLDAPサーバーを使用できます(ローカル・ストア・アダプタ(LSA)を使用)。

スコープ、移行および再関連付け

それぞれのドメインにはポリシー・ストアが1つずつあります。開発時には、アプリケーション・ポリシーはファイルベースであり、ファイルjazn-data.xmlで指定します。Fusion Middleware Controlを使用してアプリケーションをデプロイするときに、アプリケーション・ポリシーを自動的にドメイン・ポリシー・ストアに移行できます。この機能の詳細は、第7.3.1項「Fusion Middleware Controlを使用したアプリケーション・ポリシーの移行」を参照してください。デフォルトのドメイン・ポリシー・ストアはファイルベースです。

ポリシーの再関連付けは、ファイルベースのストアまたはLDAPベースの(Oracle Internet Directory)ストアでのみ可能です。他のタイプのLDAPサーバー・プロバイダを使用するLDAPベースのポリシー・ストアからドメイン・ポリシーを再び関連付けることはできません。詳細は、第7.2項「ドメイン・ポリシー・ストアの再関連付け」を参照してください。


注意:

パーミッション・クラスはすべて、システム・クラスパスで指定する必要があります。

ポリシー・ストアでのリソース・カタログのサポートの詳細は、第17.2.1項「リソース・カタログ」を参照してください。

3.3 資格証明ストアの基本

資格証明ストアは、ユーザー、Javaコンポーネントおよびシステム・コンポーネントの認証レベルを認定するセキュリティ・データ(資格証明)のリポジトリです。資格証明には、ユーザー名とパスワードの組合せ、チケットまたは公開鍵証明書を格納できます。このデータは、認証の際、プリンシパルをサブジェクトに移入するときに使用し、さらに認可時には、サブジェクトが実行できるアクションを決定するときに使用します。

OPSSは資格証明ストア・フレームワークを備えています。これは、アプリケーションで資格証明を安全に作成、読取り、更新および管理する際に使用できる一連のAPIです。

資格証明ストアのタイプ

資格証明ストアは、ファイルベースまたはLDAPベースにすることができます。ファイルベースの資格証明ストアはウォレットベースとも呼ばれ、ファイルcwallet.ssoで表される、追加設定なしで使用できる資格証明ストアです。LDAPベースの資格証明ストアでは、Oracle Internet Directoryのみを使用できます。

スコープ、移行および再関連付け

アプリケーションでは、ドメイン資格証明ストアを使用できるほか、開発時にかぎり、ウォレットベースの独自の資格証明ストアを使用できます。ドメイン資格証明ストアは、ウォレットベース(デフォルト)またはLDAPベースにすることができます。

アプリケーションがデプロイされるときに、アプリケーションの資格証明が自動的にドメインの資格証明ストアに移行されるように構成することができます。詳細は、第8.4.1項「Fusion Middleware Controlを使用したアプリケーション資格証明の移行」を参照してください。

あるタイプのストアから別のタイプのストアに、ドメインの資格証明を再び関連付けることもできます。詳細は、第8.3項「ドメイン資格証明ストアの再関連付け」を参照してください。