プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Access Management開発者ガイド
11
g
リリース2 (11.1.2.3.0) for All Platforms
E67354-04
ライブラリ
製品
次
目次
例一覧
図一覧
表一覧
タイトルおよび著作権情報
はじめに
対象読者
ドキュメントのアクセシビリティについて
関連ドキュメント
表記規則
Oracle Access Managementの新機能
ガイド変更: 11
g
リリース2パッチ・セット3 (11.1.2.3.0)
11
g
リリース2 (11.1.2)の新機能
製品およびコンポーネントの名前の変更
第I部 概要
1
Oracle Access Managementコンポーネントによる開発
1.1
Access Managerについて
1.2
Mobile and Socialについて
1.3
Identity Federationについて
1.4
Security Token Serviceについて
1.5
システム要件と動作保証情報
第II部 Access Managerによる開発
2
アクセス・クライアントの開発
2.1
アクセス・クライアントの開発について
2.1.1
Access SDKおよびAPIについて
2.1.2
カスタム・アクセス・クライアントについて
2.1.2.1
カスタム・アクセス・クライアントを作成するケース
2.1.2.2
アクセス・クライアントのアーキテクチャ
2.1.3
アクセス・クライアントのリクエスト処理について
2.2
Access SDKのインストール
2.3
アクセス・クライアントの開発
2.3.1
アクセス・クライアントの構造
2.3.2
アクセス・クライアントの一般的な実行フロー
2.3.3
サンプル・コード: 簡単なアクセス・クライアント
2.3.4
注釈付きサンプル・コード: 簡単なアクセス・クライアント
2.3.5
サンプル・コード: Javaログイン・サーブレット
2.3.6
注釈付きサンプル・コード: Javaログイン・サーブレット
2.3.7
サンプル・コード: その他のメソッド
2.3.8
注釈付きサンプル・コード: その他のメソッド
2.3.9
サンプル・コード: Javaでの証明書ベース認証
2.3.10
サンプル・コード: ASDKを使用したOAM_ID Cookieの作成
2.4
Access SDKログの生成
2.5
アクセス・クライアント・プログラムの構築
2.5.1
開発環境の設定
2.5.2
新規アクセス・クライアント・プログラムのコンパイル
2.6
アクセス・クライアントの構成およびデプロイ
2.6.1
構成要件
2.6.2
必要な構成ファイルの生成
2.6.3
SSL証明書とキー・ファイルの要件
2.6.3.1
簡易トランスポート・セキュリティ・モード
2.6.3.2
証明書トランスポート・セキュリティ・モード
2.7
互換性: 11
g
と10
g
のAccess SDKおよびAPI
2.7.1
11
g
Access SDKの互換性
2.7.2
10
g
JNI ASDKと11
g
Access SDKの互換性
2.7.3
非推奨: 10
g
JNI ASDK
2.8
10gアプリケーションの移行と変換
2.8.1
11gとの併用を可能にする10g ASDKコンポーネントの移行
2.8.1.1
簡易モードの10g ASDKコンポーネントの移行
2.8.1.2
証明書モードの10g ASDKコンポーネントの移行
2.8.2
10gコードの変換
2.8.2.1
Access SDKの初期化および非初期化
2.8.2.2
アクセス操作の実行
2.9
ベスト・プラクティス
2.9.1
カスタム・アクセス・クライアントでの問題の回避
2.9.2
アクセス・クライアントに関する問題の特定と解決
2.9.3
環境に関する問題の解決
2.9.3.1
Java EEコンテナ
2.9.3.2
Oracle WebLogicサーバー
2.9.3.3
その他のアプリケーション・サーバー
2.9.4
高負荷環境のためのチューニング
3
カスタム認証プラグインの開発
3.1
認証プラグインの概要
3.1.1
カスタム・プラグインのライフ・サイクルについて
3.1.2
計画、認証モデルおよびプラグインについて
3.1.2.1
デシジョン・エンジンを使用する方法のプロセスについて
3.1.2.2
ハードコードを使用する方法のプロセスについて
3.2
マルチステップ認証フレームワークの概要
3.2.1
マルチステップ・フレームワークについて
3.2.2
プロセスの概要: マルチステップ認証
3.2.3
PAUSE状態について
3.2.4
収集される情報について
3.2.4.1
UserContextData
3.2.4.2
UserActionContext
3.2.4.3
UserAction
3.2.4.4
UserActionMetaData
3.3
プラグイン・インタフェースの概要
3.3.1
プラグイン・インタフェースについて
3.3.1.1
GenericPluginService
3.3.1.2
AuthnPluginService
3.3.2
プラグイン階層について
3.4
サンプル・コード: カスタム・データベース・ユーザー認証プラグイン
3.4.1
サンプル・コード: データベース・ユーザー認証プラグイン
3.4.2
プラグイン構成メタデータ要件のサンプル
3.4.3
プラグインのサンプル・マニフェスト・ファイル
3.4.4
プラグインJARファイル構造
3.5
認証プラグインの開発
3.5.1
カスタム認証プラグインの記述について
3.5.2
カスタム認証プラグインの記述
3.5.3
認証プラグインのエラー・コード
3.5.4
カスタム認証プラグインのコンパイルに必要なJARファイル
4
カスタム・ページの開発
4.1
カスタム・ページ・フレームワークの概要
4.1.1
OAM_REQトークンを返す
4.1.2
エンド・ポイントを返す
4.2
カスタム・ページによる認証
4.2.1
mod_ossoエージェントの使用
4.2.1.1
OSSO 10
g
4.2.1.2
11
g
OAMサーバー
4.2.1.3
プロセスの概要: プログラムによるクライアントの開発
4.2.2
要求していないPOSTの使用
4.2.3
DCC WebGatesでの要求していないログインの使用
4.2.4
認証後のカスタムOSSO Cookieの設定
4.3
カスタム・ログイン・ページの理解
4.3.1
フォームベース・ログイン・ページの作成
4.3.2
ページ・リダイレクション・プロセス
4.4
カスタム・エラー・ページの理解
4.4.1
エラー・ページのカスタマイズの有効化
4.4.2
標準エラー・コード
4.4.3
セキュリティ・レベルの構成
4.4.4
セカンダリ・エラー・メッセージの伝播
4.4.5
サンプル・コード: エラー・コードの取得
4.4.6
エラー・データ・ソースの一覧
4.5
カスタム・パスワード・ページの理解
4.5.1
パスワード・ページWARのカスタマイズ
4.5.2
リクエスト・キャッシュの使用
4.5.3
パスワード・サービスURLの指定
4.5.4
サンプル・コード: 警告メッセージの取得
4.5.5
サンプル・コード: パスワード・ポリシー・エラー・コードの取得
4.5.6
サンプル・コード: パスワード・ポリシー・ルールの取得
4.6
カスタム・ページでの資格証明コレクタの使用
4.6.1
カスタム・ページを伴う外部資格証明コレクタについて
4.6.2
DCCを使用したフォームベース・ログイン・ページの作成
4.6.3
DCCトンネリングのためのカスタム・ログインおよびエラー・ページについて
4.7
カスタム・エラー・ページおよびカスタム・ログアウト・ページのデプロイメント・パスの指定
5
ポリシー・オブジェクトの管理
5.1
ポリシー管理APIについて
5.1.1
Access Managerポリシー・モデル
5.1.2
セキュリティ・モデル
5.1.3
リソースURL
5.1.4
URLリソースおよびサポートされているHTTPメソッド
5.1.5
エラー処理
5.2
互換性
5.3
ポリシー・オブジェクトの管理
5.3.1
HTTPメソッド
5.3.2
メディア・タイプ
5.3.3
リソース一覧
5.4
クライアント・ツール
5.5
cURLコマンドの例
アプリケーション・ドメインの取得cURLコマンド
新規アプリケーション・ドメインの作成cURLコマンド
すべての認証スキームの取得cURLコマンド
認証スキーム作成cURLコマンド
特定の認証スキームの取得cURLコマンド
アプリケーション・ドメインのすべてのリソースの取得cURLコマンド
アプリケーション・ドメイン内でのリソース作成cURLコマンド
アプリケーション・ドメインのすべてのポリシーの取得cURLコマンド
6
偽装を管理するアプリケーションの開発
6.1
偽装について
6.1.1
偽装の概念と用語
6.1.2
偽装権限付与の構文
6.1.3
SSOサービスを使用した偽装トリガーの呼出し
6.1.4
API抽象化を使用しない偽装のトリガー方法
6.1.5
偽装セッション中のインパーソネータ・アイデンティティの伝達
6.2
偽装サポートの構成
6.2.1
oam-config.xmlによる偽装の構成
6.2.2
idmConfigToolによる偽装の構成
6.2.3
認証スキームの構成
6.3
SSOログインおよび偽装のテスト
第III部 Mobile and Socialによる開発
7
Mobile and SocialクライアントSDKを使用したアプリケーションの開発
7.1
始める前に
7.2
モバイルおよびソーシャル・サービス・アプリケーションの開発の概要
7.3
ユーザー・プロファイル・サービスを伴うアプリケーション作成の概要
7.4
インターネット・アイデンティティ・サービス・アプリケーションの開発の概要
8
JavaクライアントSDKを使用したモバイルおよびソーシャル・サービス・アプリケーションの開発
8.1
始める前に
8.2
JavaクライアントSDKを使用した認証サービスの起動
8.2.1
JavaクライアントSDKクラスのインポート
8.2.2
オブジェクトの初期化とエンドポイントの定義
8.2.3
クライアント・トークンの作成
8.2.4
ユーザー・トークンの作成
8.2.5
アクセス・トークンの作成
8.2.6
クライアント・トークンの検証
8.2.7
ユーザー・トークンの検証
8.2.8
ユーザー・トークンを使用したユーザー参照の実行
8.2.9
クライアント・トークンの削除
8.3
JavaクライアントSDKを使用したユーザー・プロファイル・サービスの起動
8.3.1
ユーザーの使用
8.3.1.1
Javaクラスのインポートとユーザーの宣言
8.3.1.2
ユーザーの作成
8.3.1.3
ユーザーの読取り
8.3.1.4
ユーザーの更新
8.3.1.5
ユーザーの削除
8.3.1.6
ユーザーの検索
8.3.1.7
ユーザー属性の取得と結果の検証
8.3.2
グループの使用
8.3.2.1
Javaクラスのインポートとグループの宣言
8.3.2.2
グループの作成
8.3.2.3
グループの読取り
8.3.2.4
グループの更新
8.3.2.5
グループの削除
8.3.2.6
グループの検索
8.3.2.7
ページング・サポートを使用したグループの検索
8.3.2.8
グループへのユーザーの追加
8.3.2.9
グループ・メンバーシップ情報の取得
8.3.2.10
グループ内のメンバーの検索
8.3.2.11
グループからのメンバーの削除
8.3.2.12
グループ所有権の割当て
8.3.2.13
グループ所有権情報の取得
8.3.2.14
グループ所有者の検索
8.3.2.15
グループ所有者の削除
8.3.2.16
addMemberOfを使用したグループへのグループ(またはユーザー)の追加
8.3.2.17
getMemberOfを使用したグループ・メンバーシップの取得
8.3.2.18
searchMemberOfを使用したグループの検索
8.3.2.19
deleteMemberOfを使用したグループからのグループ(またはユーザー)の削除
8.3.2.20
addOwnerOfを使用したグループ所有権の割当て
8.3.2.21
getOwnerOfを使用したグループ所有権情報の取得
8.3.2.22
searchOwnerOfを使用したグループ所有者の検索
8.3.2.23
deleteOwnerOfを使用したグループからのグループ(またはユーザー)の削除
8.3.3
組織の使用
8.3.3.1
Javaクラスのインポートとグループの宣言
8.3.3.2
ヘルパー・ユーティリティを使用したユーザー・データの作成
8.3.3.3
ヘルパー・ユーティリティを使用したマネージャの確立と関係のレポート
8.3.3.4
データ準備ユーティリティを使用した異なる階層でのユーティリティの作成
8.3.3.5
マネージャの検証
8.3.3.6
直属の部下の検証
8.3.3.7
scope=all機能を使用したすべての部下の取得
8.3.3.8
Scope=toTop機能を使用したマネージャ連鎖の取得
8.3.3.9
プリフェッチ機能を使用した部下の詳細の取得
8.3.3.10
プリフェッチ機能を使用したマネージャ・データの取得
8.3.3.11
マネージャからの部下の削除
8.3.4
ページング・サポートを使用した検索
8.4
JavaクライアントSDKを使用した認可サービスの起動
9
iOSクライアントSDKを使用したモバイルおよびソーシャル・サービス・アプリケーションの開発
9.1
iOSクライアントSDKのスタート・ガイド
9.1.1
XcodeでのiOSクライアントSDKの使用のスタート・ガイド
9.2
iOSクライアントSDKを使用した認証サービスの起動
9.2.1
必須オブジェクトの初期化
9.2.2
サービスの設定
9.2.3
認証プロセスの完了
9.2.4
ユーザーのログアウト
9.3
URLベース構成の設定
9.4
M&S認証の初期化プロパティについて
9.5
オフライン認証について
9.6
ソーシャル・アイデンティティ認証の起動
9.7
iOSクライアントSDKを使用したユーザー・プロファイル・サービスの起動
9.7.1
ユーザーの使用
9.7.2
グループの使用
9.7.3
組織の使用
9.7.4
非同期APIの使用
9.8
モバイル・シングル・サインオン・エージェント・アプリケーションの起動
9.8.1
Webブラウザからのモバイル・シングル・サインオン・エージェント・アプリケーションの起動
9.9
クライアント証明書を使用した認証
9.9.1
クライアント証明書のインポート
9.9.1.1
importClientCertificateFromFile:presenter:delegate:
9.9.1.2
importClientCertificateFromFile:password:error:
9.9.2
スタンドアロン認証の実行
9.9.3
混合モード認証の実行
9.10
OAuth2.0 for iOS SDKの理解と使用
9.10.1
OAM Mobile and Social (M&S) OAuth
9.10.1.1
認証
9.10.2
標準フロー(一般的な実装)
9.10.2.1
認証スコープ
9.10.3
新規API
9.10.4
外部ブラウザの使用
9.10.5
保護されたリソースへのアクセス
9.10.5.1
アイデンティティ・ドメイン・ヘッダー・インジェクションのためのSDKの初期化
9.10.5.2
クライアント・トークンのためのSDKの初期化
9.10.5.3
ユーザー・トークンのためのSDKの初期化
9.10.6
資格証明コレクション
9.11
REST Webサービスの起動
9.11.1
OMRESTRequest APIフローの理解
9.12
iOS SDKを使用したカスタム・モバイル・シングル・サインオン・エージェント・アプリケーションの作成
9.13
ログインおよびKBAビューのカスタマイズ
9.13.1
ネイティブ・ビューのカスタマイズの実装
9.13.2
進行状況ビューのカスタマイズの実装
9.14
暗号化モジュールの使用
9.14.1
ハッシング
9.14.2
対称鍵による暗号化/復号化
9.14.3
非対称鍵による暗号化
9.15
自動ログインおよび資格証明保存機能の使用
9.15.1
自動ログインおよび資格証明保存機能の有効化
9.15.2
ユーザー・プリファレンスの処理
9.15.3
モバイル・デバイスからの資格証明およびプリファレンスの消去
9.15.4
カスタム・ログイン画面の作成
9.16
資格証明ストア・サービス(KeyChain)の使用
9.16.1
ユーザー名およびパスワードの追加
9.16.2
ユーザー名、パスワードおよびテナント名の追加
9.16.3
資格証明の削除
9.16.4
ユーザー名およびパスワードの更新
9.16.5
ユーザー名、パスワードおよびテナント名の更新
9.16.6
ユーザー名およびパスワードの取得
9.16.7
KeyChainItemでのプロパティの格納
9.16.8
KeyChainItemでの複数のプロパティの格納
9.16.9
KeyChainItem内のプロパティの削除
9.16.10
プロパティの取得
10
AndroidクライアントSDKを使用したモバイルおよびソーシャル・サービス・アプリケーションの開発
10.1
AndroidクライアントSDKのスタート・ガイド
10.1.1
Androidアプリケーションの開発およびパッケージ化
10.2
AndroidクライアントSDKを使用した認証サービスの起動
10.3
URLベースの初期化
10.4
初期化プロパティ
10.5
オフライン認証について
10.6
AndroidクライアントSDKを使用したソーシャル・アイデンティティ認証の起動
10.7
モバイル・シングル・サインオン・エージェント・アプリケーションの起動
10.7.1
別のアプリケーション(SSOクライアント)からのモバイル・シングル・サインオン・エージェント・アプリケーションの呼出し
10.7.2
モバイル・ブラウザを使用したモバイル・シングル・サインオン・エージェント・アプリケーションの起動
10.8
AndroidクライアントSDKのユーザー・ロール・モジュールを使用したユーザー・プロファイル・サービスの起動
10.9
クライアント証明書を使用した認証
10.9.1
証明書のインポート
10.9.1.1
サーバー証明書のインポート
10.9.1.2
クライアント・アイデンティティ証明書のインポート
10.9.2
インポート済証明書での操作の実行
10.9.2.1
サーバー証明書
10.9.2.2
クライアント証明書
10.10
AndroidクライアントSDKを使用したOAuthおよびMobile OAuthサービス・アプリケーションの開発
10.10.1
OAuth2.0 for Androidの理解
10.10.2
Oracle Access Manager Mobile and Social (M&S) OAuth
10.10.2.1
認証
10.10.3
標準フロー(一般的な実装)
10.10.3.1
認証
10.10.4
新規API
10.10.5
SDKからのトークンの取得
10.10.6
外部ブラウザの使用
10.10.7
保護されたリソースへのアクセス
10.10.8
資格証明コレクション
10.11
REST Webサービスの起動
10.12
AndroidクライアントSDKを使用したカスタム・モバイル・シングル・サインオン・エージェント・アプリケーションの作成
10.13
ログイン・ビューおよびKBAビューのカスタマイズ
10.14
暗号化APIの使用
10.15
自動ログインおよび資格証明保存機能の使用
10.16
AndroidクライアントSDKのセキュア・ストレージ・モジュールを使用したCredentialStoreServiceの起動
10.17
エラー・コード
11
ソーシャル・アイデンティティ・クライアントSDKを使用したアプリケーションの開発
11.1
始める前に
11.2
ソーシャル・アイデンティティ・アプリケーションの開発の概要
11.2.1
ソーシャル・アイデンティティ・クライアントSDKについて
11.3
アプリケーション用のアイデンティティ・プロバイダのリストの取得
11.4
ソーシャル・アイデンティティとサーバー上で実行されるWebアプリケーションとの統合
11.4.1
Mobile and Socialサーバー上のWebアプリケーションの定義
11.4.2
ソーシャル・アイデンティティ・ログイン・ページとWebアプリケーションとの統合
11.4.2.1
事前作成されたソーシャル・アイデンティティ・ログイン・ページの追加
11.4.2.2
カスタム・ログイン・ページの構築
11.4.3
ユーザー登録の処理
11.4.3.1
カスタム・ユーザー登録ページの使用方法
11.4.3.2
Mobile and Social組込みユーザー登録ページの使用方法
11.4.4
最終的な返信レスポンスの処理
11.4.4.1
Secured Attribute Exchange (SAE)トークン・レスポンス属性
11.5
Access Managerで保護されているWebアプリケーションとの統合
11.6
ソーシャル・アイデンティティとモバイル・アプリケーションの統合
11.6.1
Mobile and Socialサーバー上のモバイル・アプリケーションの定義
12
Mobile and Socialサーバーの機能の拡張
12.1
モバイルおよびソーシャル・サービスの新しい認証サービス・プロバイダの作成
12.1.1
カスタム認証サービス・プロバイダの開発
12.1.1.1
TokenServiceインタフェースの実装
12.1.1.2
MobileCompositeTokenServiceProviderの拡張
12.1.2
カスタム認証サービス・プロバイダの構築
12.1.2.1
カスタム認証サービス・プロバイダを構築するには
12.1.3
カスタム認証サービス・プロバイダのデプロイ
12.1.3.1
カスタム認証サービス・プロバイダをデプロイするには
12.2
インターネット・アイデンティティ・サービス用の新しいアイデンティティ・サービス・プロバイダの作成
12.2.1
カスタム・アイデンティティ・サービス・プロバイダの開発
12.2.2
カスタム・アイデンティティ・サービス・プロバイダの構築
12.2.2.1
カスタム・アイデンティティ・サービス・プロバイダを構築するには
12.2.3
カスタム・アイデンティティ・サービス・プロバイダのデプロイ
12.2.3.1
カスタム・アイデンティティ・サービス・プロバイダをデプロイするには
13
Oracle Mobile Authenticatorのカスタマイズ
13.1
Oracle Mobile Authenticatorの理解
13.2
iOSでのOracle Mobile Authenticatorのカスタマイズ
13.2.1
Xcodeの使用
13.2.2
Oracle Mobile Authenticatorのカスタマイズ
13.2.2.1
アプリケーション・アートの変更
13.2.2.2
アプリケーション名とテキストの変更
13.2.2.3
オンラインおよびオフライン・モードの切換え
13.2.2.4
アプリケーション・バージョンの変更
13.2.2.5
アプリケーションへの署名
13.3
AndroidでのOracle Mobile Authenticatorのカスタマイズ
13.3.1
apktoolの使用
13.3.2
カスタマイズのオプション
13.3.2.1
アプリ・アイコンの変更
13.3.2.2
アプリケーション名とテキストの変更
13.3.2.3
オンラインおよびオフライン・モードの切換え
13.3.2.4
バージョンおよびコード番号の変更
13.3.2.5
アプリケーションへの署名
14
Mobile and Social REST APIの使用
リクエストおよびレスポンス・ヘッダーの属性名リファレンス
X-IDAAS-REST-VERSION
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
説明
X-IDAAS-SERVICEDOMAIN
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
説明
X-IDAAS-REST-AUTHORIZATION
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
説明
AUTHORIZATION
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
説明
X-Idaas-Rest-Subject-Type
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
説明
X-Idaas-Rest-Subject-Value
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
X-Idaas-Rest-Subject
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
X-Idaas-Rest-Subject-CREDENTIAL
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
説明
X-Idaas-Rest-Subject-Username
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
X-Idaas-Rest-Subject-Password
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
X-Idaas-Rest-New-Token-Type-To-Create
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
説明
X-Idaas-Rest-Application-Context
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
X-Idaas-Rest-Application-Resource
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
X-Idaas-Rest-User-Principal
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
X-Idaas-Rest-Provider-Type
この属性の使用場所
属性タイプ
cURLサンプル・コマンド
Mobile and Social RESTセキュリティ・フィルタ・リファレンス
UIDPASSWORDによる認可
cURLコマンド
予想される出力
説明
HTTP Basicによる認可
cURLコマンド
予想される出力
説明
Access Managerトークンによる認可
cURLコマンド
予想される出力
説明
モバイルおよびソーシャル・サービスRESTリファレンス: 認証および許可
クライアント・トークンの認証
cURLコマンド
予想される出力
説明
ユーザー・トークンの認証
cURLコマンド
予想される出力
説明
アクセス・トークンの認証
cURLコマンド
予想される出力
説明
複数トークンの認証
cURLコマンド
予想される出力
説明
(クライアント)トークンの取得または検証
cURLコマンド
予想される出力
説明
トークンの削除
cURLコマンド
予想される出力
説明
許可
cURLコマンド
予想される出力
説明
JWTユーザー・トークンの作成
cURLコマンド
予想される出力
JWTユーザー・トークン、OAMユーザー・トークンおよびOAMマスター・トークンの作成
cURLコマンド
予想される出力
JWTトークンのOAMトークンとの交換
cURLコマンド
予想される出力
JWT-OAM + PINトークン・サービス・プロバイダのテスト(モバイルの場合)
JWT-OAM + PINトークン・サービス・プロバイダのテスト(デスクトップの場合)
OAMユーザー・トークンを使用したOAMアクセス・トークンの作成
cURLコマンド
予想される出力
JWT USER TOKENの検証
cURLコマンド
予想される出力
OAM USER TOKENの検証
cURLコマンド
予想される出力
OAM USER TOKENの削除
cURLコマンド
予想される出力
モバイルおよびソーシャル・サービスRESTリファレンス: モバイル・シングル・サインオン・トークンのコマンド
モバイル・シングル・サインオン・エージェント・アプリケーションのためのクライアント登録ハンドルの作成
cURLコマンド
予想される出力
説明
モバイル・シングル・サインオン・クライアント・アプリケーションのためのクライアント登録ハンドルの作成(ユーザー名のシナリオ)
cURLコマンド
予想される出力
説明
モバイル・シングル・サインオン・クライアント・アプリケーションのためのクライアント登録ハンドルの作成(ユーザー・トークンのシナリオ)
cURLコマンド
予想される出力
説明
ユーザー・トークンのリクエストの作成
cURLコマンド
予想される出力
説明
アクセス・トークンのリクエストの作成
cURLコマンド
予想される出力
説明
シングル・サインオン・エージェントによる独自に使用するアクセス・トークンを作成するためのリクエスト
cURLコマンド
予想される出力
説明
クライアント登録ハンドルの検証
cURLコマンド
予想される出力
説明
モバイルおよびソーシャル・サービスRESTリファレンス: ユーザー・プロファイル・サービスのコマンド
基本的なユーザー操作
ユーザーの作成
ユーザーの読取り
ユーザーの更新
ユーザーの削除
基本的なグループ操作
グループの作成
グループの読取り
グループの更新
グループの削除
memberOf関係の操作
memberOf関係の作成
memberOf関係の読取り
memberOf関係の削除
members関係の操作
members関係の作成
members関係の読取り
members関係の削除
manager関係の操作
manager関係の作成
manager関係の読取り
manager関係の削除
reports関係の操作
reports関係の作成
reports関係の読取り
reports関係の削除
ownerOf関係の操作
ownerOf関係の作成
ownerOf関係の読取り
ownerOf関係の削除
personOwner関係の操作
personOwner関係の作成
personOwner関係の読取り
personOwner関係の削除
groupOwner関係の操作
groupOwner関係の作成
groupOwner関係の読取り
groupOwner関係の削除
groupOwnerOf関係の操作
groupOwnerOf関係の作成
groupOwnerOf関係の読取り
groupOwnerOf関係の削除
groupMemberOf関係の操作
groupMemberOf関係の作成
groupMemberOf関係の読取り
groupMemberOf関係の削除
groupMembers関係の操作
groupMembers関係の作成
groupMembers関係の読取り
groupMembers関係の削除
ユーザーの検索操作
ユーザーの検索
PageSizeおよびPagePosによるユーザーの検索
検索パラメータがあり、検索フィルタがないユーザーの検索
検索フィルタによるユーザーの検索
グループの検索
関係の検索
attrsToFetch問合せパラメータ機能
attrsToFetchによるユーザーの読取り
attrsToFetchによるグループの検索
attrsToFetchによる関係の検索
prefetch問合せパラメータ機能
prefetchによるユーザーの読取り
scope問合せパラメータ機能
scopeによる関係の検索
実例
モバイルSSOエージェントによるクライアント登録ハンドルのリクエスト(クライアント・トークン)
ビジネス・アプリケーションのかわりのモバイルSSOエージェントによるクライアント登録ハンドルのリクエスト
ユーザー・トークン・リクエスト
アクセス・トークン・リクエスト
Access Managerマスター・トークン認証
KBAレスポンスによるデバイス登録リクエスト
ヘッダーでのテナント名の指定
エラー・メッセージ
第IV部 OAuthサービスを使用した開発
15
OAuthサービスAPIの使用
標準の3-legged OAuthサービス・フローでのRESTの使用
サンプル・リクエスト
パート1: フロントチャネル・リクエスト
第2の部分: バックチャネル・リクエスト
標準の2-legged OAuthサービス・フローでのRESTの使用
サンプル・レスポンス
クライアント資格証明の使用
リソース所有者の資格証明の使用
リフレッシュ・トークンの使用
SAMLクライアント・アサーションの使用
JWTクライアント・アサーションの使用
HTTP BasicヘッダーでのユーザーID/パスワード資格証明およびクライアントID+シークレットの使用
ユーザーID/パスワード資格証明およびJWTクライアント・アサーションの使用
ユーザーID/パスワード資格証明およびSAMLクライアント・アサーションの使用
SAMLユーザー・アサーション資格証明およびHTTP BasicヘッダーでのクライアントID+シークレットの使用
SAMLユーザー・アサーション資格証明およびSAMLクライアント・アサーションの使用
SAMLユーザー・アサーション資格証明およびJWTクライアント・アサーションの使用
JWTユーザー・アサーション資格証明およびHTTP BasicヘッダーでのクライアントID+シークレットの使用
JWTユーザー・アサーション資格証明およびSAMLクライアント・アサーションの使用
JWTユーザー・アサーション資格証明およびJWTクライアント・アサーションの使用
アイデンティティ・トークンの取得
クライアント・アイデンティティ・トークンの取得
クライアント資格証明の使用
サード・パーティが生成したSAMLクライアント・アサーションの使用
サード・パーティが生成したJWTクライアント・アサーションの使用
ユーザー・アイデンティティ・トークンの取得
ユーザーID、パスワードおよび様々なクライアント資格証明を使用したユーザー・アイデンティティ・トークンの取得
SAMLユーザー・アサーション資格証明および様々なクライアント資格証明を使用したユーザー・アイデンティティ・トークンの取得
JWTユーザー・アサーション資格証明および様々なクライアント資格証明を使用したユーザー・アイデンティティ・トークンの取得
アクセス・トークンの検証
HTTP BasicヘッダーでのクライアントIDおよびシークレットの使用
クライアント・アサーションの使用
アクセス・トークンのイントロスペクションの実行
HTTP BasicヘッダーでのクライアントIDおよびシークレットの使用
クライアント・アサーションの使用
アクセス・トークンの取消し
HTTP BasicヘッダーでのクライアントIDおよびシークレットを使用したアクセス・トークンの取消
クライアント・アサーションを使用したアクセス・トークンの取消
シークレット鍵の管理
シークレット鍵の作成
シークレット鍵の取得
シークレット鍵の削除
ベーシック認証を使用したシークレット鍵の作成
RESTを使用したOAuthサービス・ユーティリティ・プロファイル・サービスの管理
自分のプロファイルの読取り
自分のプロファイルの更新
ユーザー・プロファイルの作成
ユーザー・プロファイルの読取り
ユーザー・プロファイルの更新
ユーザー・プロファイルの削除
グループ・プロファイルの作成
グループ・プロファイルの読取り
グループ・プロファイルの更新
グループ・プロファイルの削除
ユーザー・プロファイルの削除
RESTを使用したOAuthサービス承認管理サービスの管理
クライアント資格証明とスコープを伴うアクセス・トークンの取得
承認を付与するための承認管理サーバーへのアクセス
承認を取得するための承認管理サーバーへのアクセス
承認を取り消すための承認管理サーバーへのアクセス
UserProfileリソースにアクセスするためのクライアント権限の付与
ユーザーのUserProfileリソースのためのアクセス・トークンの取得
アクセス・トークンを使用したユーザーのUserProfileリソースへのアクセス
OAuthサービスモバイル・クライアント3-leggedフローでのRESTの使用
アプリケーション・プロファイルの取得
モバイル・デバイス・クライアント検証コードの要求
デバイス登録用の認可コードの要求
クライアント・アサーションとJWTユーザー・アサーションの作成
ソーシャル認証を使用したクライアント・アサーションとJWTユーザー・アサーションの作成
モバイル・クライアント登録のための検証コードの要求
モバイル・デバイス登録用の認可コードの要求
アクセス・トークンの作成
ソーシャル認証を使用したアクセス・トークンの作成
ログアウト
OAuthサービスモバイル・クライアント2-leggedフローでのRESTの使用
アプリケーション・プロファイルの取得
モバイル・デバイス・クライアント検証コードの要求
モバイル・アプリケーションの登録とアサーションの作成
ナレッジベース認証(KBA)チャレンジ・リクエストへの回答
ログアウト
ログイン
有効なJWTを使用したOAMユーザーおよびマスター・トークンの作成
有効なOAMユーザー・トークンを使用したOAMアクセスおよびマスター・トークンの作成
OAM資格証明権限タイプを使用したOAuthサービス・アクセス・トークンの作成
標準JWTユーザー・アサーションを使用したOAuthサービス・アクセス・トークンの作成
サーバー側SSO機能が無効の場合のモバイル・フロー
ユーザー名とパスワードを使用したMobile App1の登録
JWTユーザー・アサーション権限を使用したMobile App2の登録
JWTクライアント・アサーションおよびユーザー・アサーションを使用した、標準JWTアサーション権限タイプを使用するアクセス・トークンの作成
ナレッジベース認証(KBA)チャレンジ・リクエストへの回答
リフレッシュ・トークンを使用したアクセス・トークンの作成
JWTユーザー・アサーションの終了
ログイン(JWTユーザー・アサーションの作成)
JWTユーザー・アサーションを使用したOAMユーザー・トークンとOAMマスター・トークンの作成(トークン交換)
JWTユーザー・アサーション + ユーザーPIN資格証明を使用したOAMユーザー・トークンとOAMマスター・トークンの作成(トークン交換)
OAMユーザー・トークンを使用したOAMアクセス・トークンの作成
資格証明、PINおよびアサーションを使用したトークンの取得
クライアント資格証明 + ユーザー名およびパスワードの組合せの使用
概要
JWTユーザー・トークンの取得方法
JWTアクセス・トークンの取得方法
OAMユーザー・トークンおよびマスター・トークンの取得方法
クライアント資格証明 + oracle_user_credentialsの組合せの使用
概要
JWTユーザー・トークンの取得方法
JWTアクセス・トークンの取得方法
OAMユーザー・トークンおよびマスター・トークンの取得方法
JWTアサーションの使用
概要
JWTユーザー・トークンの取得方法
JWTアクセス・トークンの取得方法
OAMユーザー・トークンおよびマスター・トークンの取得方法
OAMアクセス・トークンとともにサーバー側キー・ストア内にあるOAMユーザー・トークンを取得する方法
JWTアサーション + PINの使用
概要
OAMユーザー・トークンおよびマスター・トークンの取得方法
SAML2アサーションの使用
概要
JWTユーザー・トークンの取得方法
JWTアクセス・トークンの取得方法
OAMユーザー・トークンおよびマスター・トークンの取得方法
モバイル・デバイス上でのOAMトークンの取得
検証コードのリクエスト方法
クライアントの登録方法
OAMユーザー・トークンおよびマスター・トークンの取得方法
OAMアクセス・トークンの取得方法
16
OAuthサービスのカスタマイズ
16.1
概要
16.2
カスタム・クライアント管理プラグインの作成
16.2.1
デフォルトのクライアント管理プラグインの実装
16.2.2
クライアントの実行の流れ
16.2.3
デプロイに関する注意点
16.2.4
サンプル・コード
16.3
カスタム・リソース・サーバー・プロファイル管理プラグインの作成
16.3.1
デフォルトのリソース・サーバー・プロファイル管理プラグインの実装
16.3.2
リソース・サーバーの使用および検証
16.3.3
開発およびデプロイに関する注意点
16.3.4
サンプル・コード
16.4
カスタム・トークン属性プラグインの作成
16.4.1
デプロイに関する注意点
16.4.2
サンプル・コード
16.5
カスタム認可および承認サービス・プラグインの作成
16.5.1
デフォルトのリソース認可およびユーザー承認サービスの実装
第V部 Identity Federationによる開発
17
カスタム・ユーザー・プロビジョニング・プラグインの開発
17.1
ユーザー・プロビジョニング・プラグインの概要
17.2
プラグイン・インタフェースの概要
17.3
サンプル・コード: カスタム・ユーザー・プロビジョニング・プラグイン
17.4
ユーザー・プロビジョニング・プラグインの開発
17.4.1
プロセスの概要: カスタム・プラグインの開発
17.4.2
プラグインのコンパイルに必要なファイル
18
Identity FederationのためのREST APIの使用
18.1
リソースURL
18.2
URLリソースおよびサポートされているHTTPメソッド
18.3
リソース一覧
18.4
cURLコマンドの例
POST cURLコマンドを使用したSSOサービスの構成
GET cURLコマンドを使用したSSOサービスの取得
PUT cURLコマンドを使用したSSOサービスの構成
SPパートナの作成cURLコマンド
すべてのSPパートナのリストcURLコマンド
SPパートナ・データの取得cURLコマンド
SPパートナ詳細の更新cURLコマンド
SPパートナ詳細の削除cURLコマンド
POST cURLコマンドを使用したテストSPの有効化
GET cURLコマンドを使用したテストSP有効化の取得
PUT cURLコマンドを使用したテストSPの無効化
/fedrest/configuressoを使用したPOST cURLコマンドの使用によるSSOサービスの構成
/fedrest/createspを使用したSPパートナcURLコマンドの作成
/fedrest/createidpを使用したIdPパートナcURLコマンドの作成
/fedrest/orchestratorを使用したリモートRESTサービスへのフェデレーション・サーバーの接続
19
メッセージ処理プラグインの開発
19.1
カスタムSAML要素の理解
19.2
OIFMessageProcessingPluginの拡張
19.3
メッセージ処理プラグインのデプロイ
19.4
メッセージ処理プラグインの有効化
20
カスタム認証アクションの実装
20.1
カスタム認証アクションの理解
20.1.1
前処理および後処理カスタム認証アクションの使用
20.1.2
カスタム認証アクション・プラグインの設定
20.1.3
カスタム・アクション・フローの理解
20.2
前処理カスタム・アクションの使用
20.2.1
前処理プラグインへのデータの引渡し
20.2.2
前処理アクション用のIdentity Federationの構成
20.3
例: カスタム・アクションの前処理
20.4
後処理カスタム・アクションの使用
20.4.1
後処理プラグインへのデータの引渡し
20.4.2
後処理アクション用のIdentity Federationの構成
20.5
例: カスタム・アクションの後処理
第VI部 Security Token Serviceによる開発
21
カスタム・トークン・モジュールの開発
21.1
Oracle Security Token Serviceカスタム・トークン・モジュール・クラスの概要
21.2
TokenValidatorModuleクラスの記述
21.2.1
TokenValidatorModuleクラスの記述について
21.2.2
TokenValidatorModuleクラスの記述
21.3
TokenIssuanceModuleクラスの記述
21.3.1
TokenIssuanceModuleクラスの記述について
21.3.2
TokenIssuanceModuleクラスの記述
第VII部 付録
A
デプロイメント固有ページの作成
A.1
シングル・サインオン・サーバーでのデプロイメント固有ページの使用方法
A.1.1
パスワード変更ページの動作
A.1.1.1
パスワードが失効している場合
A.1.1.2
パスワードが間もなく失効する場合
A.1.1.3
猶予ログインが有効
A.1.1.4
パスワード変更の強制
A.2
デプロイメント固有ページの記述方法
A.2.1
ログイン・ページのパラメータ
A.2.2
パスワード変更ページのパラメータ
A.3
ページのエラー・コード
A.3.1
OSSO 10gログイン・ページのエラー・コード
A.4
グローバリゼーション・サポートの追加
A.4.1
ページに表示する言語の決定
A.4.1.1
Accept-Languageヘッダーを使用したページの決定
A.4.1.2
ページ・ロジックを使用した言語の決定
A.4.2
ページのレンダリング
A.5
デプロイメント固有ページに関するガイドライン
A.6
デプロイメント固有ページの例
A.6.1
カスタム・クラスの使用
A.7
外部アプリケーションの追加