ヘッダーをスキップ
Oracle® Fusion Middleware Oracle WebLogic Server セキュリティ プロバイダの開発
11
g
リリース 1 (10.3.1)
B55527-01
次へ
目次
タイトルと著作権情報
はじめに
ドキュメントのアクセシビリティについて
表記規則
1
概要とロードマップ
ドキュメントの内容
対象読者
このドキュメントの手引き
関連ドキュメント
このリリースでの新機能と変更点
2
WebLogic Server で使用するセキュリティ プロバイダの開発について
前提条件
開発プロセスの概要
カスタム セキュリティ プロバイダの設計
SSPI の実装によるカスタム セキュリティ プロバイダ用の実行時クラスの作成
カスタム セキュリティ プロバイダをコンフィグレーションおよび管理する MBean タイプの生成
コンソール拡張機能の記述
カスタム セキュリティ プロバイダのコンフィグレーション
セキュリティ ポリシー、セキュリティ ロール、および資格マップを管理するメカニズムの提供
3
設計上の考慮事項
セキュリティ プロバイダの一般的なアーキテクチャ
セキュリティ サービス プロバイダ インタフェース (SSPI)
2 つの重要な制限について
「Provider」SSPI の目的について
バルク アクセス プロバイダの目的について
実装する「Provider」インタフェースの決定
DeployableAuthorizationProviderV2 SSPI
DeployableRoleProviderV2 SSPI
DeployableCredentialProvider SSPI
SSPI 階層を理解し、実行時クラスを 1 つ作成するのか 2 つ作成するのかの決定
SSPI クイック リファレンス
セキュリティ サービス プロバイダ インタフェース (SSPI) MBean
MBean タイプが必要な理由について
拡張および実装する SSPI MBean の決定
MBean 定義ファイル (MDF) の基本的な要素について
カスタム プロバイダとクラスパス
MBean オペレーションから例外の送出
MBean 属性に対して非クリアテキスト値の指定
SSPI MBean の階層と Administration Console に対する影響について
WebLogic MBeanMaker によって提供されるものについて
MBean 情報ファイルについて
SSPI MBean クイック リファレンス
セキュリティ データの移行
移行の概念
フォーマット
制約
移行ファイル
カスタム セキュリティ プロバイダへの移行サポートの追加
セキュリティ データの移行に関する Administration Console のサポート
セキュリティ プロバイダの開発者向け管理ユーティリティ
セキュリティ プロバイダと WebLogic リソース
WebLogic リソースのアーキテクチャ
WebLogic リソースのタイプ
WebLogic リソース識別子
toString() メソッド
リソース ID と getID() メソッド
WebLogic リソースのデフォルト グループの作成
WebLogic リソースのデフォルト セキュリティ ロールの作成
WebLogic リソースのデフォルト セキュリティ ポリシーの作成
セキュリティ プロバイダの実行時クラスでの WebLogic リソースのルックアップ
単一親リソース階層
URL リソースのパターン マッチング
ContextHandler と WebLogic リソース
コンテキスト ハンドラをサポートするプロバイダとインタフェース
セキュリティ プロバイダ データベースの初期化
ベスト プラクティス : データベースがない場合のシンプルなデータベースの作成
ベスト プラクティス : 既存のデータベースのコンフィグレーション
ベスト プラクティス : データベース初期化の委託
属性バリデータの相違点
カスタム バリデータの場合の属性バリデータの相違点
4
認証プロバイダ
認証の概念
ユーザ/グループ、プリンシパル、サブジェクト
初期ユーザおよびグループの指定
LoginModule
LoginModule インタフェース
LoginModule とさまざまな要素から成る認証
Java Authentication and Authorization Service (JAAS)
JAAS が WebLogic Security フレームワークとどう連携するか
例 : スタンドアロンの T3 アプリケーション
認証プロセス
カスタム認証プロバイダを開発する必要があるか
カスタム認証プロバイダの開発方法
適切な SSPI による実行時クラスの作成
AuthenticationProviderV2 SSPI の実装
JAAS LoginModule インタフェースの実装
LoginModule からカスタム例外の送出
例 : サンプル認証プロバイダの実行時クラスの作成
WebLogic MBeanMaker による MBean タイプの生成
MBean 定義ファイル (MDF) の作成
WebLogic MBeanMaker を使用して MBean タイプの生成
WebLogic MBeanMaker を使用して MBean JAR ファイル (MJF) の作成
WebLogic Server 環境に MBean タイプのインストール
Administration Console によるカスタム認証プロバイダのコンフィグレーション
ユーザ ロックアウトの管理
認証プロバイダの順序の指定
5
ID アサーション プロバイダ
ID アサーションの概念
ID アサーション プロバイダと LoginModule
ID アサーションとトークン
新しいトークン タイプの作成方法
新しいトークン タイプを ID アサーション プロバイダのコンフィグレーションで利用可能にする方法
境界認証用のトークンの渡し
Common Secure Interoperability Version 2 (CSIv2)
ID アサーション プロセス
カスタム ID アサーション プロバイダを開発する必要があるか
カスタム ID アサーション プロバイダの開発方法
適切な SSPI による実行時クラスの作成
AuthenticationProviderV2 SSPI の実装
IdentityAsserterV2 SSPI の実装
例 : サンプル ID アサーション プロバイダの実行時クラスの作成
WebLogic MBeanMaker による MBean タイプの生成
MBean 定義ファイル (MDF) の作成
WebLogic MBeanMaker を使用して MBean タイプの生成
WebLogic MBeanMaker を使用して MBean JAR ファイル (MJF) の作成
WebLogic Server 環境に MBean タイプのインストール
Administration Console によるカスタム ID アサーション プロバイダのコンフィグレーション
チャレンジ ID アサーション
Java サーブレット API 2.3 環境におけるチャレンジ/応答の制限
weblogic.security.services.Authentication クラスのフィルタと役割
チャレンジ ID アサーション プロバイダの開発方法
ChallengeIdentityAsserterV2 インタフェースの実装
ProviderChallengeContext インタフェースの実装
weblogic.security.services のチャレンジ ID メソッドの呼び出し
weblogic.security.services の AppChallengeContext メソッドの呼び出し
フィルタからのチャレンジ ID アサーションの実装
6
プリンシパル検証プロバイダ
プリンシパル検証の概念
プリンシパル検証とプリンシパル タイプ
プリンシパル検証プロバイダと他のタイプのセキュリティ プロバイダの違い
無効なプリンシパルが原因のセキュリティ例外
プリンシパル検証プロセス
カスタム プリンシパル検証プロバイダを開発する必要があるか
WebLogic プリンシパル検証プロバイダの使い方
カスタム プリンシパル検証プロバイダの開発方法
PrincipalValidator SSPI の実装
7
認可プロバイダ
認可の概念
アクセス決定
Java Authorization Contract for Containers の使用
認可プロセス
カスタム認可プロバイダを開発する必要があるか
カスタム認可プロバイダでアプリケーションのバージョン管理をサポートする必要があるか
カスタム認可プロバイダの開発方法
適切な SSPI による実行時クラスの作成
AuthorizationProvider SSPI の実装
DeployableAuthorizationProviderV2 SSPI の実装
AccessDecision SSPI の実装
例 : サンプル認可プロバイダの実行時クラスの作成
ポリシー コンシューマ SSPI
必要な SSPI インタフェース
PolicyConsumerFactory SSPI インタフェースの実装
PolicyConsumer SSPI インタフェースの実装
PolicyCollectionHandler SSPI インタフェースの実装
更新後のポリシー コレクションのサポート
PolicyConsumerMBean
PolicyStoreMBean
XACML Policy ファイルの形式の調べ
WLST を使用して PolicyStoreMBean にポリシーの追加
WLST を使用して PolicySet を String として読み込む
バルク認可プロバイダ
WebLogic MBeanMaker による MBean タイプの生成
MBean 定義ファイル (MDF) の作成
WebLogic MBeanMaker を使用して MBean タイプの生成
WebLogic MBeanMaker を使用して MBean JAR ファイル (MJF) の作成
WebLogic Server 環境に MBean タイプのインストール
Administration Console によるカスタム認可プロバイダのコンフィグレーション
認可プロバイダとデプロイメント記述子の管理
セキュリティ ポリシー デプロイメントの有効化
セキュリティ ポリシーを管理するためのメカニズムの提供
オプション 1 : セキュリティ ポリシー管理用のスタンドアロン ツールの開発
オプション 2 : Administration Console に既存のセキュリティ ポリシー管理ツールの統合
8
裁決プロバイダ
裁決プロセス
カスタム裁決プロバイダを開発する必要があるか
カスタム裁決プロバイダの開発方法
適切な SSPI による実行時クラスの作成
AdjudicationProviderV2 SSPI の実装
AdjudicatorV2 SSPI の実装
バルク認可プロバイダ
WebLogic MBeanMaker による MBean タイプの生成
MBean 定義ファイル (MDF) の作成
WebLogic MBeanMaker を使用して MBean タイプの生成
WebLogic MBeanMaker を使用して MBean JAR ファイル (MJF) の作成
WebLogic Server 環境に MBean タイプのインストール
Administration Console によるカスタム裁決プロバイダのコンフィグレーション
9
ロール マッピング プロバイダ
ロール マッピングの概念
セキュリティ ロール
動的セキュリティ ロール計算
ロール マッピング プロセス
カスタム ロール マッピング プロバイダを開発する必要があるか
カスタム ロール マッピング プロバイダでアプリケーションのバージョン管理をサポートする必要があるか
カスタム ロール マッピング プロバイダの開発方法
適切な SSPI による実行時クラスの作成
RoleProvider SSPI の実装
DeployableRoleProviderV2 SSPI の実装
RoleMapper SSPI の実装
SecurityRole インタフェースの実装
例 : サンプル ロール マッピング プロバイダの実行時クラスの作成
ロール コンシューマ SSPI
必要な SSPI インタフェース
RoleConsumerFactory SSPI インタフェースの実装
RoleConsumer SSPI インタフェースの実装
RoleCollectionHandler SSPI インタフェースの実装
更新後のロール コレクションのサポート
RoleConsumerMBean
PolicyStoreMBean
XACML Policy ファイルの形式の調べ
WLST を使用して PolicyStoreMBean にポリシーの追加
WLST を使用して PolicySet を String として読み込む
バルク ロール マッピング プロバイダ
WebLogic MBeanMaker を使用して MBean タイプの生成
MBean 定義ファイル (MDF) の作成
WebLogic MBeanMaker を使用して MBean タイプの生成
WebLogic MBeanMaker を使用して MBean JAR ファイル (MJF) の作成
WebLogic Server 環境に MBean タイプのインストール
Administration Console によるカスタム ロール マッピング プロバイダのコンフィグレーション
ロール マッピング プロバイダとデプロイメント記述子の管理
セキュリティ ロール デプロイメントの有効化
セキュリティ ロールを管理するためのメカニズムの提供
オプション 1 : セキュリティ ロール管理用のスタンドアロン ツールの開発
オプション 2 : Administration Console に既存のセキュリティ ロール管理ツールの統合
10
監査プロバイダ
監査の概念
監査チャネル
カスタム セキュリティ プロバイダからのイベントの監査
監査プロセス
ContextHandler MBean の実装
ContextHandlerMBean のメソッド
例 : ContextHandlerMBean の実装
weblogic.management.security.audit.ContextHandlerImpl の拡張
カスタム監査プロバイダを開発する必要があるか
カスタム監査プロバイダの開発方法
適切な SSPI による実行時クラスの作成
AuditProvider SSPI の実装
AuditChannel SSPI の実装
例 : サンプル監査プロバイダの実行時クラスの作成
WebLogic MBeanMaker による MBean タイプの生成
MBean 定義ファイル (MDF) の作成
WebLogic MBeanMaker を使用して MBean タイプの生成
WebLogic MBeanMaker を使用して MBean JAR ファイル (MJF) の作成
WebLogic Server 環境に MBean タイプのインストール
Administration Console によるカスタム監査プロバイダのコンフィグレーション
監査重大度のコンフィグレーション
Security フレームワークの監査イベント
付加的な監査情報の渡し
監査イベント インタフェースと監査イベント
AuditApplicationVersionEvent
AuditAtnEventV2
AuditAtzEvent
AuditCerPathBuilderEvent、AuditCertPathValidatorEvent
AuditConfigurationEvent
AuditCredentialMappingEvent
AuditLifecycleEvent
AuditMgmtEvent
AuditPolicyEvent
AuditRoleDeploymentEvent
AuditRoleEvent
11
資格マッピング プロバイダ
資格マッピングの概念
資格マッピング プロセス
カスタム資格マッピング プロバイダを開発する必要があるか
カスタム資格マッピング プロバイダでアプリケーションのバージョン管理をサポートする必要があるか
カスタム資格マッピング プロバイダの開発方法
適切な SSPI による実行時クラスの作成
CredentialProviderV2 SSPI の実装
DeployableCredentialProvider SSPI の実装
CredentialMapperV2 SSPI の実装
WebLogic MBeanMaker による MBean タイプの生成
MBean 定義ファイル (MDF) の作成
WebLogic MBeanMaker を使用して MBean タイプの生成
WebLogic MBeanMaker を使用して MBean JAR ファイル (MJF) の作成
WebLogic Server 環境に MBean タイプのインストール
資格マップを管理するためのメカニズムの提供
オプション 1 : 資格マップ管理用のスタンドアロン ツールの開発
オプション 2 : Administration Console に既存の資格マップ管理ツールの統合
12
カスタム セキュリティ プロバイダからのイベントの監査
セキュリティ サービスと監査サービス
カスタム セキュリティ プロバイダからの監査方法
監査イベントの作成
AuditEvent SSPI の実装
監査イベント コンビニエンス インタフェースの実装
監査重大度
監査コンテキスト
例 : AuditRoleEvent インタフェースの実装
監査サービスの取得、および取得した監査サービスによる監査イベントの書き込み
例 : 監査サービスを取得および使用してロール監査イベントの書き込み
プロバイダの MBean から管理オペレーションの監査
例 : プロバイダの MBean から管理オペレーションの監査
ベスト プラクティス : プロバイダの MBean からの監査イベントのポスト
13
サーブレット認証フィルタ
認証フィルタの概念
フィルタが必要な理由
サーブレット認証フィルタ設計上の考慮事項
フィルタが呼び出されるしくみ
認証プロバイダからサーブレット認証フィルタを呼び出さない
フィルタを実装するプロバイダの例
カスタム サーブレット認証フィルタの開発方法
適切な SSPI による実行時クラスの作成
サーブレット認証フィルタ SSPI の実装
フィルタ インタフェース メソッドの実装
フィルタからのチャレンジ ID アサーションの実装
Weblogic MBeanMaker による MBean タイプの生成
WebLogic MBeanMaker を使用して MBean JAR ファイル (MJF) の作成
Administration Console による認証プロバイダのコンフィグレーション
14
バージョン管理可能なアプリケーションのプロバイダ
バージョン管理可能なアプリケーションの概念
バージョン管理可能なアプリケーションのプロセス
バージョン管理可能なアプリケーションのカスタム プロバイダを開発する必要があるか
カスタム VersionableApplication プロバイダの開発方法
適切な SSPI による実行時クラスの作成
VersionableApplication SSPI の実装
例 : サンプル VersionableApplication プロバイダの実行時クラスの作成
WebLogic MBeanMaker による MBean タイプの生成
WebLogic MBeanMaker を使用して MBean JAR ファイル (MJF) の作成
Administration Console によるバージョン管理可能なアプリケーションのカスタム プロバイダのコンフィグレーション
15
証明書パス プロバイダ
証明書の検索と検証の概念
証明書の検索と検証のプロセス
証明書パス検証プロバイダと証明書パス ビルダを実装する必要があるか
証明書パス プロバイダ SPI MBean
WebLogic 証明書パス検証プロバイダ SSPI
WebLogic 証明書パス ビルダ SSPI
WebLogic Server 証明書パス SSPI と JDK SPI との関係
カスタム証明書パス プロバイダを開発する必要があるか
カスタム証明書パス プロバイダの開発方法
適切な SSPI による実行時クラスの作成
JDK CertPathBuilderSpi インタフェース、CertPathValidatorSpi インタフェースのいずれか、または両方の実装
証明書パス プロバイダ SSPI の実装
JDK セキュリティ プロバイダ SPI の実装
CertPathBuilderSpi 実装で CertPathBuilderParametersSpi SSPI の使用
CertPathValidatorSpi 実装で CertPathValidatorParametersSpi SSPI の使用
ビルダまたは検証プロバイダの結果の返し
例 : サンプル証明書パス プロバイダの作成
WebLogic MBeanMaker による MBean タイプの生成
MBean 定義ファイル (MDF) の作成
WebLogic MBeanMaker を使用して MBean タイプの生成
WebLogic MBeanMaker を使用して MBean JAR ファイル (MJF) の作成
WebLogic Server 環境に MBean タイプのインストール
Administration Console によるカスタム証明書パス プロバイダのコンフィグレーション
A
MBean 定義ファイル (MDF) 要素の構文
MBeanType (ルート) 要素
MBeanAttribute 下位要素
MBeanConstructor 下位要素
MBeanOperation 下位要素
MBean オペレーションの例外
例 : 有効な整形式 MBean 定義ファイル (MDF)