써드파티 평가 사용 시작하기
IBM® Verify 및 써드파티 위험 평가를 통합하려면 Verify 관리자가 다음 컴포넌트 및 프레임워크를 구성해야 합니다.
- 웹훅 구성 작성
- 써드파티 통합 구성 작성
- 써드파티 위험 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
}
써드파티 통합 구성 작성
모든 써드파티 위험 통합에 대해 구성을 작성해야 합니다. 이 구성 오브젝트는 사용되는 웹훅(웹훅 ID) 및 Verify 내부 속성을 식별합니다. 내부 구성 요소 확인은 실시간 웹훅을 통해 평가를 위해 타사에 전송해야 합니다.
액세스 정책 프레임워크는 이 구성의 작성 및 관리를 허용하는 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 내부 구성요소가 써드파티 제공자의 외부 위험을 계산할 수 있는 메커니즘을 제공합니다. 내부 구성 요소 확인은 이 액세스 정책 개체를 평가하고 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는 써드파티 위험 통합에서 값을 제공하는 속성입니다.
액세스 정책 오브젝트가 작성된 후 이를 원하는 사용자 애플리케이션에 첨부하십시오.