기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS CloudTrail로 IAM Identity Center SCIM API 직접 호출 로깅
IAM Identity Center SCIM은 사용자 AWS CloudTrail, 역할 또는가 수행한 작업에 대한 레코드를 제공하는 서비스와 통합됩니다 AWS 서비스. CloudTrail은 SCIM에 대한 API 직접 호출을 이벤트로 캡처합니다. CloudTrail에서 수집한 정보를 사용하여 요청된 작업에 대한 정보, 작업 날짜 및 시간, 요청 파라미터 등을 확인할 수 있습니다. CloudTrail에 대한 자세한 내용은 AWS CloudTrail 사용 설명서를 참조하십시오.
참고
CloudTrail은 계정을 생성할 AWS 계정 때에서 활성화됩니다. 그러나 토큰이 2024년 9월 이전에 생성된 경우 SCIM의 이벤트를 보려면 액세스 토큰을 교체해야 할 수 있습니다.
자세한 내용은 액세스 토큰 교체 단원을 참조하십시오.
SCIM는 다음 작업에 대한 로그를 CloudTrail의 이벤트로 기록할 수 있도록 지원합니다.
CloudTrail 이벤트 예시
다음 예제는 IAM Identity Center를 사용한 SCIM 작업 중에 생성되는 일반적인 CloudTrail 이벤트 로그를 보여줍니다. 이 예제에서는 성공적인 운영과 일반적인 오류 시나리오를 위한 이벤트의 구조와 내용을 보여 주므로 SCIM 프로비저닝 문제를 해결할 때 CloudTrail 로그를 해석하는 방법을 이해하는 데 도움이 됩니다.
성공CreateUser
한 작업
이 CloudTrail 이벤트는 SCIM API를 통해 수행된 성공적인 CreateUser
작업을 보여줍니다. 이벤트는 요청 파라미터(민감한 정보가 마스킹 처리된 상태)와 새로 생성된 사용자의 ID를 포함한 응답 요소를 모두 캡처합니다. 이러한 유형의 이벤트는 자격 증명 공급자가 SCIM 프로토콜을 사용하여 IAM Identity Center에 새 사용자를 성공적으로 프로비저닝할 때 생성됩니다.
{
"eventVersion": "1.10",
"userIdentity": {
"type": "WebIdentityUser",
"accountId": "123456789012",
"accessKeyId": "xxxx"
},
"eventTime": "xxxx",
"eventSource": "identitystore-scim.amazonaws.com",
"eventName": "CreateUser",
"awsRegion": "us-east-1",
"sourceIPAddress": "xx.xxx.xxx.xxx",
"userAgent": "Go-http-client/2.0",
"requestParameters": {
"httpBody": {
"displayName": "HIDDEN_DUE_TO_SECURITY_REASONS",
"schemas" : [
"urn:ietf:params:scim:schemas:core:2.0:User"
],
"name": {
"familyName": "HIDDEN_DUE_TO_SECURITY_REASONS",
"givenName": "HIDDEN_DUE_TO_SECURITY_REASONS"
},
"active": true,
"userName": "HIDDEN_DUE_TO_SECURITY_REASONS"
},
"tenantId": "xxxx"
},
"responseElements": {
"meta" : {
"created" : "Oct 10, 2024, 1:23:45 PM",
"lastModified" : "Oct 10, 2024, 1:23:45 PM",
"resourceType" : "User"
},
"displayName" : "HIDDEN_DUE_TO_SECURITY_REASONS",
"schemas" : [
"urn:ietf:params:scim:schemas:core:2.0:User"
],
"name": {
"familyName": "HIDDEN_DUE_TO_SECURITY_REASONS",
"givenName": "HIDDEN_DUE_TO_SECURITY_REASONS"
},
"active": true,
"id" : "c4488478-a0e1-700e-3d75-96c6bb641596",
"userName": "HIDDEN_DUE_TO_SECURITY_REASONS"
},
"requestID": "xxxx",
"eventID": "xxxx",
"readOnly": false,
"eventType": "AwsApiCall",
"managementEvent": true,
"recipientAccountId": "123456789012",
"eventCategory": "Management",
"tlsDetails": {
"clientProvidedHostHeader": "scim.us-east-1.amazonaws.com"
}
}
PatchGroup
작업 실패: 필수 경로 속성 누락
이 CloudTrail 이벤트는 오류 메시지와 ValidationException
함께를 발생시킨 실패한 PatchGroup
작업을 보여줍니다"Missing path in PATCH request"
. PATCH
작업에 수정할 그룹 속성을 지정하는 경로 속성이 필요하지만이 속성이 요청에서 누락되었기 때문에 오류가 발생했습니다.
{
"eventVersion": "1.10",
"userIdentity": {
"type": "Unknown",
"accountId": "123456789012",
"accessKeyId": "xxxx"
},
"eventTime": "xxxx",
"eventSource": "identitystore-scim.amazonaws.com",
"eventName": "PatchGroup",
"awsRegion": "us-east-1",
"sourceIPAddress": "xxx.xxx.xxx.xxx",
"userAgent": "Go-http-client/2.0",
"errorCode": "ValidationException",
"errorMessage": "Missing path in PATCH request",
"requestParameters": {
"httpBody": {
"operations": [
{
"op": "REMOVE",
"value": "HIDDEN_DUE_TO_SECURITY_REASONS"
}
],
"schemas": [
"HIDDEN_DUE_TO_SECURITY_REASONS"
]
},
"tenantId": "xxxx",
"id": "xxxx"
},
"responseElements": null,
"requestID": "xxxx",
"eventID": "xxxx",
"readOnly": false,
"eventType": "AwsApiCall",
"managementEvent": true,
"recipientAccountId": "123456789012",
"eventCategory": "Management",
"tlsDetails": {
"clientProvidedHostHeader": "scim.us-east-1.amazonaws.com"
}
}
실패한 CreateGroup
작업: 그룹 이름이 이미 있음
이 CloudTrail 이벤트는 오류 메시지와 ConflictException
함께를 발생시킨 실패한 CreateGroup
작업을 보여줍니다"Duplicate GroupDisplayName"
. 이 오류는 IAM Identity Center에 이미 있는 표시 이름으로 그룹을 생성하려고 할 때 발생합니다. 자격 증명 공급자는 새 그룹을 생성하는 대신 고유한 그룹 이름을 사용하거나 기존 그룹을 업데이트해야 합니다.
{
"eventVersion": "1.10",
"userIdentity": {
"type": "Unknown",
"accountId": "123456789012",
"accessKeyId": "xxxx"
},
"eventTime": "xxxx",
"eventSource": "identitystore-scim.amazonaws.com",
"eventName": "CreateGroup",
"awsRegion": "us-east-1",
"sourceIPAddress": "xxx.xxx.xxx.xxx",
"userAgent": "Go-http-client/2.0",
"errorCode": "ConflictException",
"errorMessage": "Duplicate GroupDisplayName",
"requestParameters": {
"httpBody": {
"displayName": "HIDDEN_DUE_TO_SECURITY_REASONS"
},
"tenantId": "xxxx"
},
"responseElements": null,
"requestID": "xxxx",
"eventID": "xxxx",
"readOnly": false,
"eventType": "AwsApiCall",
"managementEvent": true,
"recipientAccountId": "123456789012",
"eventCategory": "Management",
"tlsDetails": {
"clientProvidedHostHeader": "scim.us-east-1.amazonaws.com"
}
}
작업 실패PatchUser
: 여러 이메일 주소가 지원되지 않음
이 CloudTrail 이벤트는 오류 메시지와 ValidationException
함께를 발생시킨 실패한 PatchUser
작업을 보여줍니다"List attribute emails exceeds allowed limit of 1"
. IAM Identity Center는 사용자당 하나의 이메일 주소만 지원하므로이 오류는 사용자에게 여러 이메일 주소를 할당하려고 할 때 발생합니다. 자격 증명 공급자는 각 사용자에 대해 단일 이메일 주소만 전송하도록 SCIM 매핑을 구성해야 합니다.
{
"eventVersion": "1.10",
"userIdentity": {
"type": "Unknown",
"accountId": "123456789012",
"accessKeyId": "xxxx"
},
"eventTime": "xxxx",
"eventSource": "identitystore-scim.amazonaws.com",
"eventName": "PatchUser",
"awsRegion": "us-east-1",
"sourceIPAddress": "xxx.xxx.xxx.xxx",
"userAgent": "Go-http-client/2.0",
"errorCode": "ValidationException",
"errorMessage": "List attribute emails exceeds allowed limit of 1",
"requestParameters": {
"httpBody": {
"operations": [
{
"op": "REPLACE",
"path": "emails",
"value": "HIDDEN_DUE_TO_SECURITY_REASONS"
}
],
"schemas": [
"HIDDEN_DUE_TO_SECURITY_REASONS"
]
},
"tenantId": "xxxx",
"id": "xxxx"
},
"responseElements": null,
"requestID": "xxxx",
"eventID": "xxxx",
"readOnly": false,
"eventType": "AwsApiCall",
"managementEvent": true,
"recipientAccountId": "123456789012",
"eventCategory": "Management",
"tlsDetails": {
"clientProvidedHostHeader": "scim.us-east-1.amazonaws.com"
}
}
IAM Identity Center의 일반적인 SCIM API 검증 오류
다음 검증 오류 메시지는 SCIM API를 IAM Identity Center와 함께 사용할 때 CloudTrail 이벤트에 일반적으로 나타납니다. 이러한 검증 오류는 일반적으로 사용자 및 그룹 프로비저닝 작업 중에 발생합니다.
이러한 오류를 해결하고 SCIM 프로비저닝을 올바르게 구성하는 방법에 대한 자세한 지침은이 AWS re:Post 문서를
-
목록 속성 이메일이 허용 한도인 1을 초과합니다.
-
허용 한도 1의 속성 주소 나열
-
유효성 검사 오류 1건이 감지됨: '*name.familyName *'의 값이 제약 조건을 충족하지 못함: 구성원이 정규식 패턴을 충족해야 함: [\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}\\t\\n\\r ]+
-
검증 오류가 2건 감지됨: 'name.familyName'의 값이 제약 조건을 충족하지 못함: 구성원의 길이는 1 이상이어야 합니다. 'name.familyName'의 값이 제약 조건을 충족하지 못했습니다. 구성원은 정규식 패턴을 충족해야 합니다. [\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}\\t\\n\\r ]+
-
검증 오류 2건이 감지됨: 'urn:ietf:params:scim:schemas:extension:enterprise:2.0:User.manager.value'의 값이 제약 조건을 충족하지 못함: 구성원의 길이가 1 이상이어야 함; 'urn:ietf:params:scim:schemas:extension:enterprise:2.0:User.manager.value'의 값이 제약 조건을 충족하지 못함: 구성원이 정규 표현식 패턴을 충족해야 함: [\\p{L}\\p{M}\\p{S}\\p{N}\\t\n\\r]+',
-
RequestBody의 잘못된 JSON
-
잘못된 필터 형식