써드파티 평가 사용 시작하기

와 타사 위험 평가를 IBM® Verify 통합하려면 관리자가 Verify 다음 구성 요소 및 프레임워크를 구성해야 합니다:

  1. 웹훅 구성 작성
  2. 써드파티 통합 구성 작성
  3. 써드파티 위험 API 계약과 함께 액세스 정책 오브젝트 작성

웹훅 구성 작성

실시간 웹훅 구성은 타사 리스크 제공업체와 연결되어 있어야 합니다. 실시간 웹훅은 Verify와 타사 리스크 관리 서비스 간의 기술적 런타임 통합을 제공합니다. 타사 리스크를 계산하려면 먼저 실시간 웹훅 설정을 완료해야 합니다.

타사 리스크 제공업체를 지원할 수 있는 가상의 실시간 웹훅 구성 예시:

{
  "name": "some name",
  "type": "realtime",
  "urls": [
    "https://somedomain.com/1351/app_proxy/api/risk"
  ],
  "authentication": {
    "header": {
      "values": [
        {
          "key": "SEC",
          "value": "some-value"
        }
      ]
    },
    "type": "header"
  }
  "purpose": [
    "external_risk"
  ],
  "notification": null
}
참고: 타사 통합 서비스가 Verify가 기대하는 형식의 응답을 제공하지 못하는 경우, 간단한 변환을 위해 중개 서비스나 API 게이트웨이를 구현하거나 웹훅 변환 기능을 사용할 수 있습니다. 웹훅 변환에 대한 자세한 내용은 웹훅 구성 API 참조를 참조하십시오.

써드파티 통합 구성 작성

모든 써드파티 위험 통합에 대해 구성을 작성해야 합니다. 이 구성 오브젝트는 사용되는 웹훅(웹훅 ID) 및 Verify 내부 속성을 식별합니다. Verify 내부 구성 요소는 평가를 위해 제3자에게 데이터를 전송해야 합니다(실시간 웹훅을 통해).

액세스 정책 프레임워크는 이 구성의 작성 및 관리를 허용하는 API 세트를 제공합니다.

POST '/integrations/v1.0/config' \
'Content-Type: application/json' \
'Accept: application/json' \

{
        "WebhookId": "some-Webhook-id",
        "name": "some third party integration",
        "version": 1,
        "evaluationOutboundAttributes": {
            "sessionContext": {
                ...
            },
            "attributeContext": {
                ...
            },
            "policyContext": {
                ...
            },
            "adaptiveContext": {
                ...
            }
        },
        "supportedAttributes": [],
        "integrationProcessingEndpoint": {
            "redirectUri": ""
        }
}
통합 구성 요청 세부사항
요소 설명
HTTP 요청 POST.
HTTP 헤더 - Content-Type 요청 페이로드의 컨텐츠 유형은 항상 application/json입니다.
HTTP 헤더 - Accept 응답 페이로드에 대해 예상되는 컨텐츠 유형은 항상 application/json입니다.
페이로드 써드파티 통합 구성을 나타내는 JSON 오브젝트입니다.
WebhookId 필수: 타사 제공자를 생성할 때 사용되는 실시간 웹훅의 고유 식별자.
name 필수: 이 구성 오브젝트의 이름입니다.
version 구성 오브젝트의 버전입니다.
evaluationOutboundAttributes 선택사항: 이 오브젝트는 관련 컨텍스트 오브젝트(현재 SessionContext(SubjectContext), AttributeContext, AdaptiveContext 또는 PolicyContext)에서 사용 가능한 써드파티 위험 통합에 전달되어야 하는 Verify 데이터를 나타냅니다.
supportedAttributes 선택사항: 이 써드파티 통합이 값을 제공하는 속성을 나타냅니다. 웹훅 오케스트레이션 중에 리턴된 속성을 나타내기 위해 새 Fixed value 속성이 작성됩니다. Fixed value 속성은 업데이트할 수 있는 사전 정의된 값으로 구성될 수 있습니다. 웹훅 호출이 실패하거나 API 계약에도 불구하고 해당 속성이 웹훅 응답에 리턴되지 않는 경우 사전 구성된 값을 가져오기 위해 런타임 시 사용자 정의 속성이 채워지는 것과 동일한 방식으로 속성 관리를 담당하는 Verify 내부 구성요소를 호출할 수 있습니다. 써드파티 통합에서 지원되는 속성을 사용하는 경우 강화 속성 플레이스홀더(일부 예외가 발생하는 경우 기본값 포함)를 작성하십시오. 속성 관리 API 참조를 참조하십시오.

샘플 통합 구성 응답 페이로드:

{
        "id" : "config-id"
        "WebhookId": "some-Webhook-id",
        "referenceId": "reference-id",
        "created": "created timestamp",
        "name": "some third  integration",
        "version": 1,
        "evaluationOutboundAttributes": {
            "sessionContext": {
                ...
            },
            "attributeContext": {
                ...
            },
            "policyContext": {
                ...
            },
            "adaptiveContext": {
                ...
            }
        },
        "supportedAttributes": [],
        "integrationProcessingEndpoint": {
            "redirectUri": ""
        }
}
통합 구성 응답 세부사항
요소 설명
페이로드 유형 써드파티 통합 구성을 나타내는 JSON 오브젝트입니다.
HTTP 상태 코드 201-생성됨(성공), 400®-잘못된 응답, 403-접근 금지, 500-서버 내부 오류
id 필수: 이 구성 오브젝트의 고유 ID를 나타냅니다.
referenceId 필수: Verify 내부 구성요소에서 웹훅과 통신하는 데 사용하는 참조 ID를 나타냅니다.
created 필수: 이 구성 오브젝트가 작성된 시간소인을 나타냅니다.
WebhookId 필수: 타사 제공자를 생성할 때 사용되는 실시간 웹훅의 고유 식별자입니다.
name 필수: 이 구성 오브젝트의 이름입니다.
version 선택사항: 구성 오브젝트의 버전입니다.
evaluationOutboundAttributes 선택사항: 원래 요청이 함께 전송된 경우.
supportedAttributes 선택사항: 원래 요청이 함께 전송된 경우.
integrationProcessingEndpoint 원래 요청이 함께 전송된 경우.

세부사항은 위험 관리 구성 API 참조를 참조하십시오.

가상의 써드파티 구성 오브젝트:

{
    "WebhookId": "some-Webhook-id",
    "name": "some third party integration",
    "version": 1,
    "evaluationOutboundAttributes": {
        "sessionContext": {
            "uid": true,
            "groupIds": false
        },
        "attributeContext": {
            "appId": false,
            "ipAddress": true
        },
        "policyContext": {
            "id": true,
            "policyName": true
        },
        "adaptiveContext": {
            "city": true
        }
    },
    "supportedAttributes": [],
    "integrationProcessingEndpoint": {
        "redirectUri": ""
    }
}

액세스 정책 오브젝트 작성

Verify의 액세스 정책 프레임워크는 Verify 내부 구성요소가 써드파티 제공자의 외부 위험을 계산할 수 있는 메커니즘을 제공합니다. Verify 내부 구성 요소는 이 액세스 정책 개체를 평가하고, 2단계에서 생성된 타사 통합 구성을 참조하여 (실시간 웹훅을 통해) 타사 통합으로 데이터를 전송합니다. 이러한 방식으로 외부 위험 또는 속성 강화가 발생할 수 있습니다.

액세스 정책 오브젝트 내에서 써드파티 위험 통합을 사용으로 설정하기 위한 형식:

{
      "name": "3rd Party Risk Evaluation",
      "alwaysRun": true,
      "conditions": [ {
        "type":"integrationAttributes":,
        "id" : "<configId>"
        }]
      },
      "result": {
        "action": "ACTION_MFA_ALWAYS",
        "serverSideActions": {[]},
        "authnMethods": <["urn:ibm:security:authentication:asf:macotp"]> or <["smsotp", "emailotp", ....]>
      }
    }
조건 속성 설명
ID 써드파티 통합configId 써드파티 통합 configId, 써드파티 통합 구성 작성을 참조하십시오.
result 실시간 웹훅에서 오류가 발생하면 위험 평가 결과를 확인하십시오.
authnMethods Verify 인증 요소입니다.

정책 작성 및 관리를 위한 액세스 및 위험 정책 API를 참조하십시오.

써드파티 통합 조건이 있는 액세스 정책 오브젝트의 예는 다음과 같습니다.

{
    "name": "3rd Party Integration via webhooks",
    "description": "",
    "rules": [
        {
            "id": "1",
            "name": "3rd party provider",
            "alwaysRun": true,
            "firstFactor": false,
            "conditions": [
                {
                    "type": "integrationAttributes",
                    "id": "16a1f2fb-c43f-4a0e-b294-1b25a87a9546"
                }
            ],
            "result": {
                "action": "ACTION_ALLOW",
                "serverSideActions": [],
                "authnMethods": [
                    "urn:ibm:security:authentication:asf:macotp"
                ]
            }
        },
        {
            "id": "1634292657617",
            "name": "Colour Severity",
            "description": "",
            "alwaysRun": false,
            "firstFactor": false,
            "conditions": [
                {
                    "type": "customAttributes",
                    "customAttributes": [
                        {
                            "name": "external_risk_score",
                            "opCode": "EQ",
                            "values": [
                                "4"
                            ]
                        }
                    ],
                    "firstFactor": false
                }
            ],
            "result": {
                "action": "ACTION_DENY",
                "serverSideActions": [],
                "authnMethods": []
            }
        },
        {
            "id": "1634292240488",
            "name": "Default rule",
            "description": "",
            "alwaysRun": false,
            "firstFactor": false,
            "conditions": [],
            "result": {
                "action": "ACTION_ALLOW",
                "serverSideActions": [],
                "authnMethods": [
                    "urn:ibm:security:authentication:asf:macotp"
                ]
            }
        }
    ],
    "meta": {
        "label": "initial policy",
        "state": "ACTIVE",
        "scope": [
            "developers"
        ],
        "schema": "urn:access:policy:5.0:schema",
        "enforcementType": "fedSSO"
    }
}
  • 이 액세스 정책 오브젝트는 구성이 id 필드로 식별되는 써드파티 위험 평가를 보여줍니다.
  • integrationAttributes 이외에 정책에는 customAttributes 조건도 있습니다. 사용자 정의 속성 external_risk_score는 써드파티 위험 통합에서 값을 제공하는 속성입니다.

액세스 정책 개체가 생성되면, 이를 원하는 사용자 애플리케이션에 연결하십시오.