概要
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 から入手できます。