Oracle® Fusion Middleware

Oracle Platform Security ServicesのREST API

12c (12.2.1.2.0)

E82644-02(原本部品番号:E78085-02)

2016年12月

このドキュメントでは、Oracle Platform Security Servicesで資格証明ストア、キーストアおよびトラスト・ストアを管理するためのREST APIの使用方法を説明します。

Oracle Platform Security Services Oracle Fusion Middleware REST API, 12c (12.2.1.2.0)

E82644-02

Copyright © 2016, Oracle and/or its affiliates.  All rights reserved.

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.

このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。適用されるお客様とOracle Corporationとの間の契約に別段の定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。適用されるお客様とOracle Corporationとの間の契約に定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

目次

タイトルおよび著作権情報

はじめに

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

このガイドで説明する新機能

- 12c (12.2.1.2.0)の新機能と変更された機能

- 12c (12.2.1)の新機能と変更された機能

1 OPSS REST APIについて

- 1.1 OPSS REST APIの概要

- 1.2 OPSSリソースの一般URL構造

- 1.3 RESTリソースの認証

- 1.4 OPSS RESTによるHTTPメソッドの使用

- 1.5 HTTPメソッドのHTTPステータス・コード

2 OPSSクライアントの登録

- 2.1 登録のPOSTメソッド

- 2.2 登録のGETメソッド

- 2.3 登録のPUTメソッド

- 2.4 登録のDELETEメソッド

3 資格証明ストアでの資格証明の管理

- 3.1 資格証明のPOSTメソッド

- 3.2 マップおよびキーを使用した資格証明のGETメソッド

- 3.3 マップを使用した資格証明のGETメソッド

- 3.4 リソースIDを使用した資格証明のGET

- 3.5 リソースIDを使用した資格証明のPUT

- 3.6 リソースIDを使用した資格証明のDELETE

4 キーストアの管理

- 4.1 新しいKSSキーストアのPOSTメソッド

- 4.2 KSSキーストアをインポートするPOSTメソッド

- 4.3 KSSキーストアのパスワードを更新するPUTメソッド

- 4.4 KSSキーストアの信頼できる証明書のPOSTメソッド

- 4.5 ストライプのKSSキーストアのGETメソッド

- 4.6 KSSキーストアの別名のGETメソッド

- 4.7 KSSキーストアの信頼できる証明書のGETメソッド

- 4.8 KSSキーストアの信頼できる証明書のDELETEメソッド

- 4.9 KSSキーストアの秘密鍵プロパティのPOSTメソッド

- 4.10 KSSキーストアの秘密鍵プロパティのGETメソッド

- 4.11 秘密鍵KSSキーストアのDELETEメソッド

- 4.12 キー・ペアKSSキーストアのPOST

- 4.13 キー・ペアKSSキーストアのGETメソッド

- 4.14 キー・ペアKSSキーストアのDELETEメソッド

- 4.15 キーストア・サービスKSSキーストアのDELETEメソッド

5 トラスト・トークンの作成および検証

- 5.1 トラスト・サービス発行トークンのPOSTメソッド

- 5.2 トラスト・サービス検証トークンのPOSTメソッド

6 アクセスの認可

- 6.1 PDPリンクのGETメソッド

- 6.2 ポリシー決定のPOSTメソッド

はじめに

ここでは、このガイドOracle Platform Security Services REST APIで使用されるドキュメントのアクセシビリティ機能および表記規則について説明します。

対象読者

このドキュメントは、RESTful APIを介したOracle Platform Security Services (OPSS)の使用に関心のあるソフトウェア開発者およびアーキテクトを対象としています。このガイドを使用するには、対象読者はあらかじめOPSSに精通している必要があります。

ドキュメントのアクセシビリティについて

Oracleのアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWebサイト(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc)を参照してください。

アクセス可能なOracleサポートへのアクセス

サポートをご購入のOracleのお客様は、My Oracle Supportにアクセスして電子サポートを受けることができます。詳細情報は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info) か、聴覚に障害のあるお客様は (http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs)を参照してください。

関連ドキュメント

詳細は、Oracle Platform Security Servicesのドキュメント・セットにある次のドキュメントを参照してください。

- Oracle Platform Security Servicesリリース・ノート

- Oracle Platform Security Servicesによるアプリケーションの保護

- インフラストラクチャ・セキュリティWLSTコマンド・リファレンス

- Oracle Platform Security ServicesのJava APIリファレンス

- Oracle Platform Security Services MBeanのJava APIリファレンス

表記規則

このマニュアルでは次の表記規則を使用します。

規則

意味

太字

太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

イタリック体

イタリックは、ユーザーが特定の値を指定するプレースホルダ変数を示します。

固定幅フォント

固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

このガイドで説明する新機能

この項では、Oracle Fusion Middleware 12c (12.2.1.x)におけるOracle Platform Security Services (OPSS)の新機能および製品の重要な変更点の概要を示します。

12c (12.2.1.2.0)の新機能と変更された機能

リリース12.2.1.2.0で、このドキュメントに対する変更は次のとおりです。

リソースIDを使用した資格証明のDELETEの追加など、ドキュメント全体の細かい修正。

12c (12.2.1)の新機能と変更された機能

このドキュメントに記載されているOracle Platform Security Services 12c (12.2.1)の新機能と変更された機能は次のとおりです。

- 登録サービスRESTful API。このAPIにより、RESTクライアントではセキュリティ・プラットフォームに登録する機能を持ちます。

- 資格証明サービスRESTful API。このAPIにより、RESTクライアントでは、安全な形式で資格証明を管理するために資格証明ストア・フレームワーク(CSF)を使用する機能を持ちます。「資格証明ストアでの資格証明の管理」を参照してください。

- キーストア・サービスRESTful API。このAPIにより、RESTクライアントでは、キーストアを表示および管理するキーストア・サービス(KSS)の機能を持ちます。「キーストアの管理」を参照してください。

- トラスト・サービスRESTful API。このAPIにより、RESTクライアントでは、トラスト・トークンを管理する機能を持ちます。「トラスト・トークンの作成および検証」を参照してください。

- 認可サービスRESTful API。このAPIにより、RESTクライアントでは、XACML3.0 RESTプロファイル認証を管理する機能を持ちます。「アクセスの認可」を参照してください。

1 OPSS REST APIについて

この項では、Oracle Platform Security Services (OPSS)の管理のためのOracle Fusion Middleware Representational State Transfer (REST) APIについて説明します。

この章の内容は次のとおりです。

- OPSS REST APIの概要

- OPSSリソースの一般URL構造

- RESTリソースの認証

- OPSS RESTによるHTTPメソッドの使用

- HTTPメソッドのHTTPステータス・コード

1.1 OPSS REST APIの概要

OPSS REST APIにより、RESTインタフェースを介してコアなOPSS機能にアクセスできるようになります。このREST APIにより、様々な言語およびプラットフォームでOPSSサービスが使用できます。さらに、APIによって、対応する言語固有のAPIが実装されるのを待つことなくアプリケーションで新しい機能を使用する柔軟性も提供されます。

このリファレンスで説明しているサービスには、次のサービスが含まれます。

- 登録サービス – クライアントをOPSSに登録するために使用するサービス。その他のサービスを使用するには、クライアントをOPSSに登録する必要があります。「OPSSクライアントの登録」を参照してください。

- 資格証明サービス – 資格証明の作成および表示に使用されるサービス。「資格証明ストアでの資格証明の管理」を参照してください。

- キーストア・サービス – キーストアの管理に使用されるサービス。「キーストアの管理」を参照してください。

- トラスト・サービス – トラスト・トークンの作成および検証に使用されるサービス。「トラスト・トークンの作成および検証」を参照してください。

- 認可サービス – ポリシー決定ポイント・システムを使用してリソースへのアクセスを認可するのに使用されるサービス。「アクセスの認可」を参照してください。

注意:

OPSS REST APIサービスをデプロイするには、ドメインにOPSS RESTサービス・アプリケーション・テンプレートが含まれる必要があります。ドメインを作成する際にこのテンプレートを選択することも、既存のドメインを拡張してそれを含めることもできます。詳細は、以下のトピックを参照してください。

- 構成ウィザードによるWebLogicドメインの作成の、Fusion Middlewareドメインの構成

- ドメイン・テンプレート・リファレンスのOracle OPSS RESTサービス・アプリケーション・テンプレートの詳細

1.2 OPSSリソースの一般URL構造

セキュリティの管理には、次のURLを使用します。

https://host:port/opss/v2/resource

各要素の意味は次のとおりです。

- host:port: Oracle Fusion Middlewareを実行しているホストおよびポート。

- resource: RESTリソースを定義する相対パス。使用可能なリソースはこのガイドの中で説明しています。各リソースを定義するWeb Application Definition Language (WADL)ドキュメントにアクセスするには、URLでapplication.wadlを指定します。次に例を示します。

https://host:port/opss/v2/application.wadl

1.3 RESTリソースの認証

Oracle Fusion Middleware RESTリソースにHTTPでアクセスし、Oracle WebLogic Server管理者のユーザー名とパスワードを入力する必要があります。

たとえば、cURLを使用して認証するには、-u cURLオプションを使用してユーザー名とパスワードを渡します。

curl -i -X GET -u username:password https://myhost:7001/opss/v2/keystore

リクエスト本文でデータを送信しないGETおよびDELETEメソッドでは、キーストアまたはキーがパスワードで保護されている場合、カスタム・ヘッダーで、Base64で暗号化されたキーストアおよびキーのパスワードを渡す必要があります。次に例を示します。

curl -i -X DELETE -u username:password -H keystorePassword:cHdkMQ== -H keyPassword:bXlQd2Qy  https://myhost:7001/opss/v2/keystoreservice?"stripeName=myStripe&keystoreName=myKeystore"

1.4 OPSS RESTによるHTTPメソッドの使用

OPSS RESTエンドポイントでは、標準HTTPセマンティクスをサポートします。

RESTメソッド

タスク

GET

RESTリソースに関する情報を取得します。

POST

RESTリソースを追加します。

PUT

RESTリソースを更新します。

DELETE

RESTリソースを削除します。

1.5 HTTPメソッドのHTTPステータス・コード

この項で説明されているリソースの操作に使用されるHTTPメソッドは、次のHTTPステータス・コードのいずれかを返します。

HTTPステータス・コード

説明

200 OK

リクエストは正常に完了しました。ステータス200は、GETまたはPOSTメソッドが成功した場合に返されます。

201 Created

要求が満たされ、新規リソースが作成されます。レスポンスには、新たに作成されたリソースの正規のURIを含むLocationヘッダーが含まれています。

ステータス201は、同期リソースの作成、またはレスポンスが返される前に完了した非同期リソースの作成から返されます。

202 Accepted

要求の処理は受け入れられましたが、処理は完了していません。要求は、実際に処理される時に拒否される可能性があるため、最終的に処理されない場合もあります。

非同期(__detached=true)リソースの作成(アプリケーションのデプロイ時など)または更新(アプリケーションの再デプロイ時など)を指定した場合、操作がまだ進行中である場合に202が返されます。__detached=falseの場合、基本となる操作が適切な時間内に完了しない場合に202が返されることがあります。

クライアントは、レスポンスに含まれるジョブ・リソースのLocationヘッダーを調べて、ジョブが終了した時期を確認する必要があります。ジョブの現在の状態を表すエンティティも返されます。

400 Bad Request

情報が欠落しているか不適切であるため(入力フィールドの検証エラー、必須値の欠落など)、リクエストを処理できませんでした。

401 Unauthorized

リクエストが認可されていません。このリクエストに認証資格証明がないか、または無効です。

403 Forbidden

ユーザーを認証できません。ユーザーにはこのリクエストを実行する権限がありません。

404 Not Found

リクエストには、存在しないリソースURIが含まれています。

405 Method Not Allowed

リクエストに指定されたHTTP動詞(DELETE、GET、POST、PUT)は、このリクエストURIではサポートされていません。

406 Not Acceptable

このリクエストによって識別されたリソースは、リクエストのAcceptヘッダーのいずれかのメディア・タイプに対応する表現を生成できません。たとえば、クライアントのAcceptヘッダーがXMLを返すように要求しているが、リソースとして返すことができるのはJSONのみである場合。

415 Not Acceptable

クライアントのContentTypeヘッダーが正しくありません(たとえば、クライアントがXMLでリクエストを送信しようとしたが、リソースがJSONのみを受理できる場合)。

500 Internal Server Error

サーバーに予期せぬ状態が発生し、リクエストを処理できませんでした。

503 Service Unavailable

サーバーが一時的に高負荷の状態にあるかメンテナンス中であるため、リクエストを処理できません。Oracle WSM REST Webアプリケーションは現在実行されていません。

2 OPSSクライアントの登録

Oracle Platform Security Services (OPSS)では、クライアントの認可ポリシーをプロビジョニングするために登録サービスが使用されます。セキュリティ・サービスでは、これらのポリシーを使用して認可決定が作成されます。RESTクライアントでは、セキュリティ・サービスにアクセスするためにRESTクライアント自体を登録する必要があります。

セクション

メソッド

リソース・パス

登録のPOSTメソッド

POST

/opss/v2/

登録のGETメソッド

GET

/opss/v2/

登録のPUTメソッド

PUT

/opss/v2/

登録のDELETEメソッド

DELETE

/opss/v2/

2.1 登録のPOSTメソッド

新しいクライアントを登録するには、POSTメソッドを使用します。OPSS Restアプリケーション・ストライプ内に、一意の名前を持つアプリケーション・ロールが作成されます。POSTメソッドの入力として渡されるユーザーおよびグループがアプリケーション・ロールのメンバーとして作成されます。指定したリソースに対する権限がOPSS RESTアプリケーション・ストライプに自動的にプロビジョニングされます。

注意:

登録データに変更を加える際にクライアントを識別するには、同じclientName属性値が必要です。

RESTリクエスト

POST /opss/v2/opssRestClient/

リクエスト本文

メディア・タイプ:

application/json

リクエスト本文には、登録リクエストの詳細が含まれます。

表2-1 登録属性

属性

説明

必須

“clientName“

クライアントを識別する一意の名前。

はい

“policystoreStripe“

クライアントが割り当てられるポリシー・ストア・ストライプ

いいえ

“keystore“

クライアントに使用されるキーストアのリスト

いいえ

“credentialMap“

資格証明キーを格納するために使用する資格証明マップの名前。

いいえ

“auditComponent“

クライアントの監査ルールを識別する一意の名前

いいえ

“trustIssueIDD“

トラスト・トークンを発行できるリスト・アイデンティティ・ドメイン

いいえ

“trustValidateIDD“

トラスト・トークンを検証できるリスト・アイデンティティ・ドメイン

いいえ

“adminGroup“

オペレータ・ロールを使用したグループ

いいえ

“operatorGroup“

オペレータ・ロールを使用したグループ

いいえ

“viewerGroup“

ビューア・ロールを使用したグループ

いいえ

clientName以外のすべての属性は複数回指定できます。ユーザーはサービス・スコープに少なくとも次のいずれかを指定する必要があります: policystoreStripe、keystore、credentialMap、auditComponent、trustIssueIDDまたはtrustValidateIDD。さらに、いくつかのグループが権限を持つために、ユーザーは次のいずれかを指定する必要があります: adminGroup、operatorGroupまたはviewerGroup。

サービス・スコープ属性では、ワイルド・カード(*)を指定して、すべてのスコープをクライアントに指定することができます。ワイルドカードは慎重に使用する必要があります。

レスポンス本文

POSTリクエストの出力はリソースIDです。

cURLの例

次の例は、cURLを使用してRESTリソースにPOSTリクエストを発行してクライアントを登録する方法を示しています

curl -i -X POST -u username:password --data @register.json
-H Content-Type:application/json https://myhost:7001/opss/v2/opssRestClient

リクエスト本文の例

JSON形式のリクエスト本文の例を次に示します。

{
"clientName": "myClientName",
"policystoreStripe": "CRM",
"keystore": ["appA", "appB/store1"],
"credentialMap": "mapA",
"auditComponent": "myComponent",
"trustIssueIDD" : ["cisco", "intel"],
"trustValidateIDD" : ["cisco", "intel"],
"adminGroup":"myGroup1",
"operatorGroup":"myGroup2",
"viewerGroup":"myGroup3"
}

2.2 登録のGETメソッド

登録されたクライアントのクライアント属性を表示するには、GETメソッドを使用します。

RESTリクエスト

GET /opss/v2/opssRestClient/clientName

レスポンス本文

メディア・タイプ:

application/json

レスポンス本文には、クライアント登録属性が含まれます。登録属性の詳細は、「表2-1」を参照してください。

cURLの例

次の例は、cURLを使用してRESTリソースにGETリクエストを発行して、登録クライアントを参照する方法を示しています

curl -i -X GET -u username:password https://myhost:7001/opss/v2/opssRestClient/
myClientName

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"clientName": "myClientName",
"policystoreStripe": "CRM",
"keystore": ["appA", "appB/store1"],
"credentialMap": "mapA",
"auditComponent": "myComponent",
"trustIssueIDD" : ["cisco", "intel"],
"trustValidateIDD" : ["cisco", "intel"],
"adminGroup":"myGroup1",
"operatorGroup":"myGroup2",
"viewerGroup":"myGroup3"
}

2.3 登録のPUTメソッド

登録されたクライアントの属性を更新するには、PUTメソッドを使用します。

RESTリクエスト

PUT /opss/v2/opssRestClient/clientName

リクエスト本文

メディア・タイプ:

application/json

リクエスト本文には、クライアント登録属性が含まれています。登録属性の詳細は、「表2-1」を参照してください。

cURLの例

次の例は、cURLを使用してRESTリソースにPUTリクエストを発行してクライアント属性を更新する方法を示しています

curl -i -X POST -u username:password --data @register.json
-H Content-Type:application/json https://myhost:7001/opss/v2/opssRestClient/
myClientName

リクエスト本文の例

JSON形式のリクエスト本文の例を次に示します。

{
"clientName": "myClientName",
"policystoreStripe": "CRM",
"keystore": ["appA", "appB/store1"],
"credentialMap": "mapA",
"auditComponent": "myComponent",
"trustIssueIDD" : ["cisco", "intel"],
"trustValidateIDD" : ["cisco", "intel"],
"adminGroup":"myGroup1",
"operatorGroup":"myGroup2",
"viewerGroup":"myGroup3"
}

2.4 登録のDELETEメソッド

登録されたクライアントを削除するには、DELETEメソッドを使用します。

RESTリクエスト

DELETE /opss/v2/opssRestClient/clientName

cURLの例

次の例は、cURLを使用してRESTリソースにDELETEリクエストを発行して登録されたクライアントを削除する方法を示しています。

curl -i -X DELETE -u username:password https://myhost:7001/opss/v2/opssRestClient/
myClientName

3 資格証明ストアでの資格証明の管理

Oracle Platform Security Services (OPSS)では、安全なフォームで資格証明を管理するため、資格証明ストア・フレームワーク(CSF)を使用します。RESTを使用してストアで資格証明を表示および管理できます。

セクション

メソッド

リソース・パス

資格証明のPOSTメソッド

POST

/opss/v2/credentials

マップおよびキーを使用した資格証明のGETメソッド

GET

/opss/v2/credentials/

マップを使用した資格証明のGETメソッド

GET

/opss/v2/credentials

リソースIDを使用した資格証明のGET

GET

/opss/v2/credentials/resourceId

リソースIDを使用した資格証明のPUT

PUT

/opss/v2/credentials/resourceId

リソースIDを使用した資格証明のDELETE

DELETE

/opss/v2/credentials/resourceId

3.1 資格証明のPOSTメソッド

資格証明ストアで新しい資格証明を作成するには、POSTメソッドを使用します。

RESTリクエスト

POST /opss/v2/credentials

リクエスト本文

メディア・タイプ:

application/json

リクエスト本文には、作成リクエストの詳細が含まれます。

表3-1 資格証明属性

属性

説明

必須

“userName“

資格証明のユーザー名

はい

“password“

資格証明のパスワード

はい

“description“

資格証明の説明

オプション

“expiration“

yyyy-MM-dd' T'HH:mm:ss.SSSZ形式の資格証明の有効期限。

オプション

“namespace“

資格証明ネームスペースの一意の名前

はい

“name“

資格証明を識別する一意の名前

はい

レスポンス本文

POSTリクエストの出力はリソースIDです。

cURLの例

次の例は、cURLを使用してRESTリソースにPOSTリクエストを発行して資格証明ストアに資格証明を作成する方法を示しています

curl -i -X POST -u username:password --data @createcred.json -H Content-Type:application/json https://myhost:7001/opss/v2/credentials

リクエスト本文の例

JSON形式のリクエスト本文の例を次に示します。

{
"userName": "myUser3",
"password": "mypass123",
"description": "mydescription",
"expiration": "5000-07-04T12:08:56.235-0700",
"namespace: "MyMap",
"name":"myKey"
}

3.2 マップおよびキーを使用した資格証明のGETメソッド

CSF全体でマップ名とキー名を指定して資格証明を検索するには、GETメソッドを使用します。

RESTリクエスト

GET /opss/v2/credentials

レスポンス本文

メディア・タイプ:

application/json

レスポンス本文には、資格証明の属性が含まれます。資格証明属性の詳細は、「表3-1」を参照してください。

cURLの例

次の例は、cURLを使用してRESTリソースにGETリクエストを発行して資格証明ストアの資格証明を参照する方法を示しています。

curl -i -X GET -u username:password https://myhost:7001/idaas/platform/
opss/v2/credentials?filter=map=mymap,key=mykey

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"id": "1234567890"
"userName": "myUser3",
"password": "mypass123",
"description": "mydescription",
"expiration": "5000-07-04T12:08:56.235-0700",
"type": "PasswordCredential"
}

3.3 マップを使用した資格証明のGETメソッド

CSF全体でmap名を指定して資格証明のリストを検索するには、GETメソッドを使用します。

注意:

mapに汎用資格証明がある場合でも、汎用資格証明はリストに表示されません。

RESTリクエスト

GET /opss/v2/credentials

レスポンス本文

メディア・タイプ:

application/json

レスポンス本文には、資格証明の属性が含まれます。資格証明属性の詳細は、「表3-1」を参照してください。

cURLの例

次の例は、cURLを使用してRESTリソースにGETリクエストを発行して資格証明ストアの資格証明を参照する方法を示しています。

curl -i -X GET -u username:password https://myhost:7001/opss/v2/credentials?
filter=map=mymap

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"credentials": [
{
"id": "1234567890",
"userName": "myUser",
"password": "mypass123",
"description": "mydescription",
"expiration": "5000-07-04T12:08:56.235-0700",
"type": "PasswordCredential"
},
{
"id": "1234567890",
"userName": "myUser2",
"password": "mypass123",
"description": "mydescription",
"expiration": "5000-07-04T12:08:56.235-0700",
"type": "PasswordCredential"
}
]
}

3.4 リソースIDを使用した資格証明のGET

CSF全体でリソースIDを指定して資格証明を検索するには、GETメソッドを使用します。

RESTリクエスト

GET /opss/v2/credentials/resourceId

レスポンス本文

メディア・タイプ:

application/json

レスポンス本文には、資格証明の属性が含まれます。資格証明属性の詳細は、「表3-1」を参照してください。

cURLの例

次の例は、cURLを使用してRESTリソースにGETリクエストを発行して資格証明ストアの資格証明を参照する方法を示しています。

curl -i -X GET -u username:password https://myhost:7001/opss/v2/credentials/
1234567890

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"id": "1234567890"
"userName": "myUser3",
"password": "mypass123",
"description": "mydescription",
"expiration": "5000-07-04T12:08:56.235-0700",
"type": "PasswordCredential"
}

3.5 リソースIDを使用した資格証明のPUT

資格証明ストアで既存の資格証明を更新するには、PUTメソッドを使用します。この操作を成功させるには、エントリが存在する必要があります。

RESTリクエスト

PUT /opss/v2/credentials/resourceId

リクエスト本文

メディア・タイプ:

application/json

リクエスト本文には、作成リクエストの詳細が含まれます。

表3-2 資格証明属性

属性

説明

必須

“userName“

資格証明のユーザー名

いいえ

“password“

資格証明のパスワード

いいえ

“description“

資格証明の説明

いいえ

“expiration“

yyyy-MM-dd' T'HH:mm:ss.SSSZ形式の資格証明の有効期限。

いいえ

“namespace“

“myMap4”

いいえ

“name“

“myKey22”

いいえ

cURLの例

次の例は、cURLを使用してRESTリソースにPUTリクエストを発行して資格証明ストアの既存の資格証明を置き換える方法を示しています。

curl -i -X PUT -u username:password --data @replacecred.json -H Content-Type:application/json https://myhost:7001/opss/v2/credentials

リクエスト本文の例

JSON形式のリクエスト本文の例を次に示します。

{
"userName": "myUser3",
"password": "mypass123",
"description": "mydescription",
"expiration": "5000-07-04T12:08:56.235-0700",

3.6 リソースIDを使用した資格証明のDELETE

CSF全体でリソースIDを指定して資格証明を削除するには、DELETEメソッドを使用します。この操作を成功させるには、エントリが存在する必要があります。

RESTリクエスト

DELETE /opss/v2/credentials/resourceId

cURLの例

次の例は、cURLを使用してRESTリソースにDELETEリクエストを発行して資格証明ストアから資格証明を削除する方法を示しています。

curl -i -X DELETE -u username:password https://myhost:7001/opss/v2/credentials/
1234567890

4 キーストアの管理

Oracle Platform Security Services (OPSS)では、キーストア・サービス(KSS)を使用して、キーストアを表示および管理します。RESTリソースのセットを使用してキーストアを表示および管理できます。

セクション

メソッド

リソース・パス

新しいKSSキーストアのPOSTメソッド

POST

/opss/v2/keystoreservice

KSSキーストアのインポートのPOSTメソッド

POST

/opss/v2/keystoreservice/keystore

パスワード更新KSSキーストアのPUTメソッド

PUT

/opss/v2/keystoreservice

信頼できる証明書KSSキーストアのPOSTメソッド

POST

/opss/v2/keystoreservice/certificates

ストライプKSSキーストアのGETメソッド

GET

/opss/v2/keystoreservice/{stripeName}

別名KSSキーストアのGETメソッド

GET

/opss/v2/keystoreservice/alias/{stripeName}/{keystoreName}/{entryType}

信頼できる証明書KSSキーストアのGETメソッド

GET

/opss/v2/keystoreservice/certificates

信頼できる証明書KSSキーストアのDELETEメソッド

DELETE

/opss/v2/keystoreservice/certificates

秘密鍵KSSキーストアのPOST

POST

/opss/v2/keystoreservice/secretkey

秘密鍵プロパティKSSキーストアのGETメソッド

GET

/opss/v2/keystoreservice/secretkey

秘密鍵KSSキーストアのDELETEメソッド

DELETE

/opss/v2/keystoreservice/secretkey

キー・ペアKSSキーストアのPOST

POST

/opss/v2/keystoreservice/keypair

キー・ペアKSSキーストアのGETメソッド

GET

/opss/v2/keystoreservice/keypair

キー・ペアKSSキーストアのDELETEメソッド

DELETE

/opss/v2/keystoreservice/keypair

キーストア・サービスKSSキーストアのDELETEメソッド

DELETE

/opss/v2/keystoreservice

4.1 新しいKSSキーストアのPOSTメソッド

新しいキーストア・サービス(KSS)キーストアを作成するには、POSTメソッドを使用します。

RESTリクエスト

POST /opss/v2/keystoreservice

リクエスト本文

メディア・タイプ:

application/json

リクエスト本文には、作成リクエストの詳細が含まれます。

属性

説明

必須

“stripeName”

KSSキーストアを含めるストライプの名前。

はい

“keystoreName”

KSSキーストアの名前。

はい

”keystorePassword”

KSSキーストアのパスワード。

いいえ

“permissionBased”

権限ベースのキーストアを作成するかどうかを指定するブール値。

いいえ

レスポンス本文

メディア・タイプ:

application/json

返されるレスポンス本文には、作成操作に関する次のようなステータスが含まれます。

属性

説明

“ERROR_CODE”

“STATUS”が“Failed”に設定されている場合はエラー・コードが提供されます。

“ERROR_MSG”

“STATUS”が“Failed”に設定されている場合はエラー・メッセージの内容が提供されます。

“STATUS”

操作のステータス。たとえば、“SUCCEEDED”または“FAILED”。

cURLの例

次の例は、cURLを使用してRESTリソースにPOSTリクエストを発行してKSSキーストアを作成する方法を示しています。

curl -i -X POST -u username:password --data @createkss.json -H Content-Type:application/json https://myhost:7001/opss/v2/keystoreservice

リクエスト本文の例

JSON形式のリクエスト本文の例を次に示します。

{
"stripeName" : "myStripe",
"keystoreName" : "myKeystore",
"keystorePassword" : "myPwd",
"permissionBased" : "false"
}

注意:

権限に基づくキーストア("permission" : "true")を作成していないかぎり、パスワードは必須です。

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"STATUS": "SUCCEEDED"
}

権限ベースのキーストアを作成する例

JSON形式のリクエスト本文の例を次に示します。

{
"stripeName" : "myStripe",
"keystoreName" : "permKeystore",
"permissionBased" : "true"
}

4.2 KSSキーストアのインポートのPOSTメソッド

JKSキーストア・ファイルからキーストア・サービス(KSS)キーストアをインポートするには、POSTメソッドを使用します。

RESTリクエスト

POST /opss/v2/keystoreservice/keystore

リクエスト本文

メディア・タイプ:

multipart/form-data

レスポンス本文には、インポート・リクエストに関する次のような情報が含まれます。

属性

説明

必須

“stripeName”

ストライプの名前。

はい

“keystoreImportByte”

キーストア・データのバイト配列

はい

“keystoreName”

JKSキーストアの名前。

はい

“keystorePassword”

パスワードで保護されている場合、インポートするローカル・キーストア・ファイルのパスワードおよびキーストア・エントリ。

いいえ

“keystoreType”

キーストア・タイプ。この値はJKSに設定する必要があります。

はい

“keyAliasList”

keystoreFileからインポートするキーの別名のリスト。

はい

“keyPasswordList”

keystoreFileからインポートするキーのパスワードのリスト。

いいえ

“permissionBased”

権限ベースのキーストアとしてインポートするかどうかを指定するブール値。

いいえ

レスポンス本文

メディア・タイプ:

application/json

レスポンス本文には、インポート操作に関する次のような情報が含まれます。

属性

説明

“ERROR_CODE”

“STATUS”が“Failed”に設定されている場合はエラー・コードが提供されます。

“ERROR_MSG”

“STATUS”が“Failed”に設定されている場合はエラー・メッセージの内容が提供されます。

“SUCCES MSGS”

成功メッセージ。

cURLの例

次の例は、cURLを使用してRESTリソースにPOSTリクエストを発行してKSSキーストアをインポートする方法を示しています。

curl -i -X PUT -u username:password --data @updatekss.json -H
Content-Type:application/json https://myhost:7001/opss/v2/keystoreservice/keystore

リクエスト本文の例

JSON形式のリクエスト本文の例を次に示します。

"stripeName" : "myStripe",
"keystoreName" : "myKeystore",
"keyAliasList" : ["myAlias"],
"keystorePassword" : "welcome1",
"keyPasswordList" : ["welcome"],
"keystoreType" : "JKS",
"permissionBased" : "false",
"keystoreImportBytes" : [-2, -19, -2, -19, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 2, 0, 6, 109, 121, 99, 101, 114, 116, 0, 0, 1, 86, 125, 119, -27, 113, 0, 5, 88, 46, 53, 48, 57, 0, 0, 3, -61, 48, -126, 3, -65, 48, -126, 2, -89, -96, 3, 2, 1, 2, 2, 16, 64, 4, 72, -122, -60, 65, -17, 59, 100, 58, -128, 102, 64, -102, -4, -96, 48, 13, 6, 9, 42, -122, 72, -122, -9, 13, 1, 1, 11, 5, 0, 48, 120, 49, 11, 48, 9, 6, 3, 85, 4, 6, 19, 2, 85, 83, 49, 16, 65, -117, -74]
}

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"SUCCESS_MSG":"Aliases: myAlias imported
successfully"
}

4.3 パスワード更新KSSキーストアのPUTメソッド

キーストア・サービス(KSS)キーストアのパスワードを更新するには、PUTメソッドを使用します。

RESTリクエスト

PUT /opss/v2/keystoreservice

リクエスト本文

メディア・タイプ:

application/json

レスポンス本文には、ロード・バランサのパッチに関する次のような情報が含まれます。

属性

説明

必須

“stripeName”

ストライプの名前。

はい

“keystoreName”

KSSキーストアの名前。

はい

“newPassword”

キーストアの新しいパスワード。

はい

“oldPassword”

キーストアの旧パスワード。

はい

レスポンス本文

メディア・タイプ:

application/json

返されるレスポンス本文には、更新操作に関する次のようなステータスが含まれます。

属性

説明

“ERROR_CODE”

“STATUS”が"Failed"に設定されている場合はエラー・コードが提供されます。

“ERROR_MSG”

“STATUS”が“Failed”に設定されている場合はエラー・メッセージの内容が提供されます。

“STATUS”

操作のステータス。たとえば、“SUCCEEDED”または“FAILED”。

cURLの例

次の例は、cURLを使用してRESTリソースにPUTリクエストを発行してKSSキーストアをインポートする方法を示しています。

curl -i -X PUT -u username:password --data @updatekss.json -H Content-Type:application/json https://myhost:7001/opss/v2/keystoreservice

リクエスト本文の例

JSON形式のリクエスト本文の例を次に示します。

{
"stripeName" : "myStripe",
"keystoreName" : "mykssstore",
"oldPassword" : "myPwd",
"newPassword" : "myNewPwd"
}

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"STATUS": "SUCCEEDED"
}

4.4 信頼できる証明書KSSキーストアのPOSTメソッド

キーストア・サービス(KSS)キーストアに信頼できる証明書をインポートするには、POSTメソッドを使用します。

RESTリクエスト

POST /opss/v2/keystoreservice/certificates

リクエスト本文

メディア・タイプ:

application/json

レスポンス本文には、インポート・リクエストに関する次のような情報が含まれます。

属性

説明

必須

“keyAliasList”

信頼できる証明書の別名を含むリスト。

はい

“keystoreEntry”

Base64でエンコードされた証明書。

はい

“keystoreType”

キーストア・エントリのタイプ。有効な値には、Certificate、TrustedCertificateまたはSecretKeyがあります。

はい

“keystoreName”

KSSキーストアの名前。

はい

“stripeName”

ストライプの名前。

はい

“keystorePassword”

KSSキーストアのパスワード。

いいえ

“keyPasswordList”

信頼できる証明書のキー・パスワードを含むリスト。

いいえ

レスポンス本文

メディア・タイプ:

application/json

返されるレスポンス本文には、インポート操作に関する次のようなステータスが含まれます。

属性

説明

“ERROR_CODE”

“STATUS”が"Failed"に設定されている場合はエラー・コードが提供されます。

“ERROR_MSG”

“STATUS”が“Failed”に設定されている場合はエラー・メッセージの内容が提供されます。

“STATUS”

操作のステータス。たとえば、“SUCCEEDED”または“FAILED”。

“SUBJECT_DN”

インポートされたサブジェクトDNのリスト。

cURLの例

次の例は、cURLを使用してRESTリソースにPOSTリクエストを発行してKSSキーストアを作成する方法を示しています。

curl -i -X POST -u username:password --data @importcertkss.json -H Content-Type:application/json https://myhost:7001/opss/v2/keystoreservice/certificates

リクエスト本文の例

JSON形式のリクエスト本文の例を次に示します。

{
"keyAliasList" : ["myAlias"],
"keystoreEntry":
"MIIC7DCCAqqgAwIBAgIEalhBSjALBgcqhkjOOAQDBQAwSDEKMAgGA1UEBhMBeTEKMAgGA1UECBMB\neTEKMAgGA1UEBxMBeTEKMAgGA1UEChMBeTEKMAgGA1UECxMBeTEKMAgGA1UEAxMBeTAeFw0xNDA3\nMDMxMTAwMTZaFw0xNDEwMDExMTAwMTZaMEgxCjAIBgNVBAYTAXkxCjAIBgNVBAgTAXkxCjAIBgNV\nBAcTAXkxCjAIBgNVBAoTAXkxCjAIBgNVBAsTAXkxCjAIBgNVBAMTAXkwggG3MIIBLAYHKoZIzjgE\nATCCAR8CgYEA/X9TgR11EilS30qcLuzk5/YRt1I870QAwx4/gLZRJmlFXUAiUftZPY1Y+r/F9bow\n9subVWzXgTuAHTRv8mZgt2uZUKWkn5/oBHsQIsJPu6nX/rfGG/g7V+fGqKYVDwT7g/bTxR7DAjVU\nE1oWkTL2dfOuK2HXKu/yIgMZndFIAccCFQCXYFCPFSMLzLKSuYKi64QL8Fgc9QKBgQD34aCF1ps9\n3su8q1w2uFe5eZSvu/o66oL5V0wLPQeCZ1FZV4661FlP5nEHEIGAtEkWcSPoTCgWE7fPCTKMyKbh\nPBZ6i1R8jSjgo64eK7OmdZFuo38L+iE1YvH7YnoBJDvMpPG+qFGQiaiD3+Fa5Z8GkotmXoB7VSVk\nAUw7/s9JKgOBhAACgYBrvzkjozmv6t6T0GNJES1R3ypRsBs8VLX2g3GotHd7Kht/TCj4HikelZDd\nuL0t96R5Q4A3srOgSIZ+0INRs1ER8y1Q37LyJNfyqYn5KqLBlN9bhSYAfcuIpjwIXGVfLQGdByD7\ntr4PSvZQx18K6p68HUCh+jXQT9+7n3ZUIBzH5aMhMB8wHQYDVR0OBBYEFPdMpcEBbYSCYMdJiE4r\ncQxf7Me4MAsGByqGSM44BAMFAAMvADAsAhQH/G1ixrEaWAG3lGWafkHgXxnzhwIUW5eSctgmaQBj\nvKaY0E6fYJzcp5c=",
"keystoreType" : "TrustedCertificate",
"keystoreName" : "myKeystore",
"stripeName" : "myStripe",
"keystorePassword" : "myPwd"
"keyPasswordList" : ["mykeyPwd"]
}

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"STATUS": "SUCCEEDED"
"SUBJECT_DN": "CN=y,OU=y,O=y,L=y,ST=y,C=y"
}

4.5 ストライプKSSキーストアのGETメソッド

ストライプのすべてのキーストア・サービス(KSS)キーストアを返すには、GETメソッドを使用します。

RESTリクエスト

GET /opss/v2/keystoreservice/{stripeName}

パラメータ

次の表は、GETリクエストのパラメータの概要を示します。

名前

説明

タイプ

必須

“stripeName”

すべてのKSSキーストアを参照するストライプの名前。

パス

はい

レスポンス本文

メディア・タイプ:

application/json

レスポンス本文には、証明書に関する次のような情報が含まれます。

属性

説明

“keystores”

ストライプ内のキーストアのリスト。

cURLの例

次の例は、cURLを使用してRESTリソースにGETリクエストを発行して、別名のすべての証明書を参照する方法を示しています。

curl -i -X GET -u username:password https://myhost:7001/opss/v2/keystoreservice/myStripe

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"keystores":["trust","castore"]
}

4.6 別名KSSキーストアのGETメソッド

キーストア・サービス(KSS)キーストアの別名を表示するには、GETメソッドを使用します。

RESTリクエスト

GET /opss/v2/keystoreservice/alias/{stripeName}/{keystoreName}/{entryType}

パラメータ

次の表は、GETリクエストのパラメータの概要を示します。

名前

説明

タイプ

必須

“stripeName”

ストライプの名前。

パス

はい

“keystoreName”

キーストアの名前。

パス

はい

“entryType”

キーストア・タイプ。有効な値には、Certificate、TrustedCertificateまたはSecretKeyがあります。ワイルドカード「*」は、すべてのタイプに該当します。

パス

はい

keystorePassword

Base64でエンコードされたキーストア・パスワード

ヘッダー

いいえ

レスポンス本文

メディア・タイプ:

application/json

レスポンス本文には、証明書に関する次のような情報が含まれます。

属性

説明

“Alias”

ストライプ内のキーストア別名のリスト。

cURLの例

次の例は、cURLを使用してRESTリソースにGETリクエストを発行して、別名のすべての証明書を参照する方法を示しています。

curl -i -X GET -u username:password https://myhost:7001/opss/v2/keystoreservice/alias/myStripe/myKeystore/TrustedCertificate

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"Alias":["myAlias"]
}

4.7 信頼できる証明書KSSキーストアのGETメソッド

キーストア・サービス(KSS)キーストアの信頼できる証明書を表示するには、GETメソッドを使用します。キーストアがパスワードで保護されている場合は、キーストアのパスワードをBase64でエンコードされたヘッダー値として送信する必要があります。

RESTリクエスト

GET /opss/v2/keystoreservice/certificates

パラメータ

次の表は、GETリクエストのパラメータの概要を示します。

名前

説明

タイプ

必須

“stripeName“

ストライプの名前。

問合せ

はい

“keystoreName“

キーストアの名前。

問合せ

はい

“keyAlias“

信頼できる証明書の別名。

問合せ

はい

“keystoreEntryType“

キーストア・エントリのタイプ。有効な値には、Certificate、TrustedCertificateまたはCertificateChainがあります。

問合せ

はい

“keystorePassword“

KSSキーストアのパスワード。

ヘッダー

いいえ

“keyPassword“

キーのパスワード。

ヘッダー

いいえ

レスポンス本文

メディア・タイプ:

application/json

レスポンス本文には、証明書に関する次のような情報が含まれます。

属性

説明

“CONTENT“

Base64でエンコードされた証明書の内容。

“Extensions“

特定目的の証明書の発行に使用されるオプションの拡張機能。拡張には次が含まれます。

- 一意に識別するオブジェクト識別子(oid)

- 拡張がクリティカルかどうかを示すフラグ

- 値のセット

“ISSUER_DN“

信頼できる識別名のリスト。

“NOT_AFTER“

証明書が期限切れになる日付。

“NOT_BEFORE“

証明書が有効になる日付。

“SERIAL_NO“

JKSキーストアのシリアル番号。

“SIGNATURE“

Base64でエンコードされた署名キー。

“SIGNING_ALGORITHM“

別名の署名アルゴリズム。

“SUBJECT_DN“

サブジェクト識別名のリスト。

“PUBLIC KEY“

公開鍵値の文字列。

cURLの例

次の例は、cURLを使用してRESTリソースにGETリクエストを発行して、別名のすべての証明書を参照する方法を示しています。

curl -i -X GET -u username:password -H keystorePassword:cHdkMQ== -H keyPassword:bXlQd2Qy   https://myhost:7001/opss/v2/keystoreservice/certificates?"stripeName=myStripe&keystoreName=myKeystore&keyAlias=client&keystoreEntryType=Certificate"

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"SUBJECT_DN":"CN=y,OU=y,O=y,L=y,ST=y,C=y",
"ISSUER_DN":"CN=y,OU=y,O=y,L=y,ST=y,C=y",
"NOT_BEFORE":"Fri Jul 25 02:45:11 PDT 2014",
"NOT_AFTER":"Thu Oct 23 02:45:11 PDT 2014",
"SERIAL_NO":"982191050",
"SIGNING_ALGORITHM":"1.2.840.10040.4.3",
"PUBLIC_KEY": "MIIBtzCCASwGByqGSM44BAEwggEfAoGBAP1/U4EddRIpUt9KnC7s5Of2EbdSPO9EAMMeP4C2USZpRV1AIlH7WT2NWPq/xfW6MPbLm1Vs14E7gB00b/JmYLdrmVClpJ+f6AR7ECLCT7up1/63xhv4O1fnxqimFQ8E+4P208UewwI1VBNaFpEy9nXzrith1yrv8iIDGZ3RSAHHAhUAl2BQjxUjC8yykrmCouuEC/BYHPUCgYEA9+GghdabPd7LvKtcNrhXuXmUr7v6OuqC+VdMCz0HgmdRWVeOutRZT+ZxBxCBgLRJFnEj6EwoFhO3zwkyjMim4TwWeotUfI0o4KOuHiuzpnWRbqN/C/ohNWLx+2J6ASQ7zKTxvqhRkImog9/hWuWfBpKLZl6Ae1UlZAFMO/7PSSoDgYQAAoGAa785I6M5r+rek9BjSREtUd8qUbAbPFS19oNxqLR3eyobf0wo+B4pHpWQ3bi9LfekeUOAN7KzoEiGftCDUbNREfMtUN+y8iTX8qmJ+SqiwZTfW4UmAH3LiKY8CFxlXy0BnQcg+7a+D0r2UMdfCuqevB1Aofo10E/fu592VCAcx+U=""CONTENT":"-----BEGIN CERTIFICATE----- \nMIIC7DCCAqqgAwIBAgIEOosLyjALBgcqhkjOOAQDBQAwS
EKMAgGA1UEBhMBcjEKMAgGA1UECBMB\ncjEKMAgGA1UEBxMBcjEKMAgGA1UEChMBcjEKMAgGA1UECxM
cjEKMAgGA1UEAxMBUjAeFw0xNDA3\nMjUwOTQ1MTFaFw0xNDEwMjMwOTQ1MTFaMEgxCjAIBgNVBAYTA
IxCjAIBgNVBAgTAXIxCjAIBgNV\nBAcTAXIxCjAIBgNVBAoTAXIxCjAIBgNVBAsTAXIxCjAIBgNVBAM
AVIwggG3MIIBLAYHKoZIzjgE\nATCCAR8CgYEA\/X9TgR11EilS30qcLuzk5\/YRt1I870QAwx4\/gL
RJmlFXUAiUftZPY1Y+r\/F9bow\n9subVWzXgTuAHTRv8mZgt2uZUKWkn5\/oBHsQIsJPu6nX\/rfGG
/g7V+fGqKYVDwT7g\/bTxR7DAjVU\nE1oWkTL2dfOuK2HXKu\/yIgMZndFIAccCFQCXYFCPFSMLzLKS
YKi64QL8Fgc9QKBgQD34aCF1ps9\n3su8q1w2uFe5eZSvu\/o66oL5V0wLPQeCZ1FZV4661FlP5nEHE
GAtEkWcSPoTCgWE7fPCTKMyKbh\nPBZ6i1R8jSjgo64eK7OmdZFuo38L+iE1YvH7YnoBJDvMpPG+qFG
iaiD3+Fa5Z8GkotmXoB7VSVk\nAUw7\/s9JKgOBhAACgYAjhpZybXj6rlXDow8srnSFE9dZJJpCKaQV
ACagQogePV+xlqPClDOoiQJ\nuvuUGHerDrThC1\/Wq5Uj1+TnkSKTy0qYxmQoq56xALa47np9TKtqt
4Vy8eUUorakG4lrjNt\/EgR\nfO675n+qINkKXKpcxaCicupRCYPkPXlnT4mtyKMhMB8wHQYDVR0OBB
EFDKbmPa2Il6SylJRPTv8\nQ+4CqpEhMAsGByqGSM44BAMFAAMvADAsAhQbkmlaUG5QDR5mXUiYC74p
\/FBOwIUGx5lc5Y01ppo\nvK3UgL7M8E3eOfc=\n-----END CERTIFICATE-----",
"SIGNATURE":FEZN2l4SPFEK5jt2QZRb5Q==",
"Extensions":"{subjectKeyIDExtension {oid = 2.5.29.14 critical = false, value = 329b98f6b6225e92ca52513d3bfc43ee02aa9121}}"
}

4.8 信頼できる証明書KSSキーストアのDELETEメソッド

キーストア・サービス(KSS)キーストアから証明書を削除するには、DELETEメソッドを使用します。キーストアがパスワードで保護されている場合は、キーストアおよびキーのパスワードをBase64でエンコードされたヘッダー値として送信する必要があります。

RESTリクエスト

DELETE /opss/v2/keystoreservice/certificates

パラメータ

次の表は、DELETEリクエストのパラメータの概要を示します。

名前

説明

タイプ

必須

“stripeName“

ストライプの名前。

問合せ

はい

“keystoreName“

キーストアの名前。

問合せ

はい

“keyAlias“

KSSキーストアの証明書の別名。

問合せ

はい

“keystorePassword“

Base64でエンコードされたキーストア・パスワード。

ヘッダー

いいえ

“keyPassword“

Base64でエンコードされたキー・パスワード。

ヘッダー

いいえ

レスポンス本文

メディア・タイプ:

application/json

返されるレスポンス本文には、インポート操作に関する次のようなステータスが含まれます。

属性

説明

“ERROR_CODE”

“STATUS”が“Failed”に設定されている場合はエラー・コードが提供されます。

“ERROR_MSG”

“STATUS”が“Failed”に設定されている場合はエラー・メッセージの内容が提供されます。

“STATUS”

操作のステータス。たとえば、“SUCCEEDED”。

cURLの例

次の例は、cURLを使用してRESTリソースにDELETEリクエストを発行してキーストアから信頼できる証明書を削除する方法を示しています。

curl -i -X DELETE -u username:password -H keystorePassword:cHdkMQ== -H keyPassword:bXlQd2Qy  https://myhost:7001/opss/v2/keystoreservice/certificates?"stripeName=myStripe&keystoreName=myKeystore&keyAlias=myAlias"

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"STATUS": "SUCCEEDED"
}

4.9 秘密鍵KSSキーストアのPOST

KSSキーストアの対称暗号化/復号化に使用される秘密鍵を作成するには、POSTメソッドを使用します。

RESTリクエスト

POST /opss/v2/keystoreservice/secretkey

リクエスト本文

メディア・タイプ:

application/json

リクエスト本文には、作成リクエストの詳細が含まれます。

属性

説明

必須

“stripeName“

ストライプの名前。

はい

“keystoreName“

KSSキーストアの名前。

はい

“keyAliasList“

秘密鍵の別名を含むリスト。

はい

“keySize“

暗号アルゴリズムで使用されるキーのサイズ(ビット単位)。

はい

“keyAlgorithm“

メッセージ保護に使用される暗号アルゴリズムの特性を制御します。

はい

“keystorePassword“

KSSキーストアのパスワード。

いいえ

“keyPasswordList“

鍵のパスワードを含むリスト。

いいえ

レスポンス本文

メディア・タイプ:

application/json

返されるレスポンス本文には、インポート操作に関する次のようなステータスが含まれます。

属性

説明

“ERROR_CODE“

“STATUS“が“Failed““に設定されている場合はエラー・コードが提供されます。

“ERROR_MSG“

“STATUS“が“Failed“に設定されている場合はエラー・メッセージの内容が提供されます。

“STATUS“

操作のステータス。たとえば、“SUCCEEDED“または“FAILED“。

cURLの例

次の例は、cURLを使用してRESTリソースにPOSTリクエストを発行して秘密鍵を作成する方法を示しています。

curl -i -X POST -u username:password --data @secretkey.json -H Content-Type:application/json https://myhost:7001/opss/v2/keystoreservice/secretkey

リクエスト本文の例

JSON形式のリクエスト本文の例を次に示します。

{
"stripeName" : "myStripe",
"keystoreName" : "myKeystore",
"keyAliasList" : ["myKeyAlias"],
"keySize" : "56",
"keyAlgorithm" : "DES",
"keystorePassword" : "myPwd",
"keyPasswordList" : ["myKeyPwd"]
}

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"STATUS": "SUCCEEDED"
}

4.10 秘密鍵プロパティKSSキーストアのGETメソッド

KSSキーストアの秘密鍵のプロパティを表示するには、GETメソッドを使用します。キーストアがパスワードで保護されている場合は、キーストアおよびキーのパスワードをBase64でエンコードされたヘッダー値として送信する必要があります。

RESTリクエスト

GET /opss/v2/keystoreservice/secretkey

パラメータ

次の表は、GETリクエストのパラメータの概要を示します。

名前

説明

タイプ

必須

stripeName

ストライプの名前。

問合せ

はい

keystoreName

キーストアの名前。

問合せ

はい

keyAlias

秘密鍵の別名。

問合せ

はい

"returnKeyInResponse"

出力でキーが返されるかどうか。

問合せ

いいえ

"keystorePassword"

Base64でエンコードされたキーストア・パスワード。

ヘッダー

いいえ

"keyPassword"

Base64でエンコードされたキー・パスワード。

ヘッダー

いいえ

レスポンス本文

メディア・タイプ:

application/json

レスポンス本文には、証明書に関する次のような情報が含まれます。

属性

説明

"keystore properties"

秘密鍵プロパティのリスト。

"secret key"

"returnKeyInResponse"がtrueに設定されている場合は、秘密鍵データの文字列

cURLの例

次の例は、cURLを使用してRESTリソースにGETリクエストを発行して、別名のすべての証明書を参照する方法を示しています。

curl -i -X GET -u username:password -H keystorePassword:bXlQd2Q= -H keyPassword:bXlLZXlQd2Q= https://myhost:7001/opss/v2/keystoreservice/secretkey?"stripeName=myStripe&keystoreName=myKeystore&keyAlias=myKeyAlias"

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"keystore properties":["DES"]
}

次の例は、秘密鍵値を含む別名の秘密鍵のプロパティを表示する方法を示しています

curl -i -X GET -u username:password -H keystorePassword:bXlQd2Q= -H keyPassword:bXlLZXlQd2Q= https://myhost:7001/opss/v2/keystoreservice/secretkey?stripeName=myStripe&keystoreName=myKeystore&keyAlias=myKeyAlias&returnKeyInResponse=true

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"keystore properties":["DES"],
"secret key": "f65uMWvxAdM="
}

4.11 秘密鍵KSSキーストアのDELETEメソッド

秘密鍵を削除するには、DELETEメソッドを使用します。

RESTリクエスト

DELETE /opss/v2/keystoreservice/secretkey

パラメータ

次の表は、DELETEリクエストのパラメータの概要を示します。

名前

説明

タイプ

必須

"stripeName"

ストライプの名前。

問合せ

はい

"keystoreName"

キーストアの名前。

問合せ

はい

"keyAlias"

秘密鍵の別名。

問合せ

はい

"keystorePassword"

KSSキーストアのパスワード。

ヘッダー

いいえ

"keyPassword"

キーのパスワード。

ヘッダー

いいえ

レスポンス本文

メディア・タイプ:

application/json

返されるレスポンス本文には、削除操作に関する次のようなステータスが含まれます。

属性

説明

"ERROR_CODE"

"STATUS"が"Failed"に設定されている場合はエラー・コードが提供されます。

"ERROR_MSG"

"STATUS"が"Failed"に設定されている場合はエラー・メッセージの内容が提供されます。

"STATUS"

操作のステータス。たとえば、"SUCCEEDED"または"FAILED"。

cURLの例

次の例は、cURLを使用してRESTリソースにDELETEリクエストを発行してキーストアから秘密鍵を削除する方法を示しています。

curl -i -X DELETE -u username:password -H keystorePassword:bXlQd2Q=  -H keyPassword:bXlLZXlQd2Q=  https://myhost:7001/opss/v2/keystoreservice/secretkey?"stripeName=myStripe&keystoreName=myKeystore"

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス・ヘッダーの例

JSON形式のレスポンス本文の例を次に示します。

{
"STATUS": "SUCCEEDED"
}

4.12 キー・ペアKSSキーストアのPOST

KSSキーストアの対称暗号化/復号化に使用されるキー・ペアを作成するには、POSTメソッドを使用します。

RESTリクエスト

POST /opss/v2/keystoreservice/keypair

リクエスト本文

メディア・タイプ:

application/json

リクエスト本文には、作成リクエストの詳細が含まれます。

属性

説明

必須

"stripeName"

ストライプの名前。

はい

"keystoreName"

KSSキーストアの名前。

はい

"keyAliasList"

秘密鍵の別名を含むリスト。

はい

"keySize"

暗号アルゴリズムで使用されるキーのサイズ(ビット単位)。

はい

"keyAlgorithm"

メッセージ保護に使用される暗号アルゴリズムの特性を制御します

はい

"DN"

キーの識別名

はい

"keystorePassword"

KSSキーストアのパスワード。

いいえ

"keyPassword"

キーのパスワード。

いいえ

"keyPasswordList"

リストのパスワードを含むリスト。

いいえ

レスポンス本文

メディア・タイプ:

application/json

返されるレスポンス本文には、インポート操作に関する次のようなステータスが含まれます。

属性

説明

"ERROR_CODE"

"STATUS"が"Failed"に設定されている場合はエラー・コードが提供されます。

"ERROR_MSG"

"STATUS"が"Failed"に設定されている場合はエラー・メッセージの内容が提供されます。

"STATUS"

操作のステータス。たとえば、"SUCCEEDED"または"FAILED"。

cURLの例

次の例は、cURLを使用してRESTリソースにPOSTリクエストを発行してキー・ペアを作成する方法を示しています。

curl -i -X POST -u username:password --data @keypair.json -H Content-Type:application/json https://myhost:7001/opss/v2/keystoreservice/keypair

リクエスト本文の例

JSON形式のリクエスト本文の例を次に示します。

{
"stripeName" : "myStripe",
"keystoreName" : "myKeystore",
"keyAliasList" : ["myKeyAlias"],
"keySize" : "256",
"algorithm" : "EC",
"DN" : "CN=CertGenCA,OU=FORTESTINGONLY,O=MyOrganization,L=MyTown,ST=MyState,C=US",
"keystorePassword" : "myPwd",
"keyPasswordList" : ["myKeyPwd"]
}

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"STATUS": "SUCCEEDED"
}

4.13 キー・ペアKSSキーストアのGETメソッド

KSSキーストアのキー・ペアを表示するには、GETメソッドを使用します。キーストアがパスワードで保護されている場合は、キーストアおよびキーのパスワードをBase64でエンコードされたヘッダー値として送信する必要があります。

RESTリクエスト

GET /opss/v2/keystoreservice/keypair

パラメータ

次の表は、GETリクエストのパラメータの概要を示します。

名前

説明

タイプ

必須

"stripeName"

ストライプの名前。

問合せ

はい

"keystoreName"

キーストアの名前。

問合せ

はい

"keyAlias"

秘密鍵の別名。

問合せ

はい

"keystorePassword"

KSSキーストアのパスワード。

ヘッダー

いいえ

"keyPassword"

キーのパスワード。

ヘッダー

いいえ

レスポンス本文

メディア・タイプ:

application/json

返されるレスポンス本文には、get操作に関する次のようなステータスが含まれます。

属性

説明

"private key"

Base64でエンコードされた秘密鍵

cURLの例

次の例は、cURLを使用してRESTリソースにGETリクエストを発行して、キー・ペアを参照する方法を示しています。

curl -i -X GET -u username:password -H keystorePassword:bXlQd2Q= -H keyPassword:bXlLZXlQd2Q= https://myhost:7001/opss/v2/keystoreservice/keypair?stripeName=myStripe&keystoreName=myKeystore&keyAlias=myKeyAlias

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"private key":            "MEECAQAwEwYHKoZIzj0CAQYIKoZIzj0DAQcEJzAlAgEBBCBzQbYz6xUZjr/XuwVMJj1XXQCquis0f9q5SD9NXhlBjw=="
}

4.14 キー・ペアKSSキーストアのDELETEメソッド

キー・ペアを削除するには、DELETEメソッドを使用します。

RESTリクエスト

DELETE /opss/v2/keystoreservice/keypair

パラメータ

次の表は、DELETEリクエストのパラメータの概要を示します。

名前

説明

タイプ

必須

"stripeName"

ストライプの名前。

問合せ

はい

"keystoreName"

キーストアの名前。

問合せ

はい

"keyAlias"

鍵ペアの別名。

問合せ

はい

"keystorePassword"

Base64でエンコードされたキーストア・パスワード。

ヘッダー

いいえ

"keyPassword"

Base64でエンコードされたキー・パスワード。

ヘッダー

いいえ

レスポンス本文

メディア・タイプ:

application/json

返されるレスポンス本文には、削除操作に関する次のようなステータスが含まれます。

属性

説明

"ERROR_CODE"

"STATUS"が"Failed"に設定されている場合はエラー・コードが提供されます。

"ERROR_MSG"

"STATUS"が"Failed"に設定されている場合はエラー・メッセージの内容が提供されます。

"STATUS"

操作のステータス。たとえば、"SUCCEEDED"または"FAILED"。

cURLの例

次の例は、cURLを使用してRESTリソースにDELETEリクエストを発行してキーストアからキー・ペアを削除する方法を示しています。

curl -i -X DELETE -u username:password -H keystorePassword:bXlQd2Q= https://myhost:7001/opss/v2/keystoreservice/keypair?"stripeName=myStripe&keystoreName=myKeystore&keyAlias=myKeyAlias"

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"STATUS": "SUCCEEDED""
}

4.15 キーストア・サービスKSSキーストアのDELETEメソッド

キーストア・サービス(KSS)キーストアを削除するには、DELETEメソッドを使用します。キーストアがパスワードで保護されている場合は、キーストアのパスワードをBase64でエンコードされたヘッダー値として送信する必要があります。

RESTリクエスト

DELETE /opss/v2/keystoreservice

パラメータ

次の表は、DELETEリクエストのパラメータの概要を示します。

名前

説明

タイプ

必須

"stripeName"

ストライプの名前。

問合せ

はい

"keystoreName"

キーストアの名前。

問合せ

はい

"keyStorePassword"

キーストアのパスワード。

ヘッダー

いいえ

レスポンス本文

メディア・タイプ:

application/json

返されるレスポンス本文には、削除操作に関する次のようなステータスが含まれます。

属性

説明

"ERROR_CODE"

"STATUS"が"Failed"に設定されている場合はエラー・コードが提供されます。

"ERROR_MSG"

"STATUS"が"Failed"に設定されている場合はエラー・メッセージの内容が提供されます。

"STATUS"

操作のステータス。たとえば、"SUCCEEDED"または"FAILED"。

cURLの例

次の例は、cURLを使用してRESTリソースにDELETEリクエストを発行してキーストアから信頼できる証明書を削除する方法を示しています。

curl -i -X DELETE -u username:password -H keystorePassword:bXlQd2Q= https://myhost:7001/opss/v2/keystoreservice?"stripeName=myStripe&keystoreName=myKeystore"

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 204 No Content

5 トラスト・トークンの作成および検証

Oracle Platform Security Services (OPSS)ではトラスト・サービスを使用して、トラスト・トークンを管理します。RESTを使用してトークンを取得および検証できます。特定のアイデンティティ・ドメイン(IDD)でユーザーのためにトークンを発行および検証する権限のあるRESTクライアントのみが、トークンを発行および検証できます。クライアントに対する権限が付与できるように、クライアントは登録中にIDDを宣言する必要があります。

登録の詳細は、登録のPOSTメソッドを参照してください。

セクション

メソッド

リソース・パス

トラスト・サービス発行トークンのPOSTメソッド

POST

/opss/v2/trustService

トラスト・サービス検証トークンのPOSTメソッド

POST

/opss/v2/trustService

5.1 トラスト・サービス発行トークンのPOSTメソッド

トラスト・トークンを取得するには、POSTメソッドを使用します。

RESTリクエスト

POST opss/v2/trustService/issue

リクエスト本文

メディア・タイプ:

application/json

リクエスト本文には、作成リクエストの詳細が含まれます。

表5-1 トラスト属性

属性

説明

必須

"protocol"

トラスト・プロトコル。埋込みプロトコルのみがサポートされています。

いいえ

"tokenType"

トークンのタイプ。サポートされているトークン・タイプは、SAML、SAML2およびJWTです。

はい

"username"

トークンが発行される対象のユーザー名。

はい

"tokenSigningMethod"

JWTトークンのコンテンツへの署名のための暗号アルゴリズム。この属性は、JWTトークン・タイプでのみ使用されます。PKI署名メソッドのみがサポートされます: RS-256 (SHA-256ハッシュ・アルゴリズムを使用したRSA)、RS-384(SHA-384ハッシュ・アルゴリズムを使用したRSA)およびRS-512(SHA-512ハッシュ・アルゴリズムを使用したRSA)。

(JWTトークンのみ)

はい

"confirmationMethod"

リライイング・パーティが、アサーションを示すパーティに対するアサーションのサブジェクトの対応を検証するために使用するメソッドです。サポートされる確認メソッドは、sender-vouches、holder-of-keyおよびbearerです。

(SAML2のみ)

はい

"scdAddress"

サブジェクト確認データ・アドレス。証明エンティティがアサーションを示すことのできるネットワークのアドレス/場所です。

(SAML2のみ)

はい

"addAuthenticatingAuthorities"

プレゼンタを認証するために、リクエスタによって信頼されているアイデンティティ・プロバイダのリスト。

(SAML2のみ)

はい

"nameIdFormat"

アイデンティティ・プロバイダによってサポートされている名前識別子の書式を定義します。名前識別子はプロバイダがユーザーに関して、お互いにやりとりするための手段です。

- urn:oasis:names:tc:SAML:2.0:nameid-format:persistent

- urn:oasis:names:tc:SAML:2.0:nameid-format:transient

- urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress

- urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified

- urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName

- urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName

- urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos

- urn:oasis:names:tc:SAML:2.0:nameid-format:entity

(SAMLとSAML2のみ)

いいえ

"idd"

アイデンティティ・ドメイン

はい

"expirationDate"

トークンの有効期限が切れて、処理では使用できなくなる日付。yyyy-MM-dd' T'HH:mm:ss.SSSZの形式にする必要があります。

はい

"appliesTo"

トークンが適用されるスコープ(エンドポイント・ターゲット)

いいえ

"additionalClaims"

申告セグメントに追加するJWT申告。この属性は、JWTトークン・タイプでのみ使用されます。

いいえ

cURLの例

次の例は、cURLを使用してRESTリソースにPOSTリクエストを発行してトラスト・トークンを取得する方法を示しています。

curl -i -X POST -u username:password --data @issuetoken.json -H Content-Type:application/json https://myhost:7001/opss/v2/trustService/issue

リクエスト本文の例

JSON形式のリクエスト本文の例を次に示します。

{
"tokenType" : "JWT",
"username" : "john.doe",
"tokenSigningMethod" : "RS-256",
"idd" : "cisco",
"expirationDate" : "2015-10-19T12:08:56.235-0700",
}

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 201 Created

5.2 トラスト・サービス検証トークンのPOSTメソッド

トラスト・トークンを検証するには、POSTメソッドを使用します。

RESTリクエスト

POST opss/v2/trustService/validate

リクエスト本文

メディア・タイプ:

application/json

リクエスト本文には、作成リクエストの詳細が含まれます。

表5-2 トラスト属性

属性

説明

必須

"token"

アイデンティティ・トークン。

はい

"protocol"

トラスト・プロトコル。ws-trustプロトコルのみがサポートされています。

いいえ

"tokenType"

トークンのタイプ。サポートされているトークン・タイプは、SAML、SAML2およびJWTです。

はい

"username"

トークンが発行される対象のユーザー名。

はい

"tokenSigningMethod"

JWTトークンのコンテンツへの署名のための暗号アルゴリズム。この属性は、JWTトークン・タイプでのみ使用されます。PKI署名メソッドのみがサポートされます: RS-256 (SHA-256ハッシュ・アルゴリズムを使用したRSA)、RS-384(SHA-384ハッシュ・アルゴリズムを使用したRSA)およびRS-512(SHA-512ハッシュ・アルゴリズムを使用したRSA)。

(JWTトークンのみ)

はい

"confirmationMethod"

サブジェクトおよびSAMLアサーションの証明を提供するために使用されるSAMLメソッド。サポートされる確認メソッドは、sender-vouches、holder-of-keyおよびbearerです。

(SAML2のみ)

はい

レスポンス本文

メディア・タイプ:

application/json

レスポンス本文には、検証操作に関する次のような詳細が含まれます。

属性

説明

"username"

トークンが発行される対象のユーザー名

"idd"

アイデンティティ・ドメイン

"expirationDate"

トークンの有効期限が切れて、処理では使用できなくなる日付

"appliesTo"

トークンが適用されるスコープ(エンドポイント・ターゲット)

"additionalClaims"

申告セグメントに追加するJWT申告。この属性は、JWTトークン・タイプでのみ使用されます。

cURLの例

次の例は、cURLを使用してRESTリソースにPOSTリクエストを発行してKSSキーストアをインポートする方法を示しています。

curl -i -X POST -u username:password --data @validatetoken.json -H Content-Type:application/json https://myhost:7001/opss/v2/trustService/validate

リクエスト本文の例

JSON形式のリクエスト本文の例を次に示します。

{
"token" : "eyThbGciOiJRUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzY290F2
guaW8iLCJleHAiOjEzMDA4MTszODAsIm5hbWUiOiJDfHJpcyBTWXZpbGxlamEiDCJhZG1pbi
I6dHJ1ZR0.03f329983b83f7d9a9f5fef85305880101d5e402afafa20154d094s229f7578",
"protocol" : "ws-trust",
"tokenType" : "JWT",
"username" : "john.doe",
"tokenSigningMethod" : "RS-256",
"confirmationMethod" : "bearer"
}

レスポンス・ヘッダーの例

レスポンス・ヘッダーの例を次に示します。HTTPステータス・コードの詳細は、「HTTPメソッドのHTTPステータス・コード」を参照してください。

HTTP/1.1 200 OK

レスポンス本文の例

JSON形式のレスポンス本文の例を次に示します。

{
"username" : "john.doe",
"idd" : "cisco",
"expirationDate" : "2015-10-19T12:08:56.235-0700",
}

6 アクセスの認可

Oracle Platform Security Services (OPSS)では、XACML3.0 RESTプロファイル・ベース認可サービスを使用して、認可を管理します。RESTを使用して認可を管理できます。

セクション

メソッド

リソース・パス

PDPリンクのGETメソッド

GET

/opss/v2/authz/xacml/

ポリシー決定のPOSTメソッド

POST

/opss/v2/authz/xacml/

6.1 PDPリンクのGETメソッド

アプリケーションでポリシー決定ポイント(PDP)を取得するには、GETメソッドを使用します。

RESTリクエスト

GET /opss/v2/authz/xacml/appName

レスポンス本文

メディア・タイプ:

application/jsonまたはapplication/xml

レスポンス本文には、PDPリンクに関する詳細が含まれます。この詳細には、次の項目が含まれます。

属性

説明

"rel"

PDP定義プロバイダ

"href"

PDPリンク。

cURLの例

次の例に、cURLを使用してRESTリソースに対するGETリクエストを送信し、アプリケーションのPDPリンクを取得する方法を示します。JSONおよびXMLの両方の例が示されています。

JSONの例

curl -i -X GET -u username:password -H Content-Type:application/json https://myhost:7001/opss/v2/authz/xacml/MyApp

JSONを含むレスポンス本文の例

次にJSONを使用するレスポンス本文の例を示します。

{    "resources": {        "resource": {            "link": {                 "rel": "https://docs.oasis-open.org/ns/xacml/relation/pdp",                "href": "/opss/v2/xacml/MyApp/pdp"             }        }    }}

XMLの例

curl -i -X GET -u username:password -H Content-Type:application/xml https://myhost:7001/opss/v2/authz/xacml/MyApp

XMLを含むレスポンス本文の例

次にXMLを使用するレスポンス本文の例を示します。

<resources xmlns=http://ietf.org/ns/home-documents
mlns:atom="http://www.w3.org/2005/Atom">
<resource rel="http://docs.oasis-open.org/ns/xacml/relation/pdp">
<atom:link href="/opss/v2/xacml/MyApp/pdp"/>
</resource>
</resources>

6.2 ポリシー決定のPOSTメソッド

PDPシステムにポリシー決定認可リクエストを送信するには、POSTメソッドを使用します。

RESTリクエスト

POST /opss/v2/authz/xacml/appName/pdp/

URIでは、リソース・タイプを指定することもできます。リソース・タイプの名前がアプリケーション名によって決定される場合、名前を省略することもできます。リソース・タイプはオプションで、必要に応じて問合せパラメータで指定されます。

POST /opss/v2/authz/xacml/appName/pdp/?resType=resType

リクエスト本文

メディア・タイプ:

application/xacml+json;version=3.0またはapplication//xacml+xml;version=3.0

レスポンス本文

メディア・タイプ:

application/xacml+json;version=3.0またはapplication//xacml+xml;version=3.0

cURLの例

次の例は、cURLを使用してRESTリソースにPOSTリクエストを発行して、アプリケーションのポリシー決定をリクエストする方法を示しています。JSONおよびXMLの両方の例が示されています。

JSONの例

curl -i -X GET -u username:password --data @policyRequest.json -H Content-Type:application/xacml+json;version=3.0 https://myhost:7001/opss/v2/authz/xacml/MyApp/pdp

JSONを使用するリクエストの例

次にJSONを使用するリクエスト本文の例を示します。

{
"Request": {
…
}
}

JSONを含むレスポンス本文の例

次にJSONを使用するレスポンス本文の例を示します。

{
"Response": [
…
]
}

XMLの例

curl -i -X GET -u username:password --data @policyRequest.xml -H Content-Type:application/xacml+xml;version=3.0 https://myhost:7001/opss/v2/authz/xacml/MyApp/pdp

XMLを使用するリクエストの例

次にXMLを使用するリクエスト本文の例を示します。

<Request xmlns="urn:oasis:names:tc:xacml:3.0:core:schema:wd-17"> … </Request>

XMLを使用するレスポンスの例

次にXMLを使用するレスポンス本文の例を示します。

<Request xmlns="urn:oasis:names:tc:xacml:3.0:core:schema:wd-17"> … </Request>

Oracleの法律上の注意点

コピーライト

Copyright © 1994-2017, Oracle and/or its affiliates. All rights reserved.

ライセンス制約の保証と結果的に生じる損害の免責

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

保証免責

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクルまでご連絡ください。

制限付権利について

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

危険な用途への使用について

このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアまたはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、Oracle Corporationおよびその関連会社は一切の責任を負いかねます。

商標と登録商標について

OracleおよびJavaはオラクルおよびその関連会社の登録商標です。その他の社名、商品名等は各社の商標または登録商標である場合があります。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

第三者のコンテンツ、製品、サービスに対する免責事項

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。適用されるお客様とOracle Corporationとの間の契約に別段の定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。適用されるお客様とOracle Corporationとの間の契約に定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

Pre-General Availability (一般提供前)版のドキュメントについて

このドキュメントがPre-General Availability (一般提供前)版の場合:

このドキュメントはPre-General Availability (一般提供前)版であり、デモおよび暫定使用のみを目的としたものです。このソフトウェアを使用するハードウェアに限定するものではありません。Oracle Corporationおよびその関連会社は、このドキュメントに関して一切の責任を負わず、いかなる保証もいたしません。また、このドキュメントを使用したことによって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。

非公開のPre-General Availability (一般提供前)版のドキュメントについて

このドキュメントが非公開のPre-General Availability (一般提供前)版の場合:

このドキュメントに含まれる情報は、情報の共有のみを目的としたものであって、顧客諮問委員会(Customer Advisory Board)のメンバーとしてのお客様の立場でのみ、またはお客様のPre-General Availability Trial Agreement (Pre-GAトライアル契約)のみに従って検討されるべきものとします。マテリアル、コード、または機能の提供をお約束するものではなく、購入決定を行う際の判断材料とすべきではありません。このドキュメントに記載されている特徴または機能の開発、リリースおよび時期については、オラクルの裁量により決定されます。

このドキュメントには、ソフトウェアまたは印刷物などの形式を問わず、オラクルが独占的な権利を有する財産的情報が含まれています。この機密資料へのアクセスと使用は、お客様とオラクルとの間で締結され、お客様が遵守に同意した、Oracle Master Agreement、Oracle License and Oracle Services Agreement (オラクル・ライセンスおよびサービスに関する契約書)、Oracle Partner Network Agreement、Oracle Distribution Agreementまたはその他のライセンス契約の条件に従うものとします。このドキュメントとその内容の開示、コピー、複製および配布には、オラクルによる事前の承諾を必要とします。このドキュメントはライセンス契約の一部となるものではなく、オラクルおよびその子会社や関連会社との契約を構成するものではありません。

ドキュメントのアクセシビリティ

オラクルのアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWebサイト(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc)を参照してください。

Oracle Supportへのアクセス

サポートをご契約のお客様には、My Oracle Supportを通して電子支援サービスを提供しています。詳細情報は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info)か、聴覚に障害のあるお客様は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs)を参照してください。