この章では、Oracle Platform Security Servicesでサポートされているいくつかの一般的なセキュリティ・シナリオについて説明します。また、サポートされているLDAPサーバー、DBサーバー、XMLサーバーや、各シナリオで管理者がセキュリティ・データを管理するために使用する管理ツール、さらに、ポリシーおよび資格証明に対するパッケージ要件についても取り上げます。
この章の内容は次のとおりです。
Oracle Platform Security Servicesでは、次のLDAPベース、DBベース、およびファイルベースのリポジトリがサポートされています。
OPSSセキュリティ・ストアでは、次のようになります。
アイデンティティ・ストアでは、Oracle WebLogic ServerでサポートしているあらゆるLDAP認証プロバイダを使用できます。XMLアイデンティティ・ストアは、JavaSEアプリケーションでのみサポートされています。
重要: Oracle Internet Directory 10.1.4.3をOPSSとともに使用する場合は、Oracle Bug#8351672に対する必須の個別パッチをOracle Internet Directory 10.1.4.3に適用することをお薦めします。使用しているプラットフォームのパッチをMy Oracle Support(http://myoraclesupport.oracle.com )からダウンロードします。
最適なパフォーマンスを確保するには、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 Authorization Policy Manager
OPSSスクリプト(サポートされているすべてのプラットフォームで使用可能)
LDAPサーバー固有のユーティリティ
セキュリティ・データの管理ツールは、格納されるデータのタイプやそのデータの保持に使用するストアの種類によって異なります。WebSphere Application Serverにデプロイされるアプリケーションには、WebSphere Application Server管理コンソールもあります。詳細は、WebSphere Application Serverのドキュメントを参照してください。OPSSスクリプトは、WebLogicおよびWebSphereのいずれのプラットフォームでも使用できます。
DefaultAuthenticatorを使用してアイデンティティを格納するドメインでは、Oracle WebLogic Server管理コンソールを使用して、格納したデータを管理します。DefaultAuthenticatorに格納したデータにユーザー/ロールAPIを使用してアクセスし、ユーザー・プロファイル属性を問い合せることもできます。また、DefaultAuthenticatorでユーザーまたはグループに別の属性を挿入する場合も、アプリケーションでユーザー/ロールAPIを使用します。
重要: ドメインでDefaultAuthenticatorを使用する場合は、アプリケーションでユーザー/ロールAPIを使用してアイデンティティ・データを操作できるように、ドメイン管理サーバーを実行している必要があります。 |
この認証プロバイダの構成の詳細は、第3.1.2.1項「LDAP認証プロバイダの使用」を参照してください。
また、デフォルトの認証プロバイダとは異なる他のLDAPサーバー、またはDBを認証に使用する場合は、そのLDAPサーバーのサービスを使用してユーザーとグループを管理します。
ポリシーおよび資格証明は、同じ種類の記憶域(ファイルベース、LDAPベース、またはDBベース)を使用する必要があり、LDAPベースの場合は、同じ種類のLDAPサーバー(Oracle Internet Directoryに限る)を使用する必要があります。
ポリシーおよび資格証明データを管理するには、第9.2項「Fusion Middleware Controlを使用したポリシーの管理」および第10.3項「Fusion Middleware Controlを使用した資格証明の管理」の説明に従ってFusion Middleware Controlを使用するか、第9.3項「OPSSスクリプトによるアプリケーション・ポリシーの管理」および第10.4項「OPSSスクリプトによる資格証明の管理」の説明に従ってOPSSスクリプトを使用します。
また、ポリシー・データを管理するには『Oracle Fusion Middleware Authorization Policy Manager管理者ガイド』の説明に従ってOracle Authorization Policy Managerを使用します。
セキュリティ・データの管理で使用する各種ツールを次にあげます。
デフォルトの認証プロバイダ: 管理コンソールを使用
その他のLDAPまたはDBストア: LDAPサーバーまたはDBに用意されているユーティリティを使用
ファイルベース: Fusion Middleware ControlまたはWLSTを使用
LDAPベース: ポリシー・データの管理には、Fusion Middleware Control、WLST、またはOracle Authorization Policy Managerを使用
ポリシーまたは資格証明を変更してもサーバーを再起動する必要はありません。ファイルjps-config.xml
を変更した場合はサーバーを再起動する必要があります。
アプリケーションのデプロイ時に、アプリケーションのポリシーと資格証明をドメイン・ストアに自動的に移行する方法の詳細は、第8.6項「OPSSセキュリティ・ストアの移行」を参照してください。
WebSphere Application Serverでツールを管理する方法の詳細は、Oracle Fusion Middlewareサード・パーティ・アプリケーション・サーバー・ガイドを参照してください。
ファイルベースのアプリケーション・ポリシーは、ファイルjazn-data.xml
で定義します。このファイルをアプリケーションとパッケージ化するためにサポートされている唯一の方法は、このファイルをEARファイルのディレクトリMETA-INFに置くことです。
ファイルベースのアプリケーション資格証明は、ファイルcwallet.sso
で定義します。このファイルをアプリケーションとパッケージ化するためにサポートされている唯一の方法は、このファイルをEARファイルのディレクトリMETA-INFに置くことです。詳細は、第21.3項「JavaEEアプリケーションの手動によるパッケージ化」を参照してください。
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サード・パーティ・アプリケーション・サーバー・ガイドを参照してください。
一般的なシナリオ1
このシナリオでは、開発中のJavaEEアプリケーションを示します。
認証: このアプリケーションではデフォルトの認証プロバイダを使用します。これは、開発環境では一般的な扱いです。
認可: ポリシー・ストアと資格証明ストアはファイルベースです。
バリエーション: このアプリケーションでは、SSOおよびJavaEEセキュリティに対するWebLogicサポートを使用します。
WebLogicのSSOに関するサポートの詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverの保護』のWebブラウザとHTTPクライアントでのシングル・サインオンの構成に関する項を参照してください。
一般的なシナリオ2
このシナリオでは、開発中のJavaEEアプリケーションを示します。
認証: このアプリケーションではデフォルトの認証プロバイダを使用します。これは、開発環境では一般的な扱いです。
認可: ポリシー・ストアと資格証明ストアは、LDAPベースであり、Oracle Internet Directory LDAPサーバーの同じインスタンスのサービスを使用します。
バリエーション: JAASは有効化されており、ポリシーには匿名ロールおよび認証ロールのパーミッションが含まれています。
匿名ロールおよび認証ロールのサポートの構成の詳細は、第2.3項「認証ロール」および第2.4項「匿名ユーザーとロール」を参照してください。
一般的なシナリオ3
このシナリオでは、開発中のJavaEEアプリケーションを示します。
認証: このアプリケーションではデフォルトの認証プロバイダを使用します。これは、開発環境では一般的な扱いです。
認可: ポリシー・ストアと資格証明ストアは、LDAPベースであり、Oracle Internet Directory LDAPサーバーの同じインスタンスのサービスを使用します。
バリエーション: このアプリケーションではJavaEEセキュリティを使用し、JAASは有効化します。ポリシーには匿名ロールおよび認証ロールのパーミッションを設定します。また、ポリシーの問合せ、取得および管理には、資格証明ストア・フレームワーク(CSF)APIが使用されます。
匿名ロールおよび認証ロールのサポートの構成の詳細は、第2.3項「認証ロール」および第2.4項「匿名ユーザーとロール」を参照してください。
CSF APIの詳細は、第23.1項「資格証明ストア・フレームワークAPIについて」を参照してください。
次のシナリオは、アプリケーション開発段階で一般的に使用するDefaultAuthenticatorではない認証プロバイダまたはなんらかのAPIをアプリケーションで使用してセキュリティ・データにアクセスするという点で、一般的なシナリオとは異なります。
シナリオ4
認証: このアプリケーションでは、DefaultAuthenticatorではないLDAP認証プロバイダを使用します。
認可: ポリシーと資格証明の両方で、LDAPベースの同じOracle Internet Directoryストアを使用します。
バリエーション: このアプリケーションでは、DBのユーザー・プロファイルへのアクセスにユーザー/ロールAPIを使用し、資格証明へのアクセスに資格証明ストア・フレームワーク(CSF)APIを使用します。
ユーザー/ロールAPIの詳細は、第25章「ユーザーおよびロールAPIを使用した開発」を参照してください。
CSF APIの詳細は、第23.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
このシナリオでは、OPSS APIを使用するJavaSEアプリケーションを示します。
認証: このアプリケーションではLoginService APIを使用します。
認可: このアプリケーションではメソッドCheckPermission
を使用します。
また、このアプリケーションでは、ドメイン認証プロバイダへの属性の問合せにユーザー/ロールAPIを使用し、資格証明ストアへの問合せに資格証明ストア・フレームワークAPIを使用します。