Oracle® Fusion Middleware Oracle Platform Security Servicesによるアプリケーションの保護 12c (12.2.1.3.0) E92000-01 |
|
前 |
次 |
この章は次の項で構成されています。
このドキュメントでは、Oracle Webサービスのセキュリティについては説明しません。Oracle Web Services セキュリティの詳細は、『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』を参照してください。
OPSSは、Oracle WebLogic Server、サービス指向アーキテクチャ(SOA)アプリケーション、Oracle WebCenter、Oracle Application Development Framework (Oracle ADF)アプリケーション、Oracle Entitlements Server (OES)などのOracle Fusion Middleware製品を保護する、基盤となるセキュリティ・プラットフォームです。
OPSSでは、アプリケーション・プログラミング・インタフェース(API)として抽象レイヤーを提供しています。これにより、開発者は、セキュリティおよびアイデンティティ管理の実装の詳細に関与する必要がなくなります。開発者は、暗号鍵の管理、リポジトリ・インタフェース、他のアイデンティティ管理インフラストラクチャなどについて詳しく理解する必要がありません。社内開発アプリケーション、サードパーティ・アプリケーションおよび統合アプリケーションでは、OPSSを使用することで、企業全体で統一された同一のセキュリティ・サービスを利用できます。
OPSSはWebLogic Serverでサポートされ、Oracle Fusion Middleware Infrastructureとともにインストールされます。
OPSSは、ロールベースのアクセス制御(RBAC)、Java EE、Java Authorization and Authentication Services (JAAS)およびJava Authorization Contract for Containers (JACC)の各標準に準拠しています。
これらの標準に基づいているOPSSは、次の機能をサポートする統合セキュリティ・プラットフォームを提供します。
認証
IDアサーション
認可
ロールおよびロール・マッピングの管理
アプリケーション・ポリシーおよび資格証明の管理
鍵と証明書の管理
監査
ID仮想化
セキュリティAPI
OPSSは、WebLogic Serverのセキュリティ・プロバイダとOracle Fusion Middlewareセキュリティ・フレームワークで構成されています。図1-1に、OPSSアーキテクチャを示します。
OPSSアーキテクチャには次のレイヤーがあります。
認可、認証、資格証明、アイデンティティと信頼、Secure Sockets Layer (SSL)および暗号化サービスなどのセキュリティ・サービス。認証には、WebLogic Server認証プロバイダが使用されます。
WebLogic Serverセキュリティ・プロバイダ。セキュリティ・サービス・プロバイダ・インタフェース(SSPI)により、Javaコンテナ・セキュリティ、環境に応じたリソースベースの認可、セキュリティ・プロバイダを実装するためAPIが提供されます。これらのインタフェースを実装するモジュールをフレームワークにプラグインすることで、カスタム認証や特定のロール・マッピングなどの特殊なタイプのセキュリティ・サービスを提供できます。
ファイル、Lightweight Directory Access Protocol (LDAP)、データベースという3タイプのリポジトリのいずれかを使用したセキュリティ・ストア。
関連項目:
『Oracle WebLogic Serverセキュリティの理解』のセキュリティ・サービス・プロバイダ・インタフェース(SSPI)を参照してください。
OPSSには、次のような様々な利点があります。
アプリケーションとドメインの問題に対する開発リソースの集中が可能
エンタープライズ・デプロイメントのサポート
LDAPサーバーおよびSSOシステムのサポート
WebLogic Serverで動作保証済であること
Oracleの製品およびテクノロジとの統合
開発者およびセキュリティ管理者の一貫したセキュリティ・エクスペリエンス
あらゆるタイプのアプリケーションを対象にしたAPIの統一セット
抽象レイヤーによる開発時間の最適化
アプリケーションのセキュリティ・メンテナンスの簡素化
アプリケーション・コードの変更を必要としない、セキュリティ・ルールの変更
管理の容易化
アイデンティティ管理システムとの統合
OPSSでは、Java EEアプリケーション、Oracle Fusion MiddlewareアプリケーションおよびJava SEアプリケーションを保護します。また、企業内の全セキュリティを管理するためのツールを提供し、アプリケーション・コードを変更せずにセキュリティ構成を変更することも可能です。
OPSS APIを使用することで、開発者はあらゆるタイプのアプリケーションを保護し、他のセキュリティ・システム(LDAP、データベース、カスタムのセキュリティ・コンポーネントなど)と統合します。
すぐに使用できる状態では、デフォルトのセキュリティ・プロバイダ(組込みLDAPサーバー)が使用可能ですが、ドメインでは他のLDAPリポジトリにあるアイデンティティ・データを使用することもできます。
次の各項では、Javaアプリケーションで使用する主要なセキュリティ機能の概要を示します。
Java EEアプリケーションでは、資格証明ストア・フレームワークAPI、ユーザーおよびロールAPI、Identity Governance Framework APIおよびキーストア・サービスAPIに付属するものを含め、いくつかのインタフェースを使用してセキュリティ・データへのアクセスおよび管理を行うことができます。これらのインタフェースを使用して、Java EEアプリケーションでは、ユーザー属性の設定および取得、ポリシー、鍵および証明書の管理を行います。
Java EEアプリケーションでは、認証と認可をweb.xml
ファイルで指定することで宣言的に使用することも、isUserInRole
メソッドおよびisCallerInRole
メソッドをコールすることでプログラム的に使用することもできます。
Java EEアプリケーションでは、カスタム認証プロバイダを使用できますが、ロールおよびエンタープライズ・グループを使用してJavaサーブレットとEnterprise JavaBeans (EJB)間の認証を制御することもできます。
Java EEアプリケーションで使用可能なOPSS機能のほとんどはJava SEアプリケーションでも使用可能ですが、Java SEアプリケーションにのみ当てはまる次のような相違点があります。
アプリケーションでは、セキュリティ操作をコールする前に、AppSecurityContext.
JpsStartup.start
メソッドを使用する必要があります。
アプリケーションのセキュリティ構成は、次の場所にデフォルトでインストールされるjps-config-jse.xml
ファイルで定義します。
$DOMAIN_HOME/config/fmwconfig/jps-config-jse.xml
別の場所を指定するには、oracle.security.jps.config
プロパティを使用します。
-Doracle.security.jps.config=pathToConfigFile
アプリケーションでは、ログイン・モジュールをコールするカスタム認証プロバイダを実装することで標準のJAASログイン・モジュールを使用します。
次のJavaアーカイブ(JAR)ファイルをクラス・パスに追加する必要があります。
$ORACLE_HOME/oracle_common/modules/oracle.jps_12.2.1/jps-manifest.jar
Oracle ADFは、インフラストラクチャ・サービスおよび視覚的な開発エクスペリエンスを提供することで開発を簡略化するエンドツーエンドJava EEフレームワークです。Oracle ADFは、Oracle JDeveloperと統合されます。
ADFセキュリティは、JAASセキュリティ・モデルに基づいており、OPSSおよびパーミッション・ベースの認可を使用し、ビジュアル・エディタおよびADFセキュリティ・ウィザードによってアプリケーション・セキュリティの構成を簡単にします。
Oracle ADFアプリケーションの開発段階で、Oracle WebLogic Server管理コンソールを使用して認証プロバイダを構成し、ポリシーをファイルに格納します。
要約すると、ADFのセキュリティによって次のことが可能になります。
宣言的セキュリティの粒度の制御
ロール階層によるパーミッションの簡略化
Oracle ADFリソースへのアクセス
短期間での開発とテスト・サイクルのためのJDeveloperとの統合
関連項目:
『Oracle Application Development FrameworkによるFusion Webアプリケーションの開発』の「Fusion WebアプリケーションでのADFセキュリティの有効化」
Oracle ADFにより、アプリケーション・インフラストラクチャを実装するコードが最小限に抑えられ、JDeveloperを使用したJava EEアプリケーションの開発が簡略化されます。これにより、開発者はアプリケーションの機能に集中できます。
Oracle ADFでは、コンテナ認証を利用してから、JAASベースの認可を使用してOracle ADFリソースへのアクセスを制御します。ポリシーには、特定のアプリケーション・ロールおよびJAAS認可パーミッションを指定できます。Oracle ADFの接続資格証明は、セキュリティ・ストアに格納されます。
Oracle ADFおよびWebCenterのアプリケーションには、WebLogic Server認証プロバイダが組み込まれていますが、Oracle Single Sign-Onなどのシングル・サインオン・ソリューションを組み込むこともできます。
関連項目:
『Oracle WebLogic Serverセキュリティの管理』のMicrosoftクライアントに対するシングル・サインオンの概要を参照してください。