HMACシグネチャ検証
Oracle Integrationフローを呼び出すための受信リクエストのHMACベースのデジタル・シグネチャの検証をサポートするには、HMAC_SIGNATURE_VALIDATION
管理対象セキュリティ・ポリシーを使用します。 接続定義に必要なセキュリティ・ポリシーをカスタマイズできます。
概要
HMACポリシーは、受信リクエストのHMACシグネチャ部分を検証します。 セキュリティ・ポリシーは、ポリシーで定義されたHMAC検証関数(JQ)に基づいて、HTTPクライアントによって送信されたシグネチャを検証します。
このセキュリティ・ポリシーは、clientIdentifier
に指定されているクライアントID値をアサートし、clientIDがServiceInvokerロールに関連付けられていることを確認します。
HMACシグネチャ検証ポリシーをドキュメントに追加するには、使用可能な認証スキーム・テンプレートを使用します。 「新規接続定義の実装」を参照してください。
ノート:
このポリシーを使用して、単一のリクエストで複数のシグネチャを検証できます。セキュリティ・プロパティ
このセキュリティ・ポリシーを使用する接続定義は、securityProperties
セクションで次のプロパティを定義します。 「接続プロパティおよびサンプル・コード」を参照してください。
name
, displayName
, shortDescription
列およびdescription
列の値は、アダプタ定義ドキュメントにセキュリティ・ポリシーを挿入したときに表示されるデフォルト値を示します。 これらの値は、必要に応じて更新できます。
name | displayName | shortDescription | description | データ型 | 必須 | 推奨事項 |
---|---|---|---|---|---|---|
|
|
|
|
String |
はい |
|
|
|
|
|
String |
はい |
|
|
|
|
|
パスワード |
はい |
"hidden":false |
|
|
|
|
CHOICE |
はい |
"hidden":true |
|
|
|
|
String |
いいえ |
|
|
|
|
|
String |
はい |
|
サンプル・コード: デジタル・シグネチャ検証(HMAC)
"securityPolicies": [
{
"type": "managed",
"policy": "HMAC_SIGNATURE_VALIDATION",
"description": "Validates HMAC Signature",
"displayName": "HMAC SIGNATURE VALIDATION",
"scope": "TRIGGER",
"securityProperties": [
{
"name": "signature",
"hidden": true,
"required": true,
"default": "${connectivity::hexDecode(.request.headers.digest)}"
},
{
"name": "signatureString",
"displayName": "Request Signature Location",
"hidden": true,
"required": true,
"default": "${.request.body}"
},
{
"name": "signatureAlgorithm",
"displayName": "Request Signature Location",
"hidden": true,
"required": true,
"default": "HMACSHA256"
},
{
"name": "secret",
"displayName": "Shared Secret",
"hidden": false,
"required": true
},
{
"name": "timestampValidator",
"displayName": "Timestamp Validation",
"hidden": true,
"required": true,
"default": ""
},
]
}
]