概要
OAuth v1.0a リクエスト トークン、ベリファイア、アクセス トークンを削除する。
サンプル
アクセス トークンの削除
以下は、OAuth 1.0a アクセス トークンを削除するためのポリシーの例です。この例では、リクエスト メッセージ上で削除するアクセス トークンを見つけるために、token という名前のヘッダーを検索します。
<DeleteOAuthV1Info name="DeleteAccessToken">
<AccessToken ref="request.header.token"></AccessToken>
</DeleteOAuthV1Info>ベリファイアの削除
以下は、OAuth 1.0a ベリファイアを削除するためのポリシーの例です。この例では、リクエスト メッセージ上でベリファイアを見つけるために、verifier という名前のクエリ パラメータを検索します。
<DeleteOAuthV1Info name="DeleteAccessToken">
<Verifier ref="request.queryparam.verifier"></Verifier>
</DeleteOAuthV1Info>要素リファレンス
要素リファレンスでは、SetOAuthV1 ポリシーの要素と属性を記述します。
<DeleteOAuthV1Info async="false" continueOnError="false" enabled="true" name="Delete-OAuth-v10-Info-1">
<DisplayName>Delete OAuth v1.0 Info-1</DisplayName>
<Properties/>
<AccessToken ref="request.header.token"/>
<!--<RequestToken ref="request.header.token"></RequestToken>-->
<!--<Verifier ref="request.header.verifier"></Verifier>-->
</DeleteOAuthV1Info><DeleteOAuthV1Info> 属性
<DeleteOAuthV1Info async="false" continueOnError="false" enabled="true" name="Delete-OAuth-v1-Info-1">
| 属性 | 説明 | デフォルト | 要否 |
|---|---|---|---|
| async |
リクエスト / レスポンス フローを処理するプールとは異なるスレッドプールでポリシーを実行するように指定するには、 この設定は、内部最適化にのみ使用されます。 |
false | 省略可 |
| continueOnError |
多くの場合、障害の発生時にポリシーがエラーを返すように設定します。この属性を |
false | 省略可 |
| enabled | ポリシーを適用するかどうかを設定します。false に設定すると、ポリシーは「オフ」になり、適用されません(ポリシーはフローに接続されたままになります)。 |
true | 省略可 |
| name |
ポリシーの内部名。この名前は、ポリシーをフローに接続するときに Step 要素で参照されます。 注: 名前に使用できる文字は、 |
なし | 必須 |
<AccessToken> 要素
削除するアクセス トークンが格納されている変数を指定します。たとえば、アクセス トークンが 「access_token」というクエリ パラメータとしてリクエスト メッセージに接続されている場合は、request.queryparam.token を指定します。トークンを参照する有効な変数を使用できます。まれなケースですが、リテラル トークン文字列を渡すこともできます。
<AccessToken ref="request.header.token"></AccessToken>
| デフォルト: | なし |
| 要否: | アクセス トークンを削除する場合は必須です。 |
| 型: | 文字列 |
属性
| 属性 | 説明 | デフォルト | 要否 |
|---|---|---|---|
| ref |
アクセス トークン変数。通常、フロー変数から取得します。たとえば、 |
なし | 省略可 |
<DisplayName> 要素
管理 UI のプロキシ エディタでポリシーに設定する自然言語のラベル名です。省略すると、ポリシーの name 属性が使用されます。
<DisplayName>DeleteOAuthV1Info 1</DisplayName>
| デフォルト: | ポリシーの name 属性の値。 |
| 要否: | 省略可 |
| 型: | 文字列 |
<RequestToken> 要素
削除するリクエスト トークンが配置されている変数を識別します。たとえば、リクエスト トークンが 「code」というクエリ パラメータとしてリクエスト メッセージに添付されている場合は、request.queryparam.token を指定します。トークンを参照する有効な変数を使用できます。まれなケースですが、リテラル トークン文字列を渡すこともできます。
<RequestToken ref="request.header.token"></RequestToken>
| デフォルト: | なし |
| 要否: | リクエスト トークンを削除する場合は必須です。 |
| 型: | 文字列 |
属性
| 属性 | 説明 | デフォルト | 要否 |
|---|---|---|---|
| ref |
リクエスト トークン変数です。通常、フロー変数から取得します。たとえば、 |
なし | 省略可 |
<Verifier> 要素
削除するベリファイア コードが配置されている変数を識別します。たとえば、ベリファイア コードが 「verifier」というクエリ パラメータとしてリクエスト メッセージに添付されている場合は、request.queryparam.verifier を指定します。トークンを参照する有効な変数を使用できます。まれなケースですが、リテラル トークン文字列を渡すこともできます。
<Verifier ref="request.header.verifier"></Verifier>
| デフォルト: | なし |
| 要否: | リクエスト トークンを削除する場合は必須です。 |
| 型: | 文字列 |
属性
| 属性 | 説明 | デフォルト | 要否 |
|---|---|---|---|
| ref |
ベリファイアを含む変数です。通常、フロー変数から取得します。たとえば、 |
なし | 省略可 |
エラーコード
成功すると、ポリシーは 200 ステータスを返します。
失敗すると、ポリシーは 404 と次のような出力を返します( (アクセス トークン、リクエスト トークン、ベリファイアを削除する場合):
HTTP/1.1 404 Not Found Content-Type: application/json Content-Length: 144 Connection: keep-alive {"fault":{"faultstring":"Invalid Access Token","detail":{"errorcode":"keymanagement.service.invalid_request-access_token_invalid"}}}
スキーマ
各ポリシータイプは XML スキーマ(.xsd)によって定義されます。ポリシー スキーマは GitHub から入手できます。