jwt-validate
Validate JWT セキュリティー・ポリシーは、API へのアクセスを許可する前に、要求内の JSON Web トークン (JWT) の検証を可能にするために使用します。
jwt-validate ポリシーの構造は、以下のとおりです。
- jwt-validate:
title: title
description: description
jwt: json_web_token
output-claims: output_full_set_of_jwt_claims
iss-claim: issuer_claim
aud-claim: audience_claim
jwe-crypto: decrypt_crypto_object
jwe-jwk: decrypt_crypto_jwk_variable_name
jws-crypto: verify_crypto_object
jws-jwk: verify_crypto_jwk_variable_name
以下の表に、このポリシーのプロパティーを示します。
プロパティー・ラベル | プロパティー名 | 必須 | 説明 | データ型 |
---|---|---|---|---|
タイトル | title | はい | ポリシーのタイトル。 デフォルト値は、jwt-validate です。 |
ストリング |
説明 | description | いいえ | ポリシーの説明。 | ストリング |
JSON Web トークン (JWT) | jwt | はい | 検証対象の JWT を格納するコンテキストまたはランタイム変数。 デフォルト値は、request.headers.authorization です。ただし、このプロパティーを設定しない場合、ポリシーはデフォルトで request.headers.authorization ロケーションで JWT を検索します。 注: 許可ヘッダーの形式は、以下のとおりにする必要があります。
ここで、jwt-token は、エンコードされた JWT です。 |
ストリング |
出力クレーム | output-claims | はい | JWT に含まれていクレーム一式が割り当てられるランタイム変数。 デフォルト値は、decoded.claims です。 |
ストリング |
Issuer クレーム | iss-claim | いいえ | Issuer (iss) クレームを検証するために使用する Pearl Compatible Regular Expression (PCRE)。 | ストリング |
Audience クレーム | aud-claim | いいえ | Audience (aud) クレームを検証するために使用する PCRE。 | ストリング |
暗号化解除用の暗号オブジェクト | jwe-crypto | いいえ | クレームをデコードするために使用する暗号オブジェクト (共有鍵または証明書)。1 | ストリング |
暗号化解除用の暗号 JWK 変数名 | jwe-jwk | いいえ | JWT を暗号化解除するために使用する JWK を格納するランタイム変数。1 | ストリング |
検証用暗号オブジェクト | jws-crypto | いいえ | 署名を検証するために使用する暗号オブジェクト (共有鍵または証明書)。2 | ストリング |
検証用暗号 JWK 変数名 | jws-jwk | いいえ | 署名を検証するために使用する JWK を格納するランタイム変数。2 | ストリング |
例
以下に jwt-validate ポリシーの例を示します。
- jwt-validate:
title: jwt-validate
jwt: request.headers.authorization
output-claims: decoded.claims
iss-claim: "'^data.*'"
aud-claim: "'^id.*'"
jwe-crypto: jweCryptoObjectName
jwe-jwk: jwe.jwk
jws-crypto: jwsCryptoObjectName
jws-jwk: jws.jwk
- jwt-validate:
title: validate_jwt
jwt: jwt
output-claims: decoded.claims
version: 1.0.0
iss-claim: apic
jwe-jwk: hs256-enc-key
jws-jwk: hs256-key
jwt-validate セキュリティー・ポリシーの使用方法について詳しくは、『組み込みポリシー』セクションの Validate JWT (jwt-validate) を参照してください。
1 JWK も暗号オブジェクトも JWT を暗号化解除するために必要な暗号化データを提供する有効な方法です。ただし、両方のデータ型を指定した場合は、暗号オブジェクトのみが使用されます。
2 JWK も暗号オブジェクトも JWT を検証するために必要な暗号化データを提供する有効な方法です。ただし、両方のデータ型を指定した場合は、暗号オブジェクトのみが使用されます。