Oracle® Fusion Middleware Oracle WebLogic Server 12.1.3セキュリティ・プロバイダの開発 12c (12.1.3) E57570-02 |
|
前 |
次 |
この章では、WebLogic Server 12.1.3でのセキュリティ・プロバイダの開発の詳細を理解するための準備を行います。
この章の内容は次のとおりです。
このガイドを読む前に、『Oracle WebLogic Serverのセキュリティの理解』の次の項に目を通しておいてください。
「セキュリティ・プロバイダ」
「WebLogicセキュリティ・フレームワーク」
WebLogic Serverのセキュリティには、この他に理解しておく必要のある固有の用語や概念が多数あります。WebLogic Serverのセキュリティ関連ドキュメントに登場するこうした用語と概念については、『Oracle WebLogic Serverのセキュリティの理解』のセキュリティの基礎概念に関する項で定義されています。
この節では、新しいセキュリティ・プロバイダを開発するプロセスの概要を説明します。各手順の詳細は、このガイドの中で後述します。
カスタム・セキュリティ・プロバイダの主な開発手順は以下のとおりです。
設計プロセスには、次の手順があります。
WebLogicセキュリティ・プロバイダの説明を検討して、カスタム・セキュリティ・プロバイダを作成する必要があるかどうか判断します。
WebLogicセキュリティ・プロバイダの説明は、『Oracle WebLogic Serverのセキュリティの理解』のWebLogicセキュリティ・プロバイダに関する項と、このガイドの「カスタム<Provider_Typeプロバイダを開発する必要があるか」という項にあります。
作成するカスタム・セキュリティ・プロバイダのタイプを決めます。
タイプには認証、IDアサーション、プリンシパル検証、認可、裁決、ロール・マッピング、監査、資格証明マッピング、バージョン管理可能なアプリケーション、証明書パスがあります。これらについては、『Oracle WebLogic Serverセキュリティの理解』のセキュリティ・プロバイダのタイプに関する項で説明します。カスタム・セキュリティ・プロバイダは、WebLogic Serverにあらかじめ用意されているWebLogicセキュリティ・プロバイダの補強または代わりとして使用できます。
カスタム・セキュリティ・プロバイダ用のランタイム・クラスを作成するために実装するセキュリティ・サービス・プロバイダ・インタフェース(SSPI)を、作成するセキュリティ・プロバイダのタイプに基づいて特定します。
様々なタイプのセキュリティ・プロバイダのSSPIについては、「セキュリティ・サービス・プロバイダ・インタフェース(SSPI)」を参照してください。また、「SSPIクイック・リファレンス」でも要約を参照できます。
SSPIを1つのランタイム・クラスで実装するか、2つのランタイム・クラスで実装するかを決めます。
こうしたオプションについては、「SSPI階層を理解し、ランタイム・クラスを1つ作成するか2つ作成するかを決定する」を参照してください。
カスタム・セキュリティ・プロバイダを管理するMBeanタイプを生成するために拡張する必要のある必須SSPI MBeanを特定します。ユーザー、グループ、セキュリティ・ロール、およびセキュリティ・ポリシーの処理など、カスタム・セキュリティ・プロバイダを管理する追加機能を提供するには、実装するオプショナルSSPI MBeanを特定することも必要です。
SSPI MBeanについては、「セキュリティ・サービス・プロバイダ・インタフェース(SSPI) MBean」を参照してください。また、「SSPI MBeanクイック・リファレンス」でも要約を参照できます。
カスタム・セキュリティ・プロバイダで必要なデータベースを初期化する方法を決めます。カスタム・セキュリティ・プロバイダで単純なデータベースを作成することも、情報の格納された既存のデータベースを使用するように構成することもできます。
この2つのデータベース初期化オプションについては、「セキュリティ・プロバイダ・データベースの初期化」を参照してください。
カスタム・セキュリティ・プロバイダがWebLogicリソースのセキュリティ・ポリシーとの対話の一部として実行する必要がある、データベースの「準備」について特定します。この準備には、デフォルト・グループ、セキュリティ・ロール、またはセキュリティ・ポリシーの作成などがあります。
詳細については、「セキュリティ・プロバイダとWebLogicリソース」を参照してください。
1つまたは2つのランタイム・クラスにおいて、各メソッドの実装を提供することによって特定されたSSPIを実装します。それらのメソッドには、カスタム・セキュリティ・プロバイダから提供されるセキュリティ・サービスの具体的なアルゴリズムが組み込まれていなければなりません。それらのメソッドには、サービスがどのように動作すべきであるかが記述されています。
このタスクの手順は、作成するセキュリティ・プロバイダのタイプによって異なります。この手順については、各セキュリティ・プロバイダの詳細に関する節の「適切なSSPIによるランタイム・クラスの作成」を参照してください。
MBeanタイプを生成するには、次の手順に従います。
必須SSPI MBeanを拡張し、オプショナルSSPI MBeanを実装し、プロバイダの構成と管理に必要なカスタム属性および操作を追加するカスタム・セキュリティ・プロバイダのMBean定義ファイル(MDF)を作成します。
MDFの詳細は、「MBean定義ファイル(MDF)の基本的な要素について」を参照してください。このタスクの手順については、各セキュリティ・プロバイダの詳細に関する節の「MBean定義ファイル(MDF)の作成」を参照してください。
WebLogic MBeanMakerを通じてMDFを実行し、カスタム・セキュリティ・プロバイダのMBeanタイプの中間ファイル(MBeanインタフェース、MBean実装、およびMBean情報ファイルを含む)を生成します。
WebLogic MBeanMakerについて、およびWebLogic MBeanMakerがどのようにMDFを使用してJavaファイルを生成するかについては、「WebLogic MBeanMakerによって提供されるものについて」を参照してください。このタスクの手順については、各セキュリティ・プロバイダの詳細に関する節の「WebLogic MBeanMakerを使用してMBeanタイプを生成する」を参照してください。
MBeanの実装ファイルを編集して、オプショナルSSPI MBeanの実装から継承されるすべてのメソッドの内容のほか、MDFに追加されたカスタム属性および操作の結果として生成されるメソッド・スタブの内容も入力します。
修正された中間ファイル(MBeanタイプ用)とランタイム・クラスをWebLogic MBeanMakerを通じて実行し、MBean JARファイル(MJF)というJARファイルを生成します。
このタスクの手順については、各セキュリティ・プロバイダの詳細に関する節の「WebLogic MBeanMakerによるMBean JARファイル(MJF)の作成」を参照してください。
MBean JARファイル(MJF)をWebLogic Server環境にインストールします。
このタスクの手順については、各セキュリティ・プロバイダの詳細に関する節の「WebLogic Server環境にMBeanタイプをインストールする」を参照してください。
注意: 構成プロセスは、カスタム・セキュリティ・プロバイダを開発した本人、または指定された管理者が遂行できます。 |
構成プロセスでは、WebLogic Server管理コンソールを使用してカスタム・セキュリティ・プロバイダに構成情報を提供します。カスタム・セキュリティ・プロバイダを管理するためのMBeanタイプを生成している場合、WebLogic Server管理コンソールでカスタム・セキュリティ・プロバイダを「構成」することは、MBeanタイプの特定のインスタンスを作成することも意味します。
WebLogic Server管理コンソールを使用したセキュリティ・プロバイダの構成の詳細は、『Oracle WebLogic Serverセキュリティの管理』を参照してください。
特定のタイプのセキュリティ・プロバイダでは、それらに関連付けられているセキュリティ・データを管理する方法を管理者に提供する必要があります。たとえば認可プロバイダでは、セキュリティ・ポリシーを管理する方法を管理者に提供しなければなりません。同じように、ロール・マッピング・プロバイダではセキュリティ・ロールを、資格証明マッピング・プロバイダでは資格証明マップを管理する方法が管理者に必要になります。
WebLogic認可、ロール・マッピング、および資格証明マッピングの各プロバイダの場合、管理者用の管理メカニズムがWebLogic Server管理コンソールにすでに用意されています。ただし、これらのセキュリティ・プロバイダのカスタム版を開発する場合はこれらのメカニズムを継承しないで、セキュリティ・ポリシー、セキュリティ・ロール、および資格証明マップを管理するための独自の方法を提供する必要があります。これらのメカニズムにはカスタム・セキュリティ・プロバイダのデータベースから適切なセキュリティ・データを読み書きすることが必須となりますが、WebLogic Server管理コンソールとは統合しても統合しなくてもかまいません。
詳細については、以下のいずれかの節を参照してください。
「セキュリティ・ポリシーを管理するためのメカニズムの提供」 (カスタム認可プロバイダの場合)
「セキュリティ・ロールを管理するためのメカニズムの提供」 (カスタム・ロール・マッピング・プロバイダの場合)
「資格証明マップを管理するためのメカニズムの提供」 (カスタム資格証明マッピング・プロバイダの場合)