この章では、Oracle Platform Security Servicesでサポートされているいくつかの一般的なセキュリティ・シナリオについて説明します。また、サポートされているLDAPサーバー、DBサーバー、XMLサーバーや、各シナリオで管理者がセキュリティ・データを管理するために使用する管理ツール、さらに、ポリシーおよび資格証明に対するパッケージ要件についても取り上げます。
この章の内容は次のとおりです。
Oracle Platform Security Servicesでは、次のリポジトリがサポートされています。
OPSSセキュリティ・ストアでは、次のようになります。
アイデンティティ・ストアでは、Oracle WebLogic ServerでサポートしているあらゆるLDAP認証プロバイダを使用できます。XMLアイデンティティ・ストアは、Java SEアプリケーションでのみサポートされています。
キーストアでは、次のようになります。
ファイルベース。XMLファイルを使用できます。
LDAPベース。Oracle Internet Directory(バージョン10.1.4.3または11g)を使用できます。
DBベース。Oracle RDBMS(リリース10.2.0.4以降、リリース11.1.0.7以降およびリリース11.2.0.1以降)を使用できます。
重要: Oracle Internet Directory 10.1.4.3をOPSSとともに使用する場合は、Oracle Bug#8351672に対する必須の個別パッチをOracle Internet Directory 10.1.4.3に適用する必要があります。様々なバージョンのOracle Internet Directoryについて、適用する必要のあるパッチのリストは、第8章「LDAPベースのOPSSセキュリティ・ストアの使用」を参照してください。 最適なパフォーマンスを確保するには、Oracle Internet Directoryを次のようにチューニングすることをお薦めします。 ldapmodify -D cn=orcladmin -w <password> -v <<EOF dn: cn=dsaconfig,cn=configsets,cn=oracle internet directory changetype: modify add: orclinmemfiltprocess orclinmemfiltprocess: (objectclass=orcljaznpermission) orclinmemfiltprocess: (objectclass=orcljazngrantee) EOF |
LDAP認証プロバイダの詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』のLDAP認証プロバイダの構成に関する項を参照してください。特に、DefaultAuthenticatorは追加設定なしで使用できますが、その使用は、ユーザーが10,000以下およびグループが2,500以下の開発環境に限定することをお薦めします。
1つのLDAPベースのストアに格納されているポリシー、資格証明およびキーは、同一の物理永続リポジトリを使用する必要があります。詳細は、次の各章を参照してください。
セキュリティ管理者が使用できるツールは、次のとおりです。
Oracle Enterprise Manager Fusion Middleware Control
Oracle Entitlements Server
OPSSスクリプト(サポートされているすべてのプラットフォームで使用可能)
LDAPサーバー固有のユーティリティ
セキュリティ・データの管理に使用するツールは、格納するデータのタイプと、そのデータの保持に使用するストアの種類に応じて異なります。WebSphere Application Serverにデプロイされたアプリケーションの場合、WebSphere Application Server管理コンソールもあります。詳細は、WebSphere Application Serverドキュメントを参照してください。OPSSスクリプトは、WebLogicとWebSphereの両方のプラットフォームで使用できます。
DefaultAuthenticatorを使用してアイデンティティを格納するドメインでは、Oracle WebLogic Server管理コンソールを使用して、格納したデータを管理します。DefaultAuthenticatorに格納したデータにユーザー/ロールAPIを使用してアクセスし、ユーザー・プロファイル属性を問い合せたり、ユーザーまたはグループに追加属性を挿入したりできます。
重要: ドメインでDefaultAuthenticatorを使用する場合は、アプリケーションでユーザー/ロールAPIを使用してアイデンティティ・データを操作できるように、ドメイン管理サーバーを実行している必要があります。 |
また、デフォルトの認証プロバイダとは異なる他のLDAPサーバー、またはDBを認証に使用する場合は、そのLDAPサーバーのサービスを使用してユーザーとグループを管理します。
ポリシー、キーおよび資格証明は、同じ種類の記憶域(ファイルベース、LDAPベース、またはDBベース)を使用する必要があり、LDAPベースの場合は、同じLDAPサーバー(Oracle Internet Directoryに限る)、DBベースの場合は、同じDB(Oracle DB)を使用する必要があります。
ポリシーおよび資格証明データを管理するには、第9.2項「Fusion Middleware Controlを使用したポリシーの管理」および第10.4項「Fusion Middleware Controlを使用した資格証明の管理」の説明に従ってFusion Middleware Controlを使用するか、第9.3項「OPSSスクリプトによるアプリケーション・ポリシーの管理」および第10.5項「OPSSスクリプトによる資格証明の管理」の説明に従ってOPSSスクリプトを使用します。
また、ポリシー・データを管理するには、Oracle Fusion Middleware Oracle Entitlements Server管理者ガイドの説明に従って、Oracle Entitlements Serverを使用します。
キーと証明書を管理するには、Fusion Middleware ControlおよびWLSTを使用します。詳細は、第11章「キーストア・サービスでのキーと証明書の管理」を参照してください。
セキュリティ・データの管理で使用する各種ツールを次にあげます。
デフォルトの認証プロバイダ: 管理コンソールを使用
その他のLDAPまたはDBストア: LDAPサーバーまたはDBに用意されているユーティリティを使用
ファイルベース: Fusion Middleware ControlまたはOPSSスクリプトを使用
LDAPベース: Fusion Middleware Control、OPSSスクリプトまたはOracle Entitlements Serverを使用
キーと証明書
OPSSスクリプトを使用
ポリシー、資格証明またはキーを変更してもサーバーを再起動する必要はありません。ファイルjps-config.xml
を変更した場合はサーバーを再起動する必要があります。
アプリケーションのデプロイ時に、アプリケーションのポリシーと資格証明をドメイン・ストアに自動的に移行する方法の詳細は、第8.6項「OPSSセキュリティ・ストアの移行」を参照してください。
WebSphere Application Serverでツールを管理する方法の詳細は、Oracle Fusion Middlewareサード・パーティ・アプリケーション・サーバー・ガイドを参照してください。
ファイルベースのアプリケーション・ポリシーは、ファイルjazn-data.xml
で定義します。このファイルをアプリケーションとパッケージ化するためにサポートされている唯一の方法は、このファイルをEARファイルのディレクトリMETA-INFに置くことです。
ファイルベースのアプリケーション資格証明は、ファイルcwallet.sso
で定義します。このファイルをアプリケーションとパッケージ化するためにサポートされている唯一の方法は、このファイルをEARファイルのディレクトリMETA-INFに置くことです。詳細は、第21.4項「Java EEアプリケーションの手動によるパッケージ化」を参照してください。
WebLogicへのデプロイの詳細は、第6章「セキュア・アプリケーションのデプロイ」を参照してください。
WebSphereでは、デプロイ時の動作はファイルMETA-INF/opss-application.xml
で指定したプロパティによって制御されます。ポリシーの移行に関する詳細は、Oracle Fusion Middlewareサード・パーティ・アプリケーション・サーバー・ガイドを参照してください。資格証明の移行に関する詳細は、Oracle Fusion Middlewareサード・パーティ・アプリケーション・サーバー・ガイドを参照してください。
注意: Oracle JDeveloperでEARファイルを生成すると、必要なすべてのファイル(および適切なセキュリティ構成)とともに、セキュアなOracle ADFアプリケーションのEARファイルが自動的にパッケージ化されます。 |
この項で解説するシナリオでは、ほとんどのOracle ADFアプリケーション、Oracle WebCenterおよびWeb Services Manager Controlで採用されているセキュリティ機能について説明します。
これらのシナリオでは、アプリケーションで次の特性を持つセキュリティ・スキームが採用されていると想定しています。
認証: WebLogicのデフォルトの認証プロバイダを使用してユーザーおよびグループを格納します。
認可: アプリケーションとパッケージ化されたファイルベースのポリシーおよび資格証明によってサポートされ、ポリシーおよび資格証明ストア(ファイルベースまたはLDAPベース)によってもサポートされているファイングレインJAAS認可を使用します。
ファイングレインJAAS認可を必要とするOracle ADFやOracle SOAなどのアプリケーションによって、これらのセキュリティ・スキームのいずれかが採用されていることが普通です。このような場合、個々のセキュリティ・コンポーネントは適切なツールで管理されます。
次のシナリオは、これらの想定に基づいた、基本的なテーマに対する一般的なバリエーションです。ただし、このリストですべてのバリエーションを取り上げているわけではありません。
関連ドキュメント
デフォルトの認証プロバイダの構成に関する詳細は、Oracle Fusion Middleware Oracle WebLogic Server管理コンソールのオンライン・ヘルプの認証プロバイダとIDアサーション・プロバイダの構成に関する項を参照してください。
OPSSセキュリティ・ストアの構成方法の詳細は、第8章「OPSSセキュリティ・ストアの構成」を参照してください。
ポリシー管理の詳細は、第9章「ポリシー・ストアの管理」を参照してください。
資格証明管理の詳細は、第10章「資格証明ストアの管理」を参照してください。
WebSphere Application ServerでOracle Fusion Middlewareを管理する方法の詳細は、Oracle Fusion Middlewareサード・パーティ・アプリケーション・サーバー・ガイドを参照してください。
キーストア・サービスの管理の詳細は、第11章「キーストア・サービスでのキーと証明書の管理」を参照してください。
一般的なシナリオ1
このシナリオでは、開発中のJava EEアプリケーションを示します。
認証: このアプリケーションではデフォルトの認証プロバイダを使用します。これは、開発環境では一般的な扱いです。
認可: ポリシー・ストアと資格証明ストアはファイルベースです。
バリエーション: このアプリケーションでは、SSOおよびJava EEセキュリティに対するWebLogicサポートを使用します。
WebLogicのSSOに関するサポートの詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』のWebブラウザとHTTPクライアントでのシングル・サインオンの構成に関する項を参照してください。
一般的なシナリオ2
このシナリオでは、開発中のJava EEアプリケーションを示します。
認証: このアプリケーションではデフォルトの認証プロバイダを使用します。これは、開発環境では一般的な扱いです。
認可: ポリシー・ストアと資格証明ストアは、LDAPベースであり、Oracle Internet Directory LDAPサーバーの同じインスタンスのサービスを使用します。
バリエーション: JAASは有効化されており、ポリシーには匿名ロールおよび認証ロールのパーミッションが含まれています。
匿名ロールおよび認証ロールのサポートの構成の詳細は、第2.3項「認証ロール」および第2.4項「匿名ユーザーとロール」を参照してください。
一般的なシナリオ3
このシナリオでは、開発中のJava EEアプリケーションを示します。
認証: このアプリケーションではデフォルトの認証プロバイダを使用します。これは、開発環境では一般的な扱いです。
認可: ポリシー・ストアと資格証明ストアは、LDAPベースであり、Oracle Internet Directory LDAPサーバーの同じインスタンスのサービスを使用します。
バリエーション: このアプリケーションではJava EEセキュリティを使用し、JAASは有効化します。ポリシーには匿名ロールおよび認証ロールのパーミッションを設定します。また、ポリシーの問合せ、取得および管理には、資格証明ストア・フレームワーク(CSF) APIが使用されます。
匿名ロールおよび認証ロールのサポートの構成の詳細は、第2.3項「認証ロール」および第2.4項「匿名ユーザーとロール」を参照してください。
CSF APIの詳細は、第24.1項「資格証明ストア・フレームワークAPIについて」を参照してください。
次のシナリオでは、アプリケーション開発段階で一般的に使用するDefaultAuthenticatorではない認証プロバイダまたはなんらかのAPIをアプリケーションで使用して、セキュリティ・データにアクセスします。
シナリオ4
認証: このアプリケーションでは、DefaultAuthenticatorではないLDAP認証プロバイダを使用します。
認可: このアプリケーションでは、Oracle Internet Directory LDAPベースのストアを使用します。
バリエーション: このアプリケーションでは、DBのユーザー・プロファイルへのアクセスにユーザー/ロールAPIを使用し、資格証明へのアクセスに資格証明ストア・フレームワーク(CSF) APIを使用します。
ユーザー/ロールAPIの詳細は、第25章「ユーザーおよびロールAPIを使用した開発」を参照してください。
CSF APIの詳細は、第24.1項「資格証明ストア・フレームワークAPIについて」を参照してください。
シナリオ5
認証: このアプリケーションでは、テスト環境および本番環境で一般的なOracle Internet Directory LDAP認証プロバイダを使用します。
認可: ポリシー・ストアと資格証明ストアは、ファイルベースであり、アプリケーションとパッケージ化されます。これらのデータは、デプロイ時に自動的にドメイン・セキュリティ・データにマップされます。
バリエーション: デプロイ後、一方向SSL伝送チャネルで構成したLDAPベースのストアに、ポリシー・ストアおよび資格証明ストアを再度関連付けします。
デプロイ時に、アプリケーションのセキュリティ・データを自動的に移行する方法の詳細は、第8.6項「OPSSセキュリティ・ストアの移行」を参照してください。
再関連付けの詳細は、第8.5項「OPSSセキュリティ・ストアの再関連付け」を参照してください。
SSLの構成の詳細および関連トピックは、次のサイトを参照してください。
『Oracle Fusion Middleware Oracle WebLogic Serverの保護』のSSLの構成に関する項
『Oracle Fusion Middleware管理者ガイド』
Oracle Fusion Middleware Oracle WebLogic Server管理コンソールのオンライン・ヘルプのSSLの設定に関する項
『Oracle Fusion Middleware Oracle WebLogic Serverセキュリティのプログラミング』のJavaクライアントにおけるSSL認証の使用に関する項
シナリオ6
このシナリオでは、OPPS APIを使用するJava SEアプリケーションを示します。
認証: このアプリケーションでは、LoginService APIを使用します。
認可: このアプリケーションではメソッドCheckPermission
を使用します。
また、このアプリケーションでは、ドメイン認証プロバイダへの属性の問合せにユーザー/ロールAPIを使用し、資格証明ストアへの問合せに資格証明ストア・フレームワークAPIを使用します。