サード・パーティー・リスク API 規約
IBM® Verifyユーザーからのアプリケーション評価リクエストが到着すると、アクセスポリシーフレームワーク内のコンポーネントが、そのアプリケーションに紐付けられたアクセスポリシーオブジェクトを評価します。 その後、リアルタイムWebhookを通じてサードパーティ連携に向けたペイロードを生成します。
アクセス・ポリシー Webhook 要求モデル
アクセスポリシーフレームワークは、configノードの値 enabled を読み取ります。 false値がの場合、そのルールの処理はスキップされ、サードパーティ製連携は呼び出されません。 それ以外の場合は、アクセスポリシールールが処理され、configノードが処理されます。
内部 Verify コンポーネントは、構成ノードで定義された evaluationOutboundAttributes に基づいて、Webhook を介してサード・パーティーに以下のデータを送信します。 これによりリスクを取得するか、リスク・エンジンからサポートされる属性値を取得できます。
Verify が (Webhook 内部 API を使用して) サード・パーティーに送信するデータ・モデルのサンプル:
{
"sessionContext": {
...
},
"attributeContext" :{
...
},
"policyContext" :{
...
},
"adaptiveContext" : {
...
},
"customAttributes" : {
"customAttributeId1" : ["value"],
..
},
authnMethods : [...]
}Webhook 要求の詳細のアクセス・ポリシー・フレームワーク| エレメント | 説明 |
|---|---|
| ペイロード・タイプ | 要求モデルを表す JSON オブジェクト。 |
sessionContext |
Verify. 内で利用可能なユーザーのサブジェクト属性。 |
attributeContext |
Verify. 内で利用可能なユーザーのコンテキスト属性。 |
policyContext |
Verify. 内で利用可能なアクセスポリシーオブジェクトの属性。 |
adaptiveContext |
Verify. 内で利用可能なユーザーの適応型セッション属性。 |
customAttributes |
カスタム属性のIDと値の一覧。 これらは、その Verify テナントで利用可能なカスタム属性を表しています。 サードパーティに送信されるカスタム属性は、サードパーティ連携の設定の一部として指定されたIDの customAttributes リストに基づいて生成されます。 |
authnMethods |
評価対象のアクセス・ポリシー・オブジェクトに定義されている、Verify が認識している認証要素。 |
アクセス・ポリシー応答モデルの Webhook
アクセス・ポリシー・オブジェクトの評価中に、Verify 内部コンポーネントは Webhook を介してサード・パーティーにデータ・ペイロードを送信した後、サード・パーティー統合から応答を受信します。 応答には、バージョン、サポートされる属性、キーと値のペア、および結果が含まれます。
Verify がサード・パーティー統合から受け取る応答データ・モデル:
{
"version" :"some version",
"result": {
"action" : "any one of the Verify access policy actions.",
"message" : "Reason why this decision was returned.",
"authnMethods" : ["List of Verify authentication factors which the third party requires the user to complete. It must be the same, or a subset of the authnMethods sent to the third party via webhooks in the request."],
"redirectURI" : "Verify relative or absolute URL to redirect the browser when additional information is required."
},
"attributes": {
"attrName1" : "value",
"attrNameN" : "value",
},
}
Webhook アクセス・ポリシー応答の詳細| エレメント | 説明 |
|---|---|
| ペイロード・タイプ | 応答モデルを表す JSON オブジェクト。 |
| HTTP 状況コード | 「HTTP 状況コード」を参照してください。 |
version |
オプション - サード・パーティー統合応答のバージョンを表します。 |
result |
オプション - サード・パーティー統合結果を表します。 サード・パーティーは、結果ブロックなしで応答を返すことができ、サポートされている attributes のみを返すことができます。 結果オブジェクトが存在する場合は、decision フィールドが含まれている必要があります。 |
result.decision |
必須 - サード・パーティー統合の決定を表します。その値には、ISV アクセス・ポリシー・アクションのいずれかが含まれます。 有効な値は ACTION_DENY, ACTION_ALLOW,
ACTION_MFA_ALWAYS, ACTION_MFA_PER_SESSION, ACTION_DENY_OVERRIDE, ACTION_MFA_OVERRIDE,
ACTION_ALLOW_OVERRIDE, ACTION_DENY_AND_REDIRECT, ACTION_REDIRECT and
ACTION_CONTINUE です。 |
result.message |
オプション - この action が返された理由を示すサード・パーティー統合の理由/メッセージを表します。 |
result.authnMethods |
オプション - ["サード・パーティーがユーザーに入力を要求する ISV 認証要素のリスト。 これは、要求で Webhook を介してサード・パーティーに送信された authnMethods と同じか、そのサブセットでなければなりません。"] |
result.redirectURI |
オプション - ACTION_REDIRECT/ACTION_DENY_AND_REDIRECT またはリカバリー可能エラー・フローの場合に、ブラウザーをリダイレクトする必要があるエンドポイントを表します。 Targetリダイレクト・バリアント応答の結果としてブラウザに送信されるクエリ文字列パラメータには、. クライアント・ブラウザーとの必要な対話が完了したら、クライアントを Target に戻す必要があります。 |
attributes |
オプション - サードパーティ製統合機能でサポートされている属性(ハッシュマップ)を表します。 |