3 アイデンティティ、ポリシー、資格証明、キー、証明書および監査の理解

アイデンティティ、ポリシー、資格証明、キーおよび監査は、アプリケーションの保護の基盤となります。この章では、これらの基本概念について説明します。

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

認証の基本

OPSSでは、ユーザー名とパスワードの組合せまたは証明書に基づいてユーザーを検証するコンポーネントであるWebLogic Server認証プロバイダを使用します。認証プロバイダにより、ドメイン内の他のコンポーネントで(サブジェクト内の)ユーザー・アイデンティティ情報を使用できるようになります。

Java EEアプリケーションでは、LDAPまたはDBの認証プロバイダを使用できます。すぐに使用できる状態のJava SEアプリケーションでは、ファイル・アイデンティティ・ストアを使用しますが、LDAPサーバーまたはデータベースを使用するようにストアを構成することもできます。

Oracle WebLogic Serverのセキュリティの詳細は、『Oracle WebLogic Serverセキュリティの理解』認証を参照してください。

次の各項では、WebLogic Server認証プロバイダについて説明します。

WebLogic Server認証プロバイダ

デフォルトでは、ユーザーおよびグループはWebLogic Server Default Authenticatorに格納されます。この認証プロバイダでは、デフォルト属性としてcnを使用します。

LDAP認証プロバイダに格納されたデータには、ユーザーおよびロールAPIでアクセスしてユーザー・プロファイル属性を問い合せることができますが、LDAPではないアイデンティティ・リポジトリの問合せにはカスタム・コードが必要な場合があります。認証プロバイダ内では、グループ名は一意である必要があります。

次の各項では、複数の認証プロバイダを設定する方法について説明します。

関連項目:

『Oracle WebLogic Serverセキュリティの管理』LDAP X509アイデンティティ・アサーション・プロバイダの仕組み

『Oracle WebLogic Serverセキュリティの管理』SAML認証プロバイダの構成

複数の認証プロバイダのサポート

WebLogic Serverでは、特定のコンテキストで複数の認証プロバイダを構成できます。そのうちの1つは、LDAP認証プロバイダとする必要があります。

デフォルト・オーセンティケータでは、制御フラグが(デフォルトで)REQUIREDに設定されています。デフォルト・オーセンティケータ以外のLDAP認証プロバイダでアイデンティティ・ストアを初期化するには、デフォルト・オーセンティケータの制御フラグを変更するか、認証プロバイダの順序を入れ替えます。

OPSSでは、次のアルゴリズムに従ってLDAP認証プロバイダを使用し、アイデンティティ・ストアを初期化します。

  1. コンテキストで構成されているLDAP認証プロバイダのセットを検討します。コンテキストには、LDAP認証プロバイダが少なくとも1つ含まれている必要があります。

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

    REQUIRED > REQUISITE > SUFFICIENT > OPTIONAL
    
  3. そのサブセットの中から、該当のコンテキストで最初のプロバイダを検討します。

ステップ3で選択したLDAP認証プロバイダを、アイデンティティ・ストアの初期化に使用します。

サービス・インスタンスの初期設定値がサービス・インスタンスの構成で明示的に指定されている場合は、その構成された値がデフォルト値よりも優先されます。

その他の認証方式

WebLogic Serverアイデンティティ・アサーション・プロバイダでは、X.509証明書、SPNEGOトークン、セキュリティ・アサーション・マークアップ・ランゲージ(SAML)アサーション・トークンおよびCORBA Common Secure Interoperability version 2 (CSIv2)を使用した証明書認証がサポートされています。

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

関連項目:

『Oracle WebLogic Serverセキュリティの理解』アイデンティティ・アサーション・プロバイダおよびログイン・モジュール

『Oracle WebLogic Serverセキュリティの管理』Microsoftクライアントに対するシングル・サインオンの概要を参照してください。

『Oracle WebLogic Serverセキュリティの管理』WebLogic Server用のKerberos識別情報の作成

アイデンティティ・ストア・タイプとWebLogic Server認証プロバイダ

この項の情報は、Java EEアプリケーションにのみ適用されます。

アイデンティティ・ストア・タイプのサポートされているバージョンについては、Oracle Fusion Middlewareでサポートされるシステム構成を参照してください。

表3-1は、各アイデンティティ・ストア・タイプで使用されるWebLogic Server認証プロバイダを示しています。

表3-1 アイデンティティ・ストア・タイプと認証プロバイダ

ストア・タイプ WebLogic Server認証プロバイダ

Oracle Internet Directory

OracleInternetDirectoryAuthenticator

Oracle Virtual Directory

OracleVirtualDirectoryAuthenticator

Open LDAP

OpenLDAPAuthenticator

Oracle Unified Directory

iPlanetAuthenticator

Oracle Directory Server Enterprise Edition

iPlanetAuthenticator

Sun Java System Directory Server。

iPlanetAuthenticator

Novell eDirectory

NovellAuthenticator

Tivoli Access Manager

OpenLDAPAuthenticator

Active Directory

ActiveDirectoryAuthenticator

Active Directory AM

ActiveDirectoryAuthenticator

Active Directory 2008

ActiveDirectoryAuthenticator

Oracle DB

CustomDBMSAuthenticator

ReadOnlySQLAuthenticator

SQLAuthenticator

Oracle Identity Cloud Service

OracleIdentityCloudIntegrator

デフォルト・オーセンティケータ以外のLDAP認証プロバイダでは、UseRetrievedUserNameAsPrincipalフラグの設定が必要です。すぐに使用できる状態では、デフォルト・オーセンティケータのこのフラグは設定されています。

関連項目:

Java SEアプリケーションでのLDAPアイデンティティ・ストアの構成

OpenLDAPアイデンティティ・ストアの使用

『Oracle WebLogic Serverセキュリティ・プロバイダの開発』認証プロバイダ

『Oracle WebLogic Serverセキュリティの管理』認証プロバイダの構成

Oracle WebLogic Server管理コンソール・オンライン・ヘルプ認証プロバイダとIDアサーション・プロバイダの構成

ポリシーの基本

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

Java Authorization and Authentication Services (JAAS)ポリシーは、オプションのプリンシパル・リストを指定できるようにすることでポリシーを拡張するため、それらのプリンシパルで表されるユーザーによって実行されるコードにパーミッションが付与されます。

アプリケーション・ポリシーは、(ドメイン内のすべてのアプリケーションに適用されるポリシーとは対照的に)該当のアプリケーションにのみ適用されるJAASポリシーの集合です。

システム・ポリシーにより、ユーザーおよびグループに、またはURLやJARファイルなどのコードにパーミッションが付与されます。

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

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

ポリシー・ストアは、アプリケーション・ポリシーおよびシステム・ポリシーが格納されるセキュリティ・ストアの部分のことです。ポリシー・ストアのタイプは、ファイル、LDAPまたはDBのいずれかです。ファイル・ストアはXMLファイルです。唯一サポートされているLDAPポリシー・ストア・タイプは、Oracle Internet Directoryです。

開発段階およびデフォルトでは、アプリケーション・ポリシーはjazn-data.xmlファイルで指定します。

Oracle Enterprise Manager Fusion Middleware Control (Fusion Middleware Control)を使用してアプリケーションをデプロイすると、ポリシーをセキュリティ・ストアに自動的に移行することができます。

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

資格証明の基本

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

資格証明ストアは、資格証明が格納されるセキュリティ・ストアの部分のことです。資格証明ストアのタイプは、ファイル、LDAPまたはDBのいずれかです。ファイル資格証明ストアはcwallet.ssoファイルです。唯一サポートされているLDAP資格証明ストア・タイプは、Oracle Internet Directoryです。

アプリケーションでは、資格証明ストアまたは独自の資格証明ストアを使用できます。資格証明ストアは、ファイル、LDAPまたはDBのいずれかです。

Fusion Middleware Controlを使用してアプリケーションをデプロイすると、資格証明をセキュリティ・ストアに自動的に移行することができます。

OPSSには、アプリケーションで資格証明をプログラムで作成、読取り、更新および管理する際に使用できるAPIが組み込まれた資格証明ストア・フレームワークが用意されています。

キーおよび証明書の基本

キーストア・サービス(KSS)キーストアは、ドメインのコンポーネントおよびアプリケーションによって使用されるキーおよび証明書に対する中央リポジトリとなります。これにより、キーストアを個々のアプリケーションに関連付ける必要がなくなり、また、ドメイン内のキーストア・データを一様に管理できる単一のユーザー・インタフェースとなります。

キーストア・リポジトリは、ファイル、DBまたはLDAPのいずれかです。あるタイプから別のタイプに、キーストアを再関連付けすることもできます。

監査の基本

Oracle Fusion Middleware監査フレームワークは、ドメインの監査レコードの中央リポジトリである監査ストアとなります。このフレームワークを使用して構成の変更をはじめ、コンポーネントおよびデプロイ済アプリケーションに対する操作アクティビティによってトリガーされるイベントを監査します。監査ストアは、ファイルまたはデータベースのいずれかです。