기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon S3 데이터 액세스 키 관리
이 페이지는 공급자가 SSE-KMS를 사용하여 암호화된 객체를 공유하는 Amazon S3 데이터 액세스 유형에만 해당됩니다. 구독자는 액세스에 사용된 키에 대한 허가를 받아야 합니다.
Amazon S3 버킷에 AWS KMS 고객 관리형 키를 사용하여 암호화된 데이터가 포함된 경우 Amazon S3 데이터 액세스 데이터 세트를 구성 AWS Data Exchange 하려면 이러한 데이터를 AWS KMS keys 와 공유해야 합니다. 자세한 내용은 3단계: Amazon S3 데이터 액세스 구성 단원을 참조하십시오.
AWS KMS 권한 부여 생성
Amazon S3 데이터 액세스 데이터 세트의 AWS KMS keys 일부로를 제공하면 AWS Data Exchange 는 각 AWS KMS key 공유에 대한 AWS KMS 권한을 생성합니다. 상위 권한 부여라고 하는이 권한 부여는 구독자에게 추가 AWS KMS 권한을 생성할 수 있는 AWS Data Exchange 권한을 부여하는 데 사용됩니다. 이러한 추가 권한을 하위 권한이라고 합니다. 각 구독자는 하나의 AWS KMS 권한 부여가 허용됩니다. 구독자는를 해독할 수 있는 권한을 얻습니다 AWS KMS key. 그러면 공유된 Amazon S3 객체 암호를 해독하여 사용할 수 있습니다. 자세한 내용은AWS Key Management Service 개발자 가이드에서 AWS KMS권한 부여를 참조하세요.
AWS Data Exchange 또한는 AWS KMS 상위 권한 부여를 사용하여 생성하는 AWS KMS 권한 부여의 수명 주기를 관리합니다. 구독이 종료되면는 해당 구독자에 대해 생성된 AWS KMS 하위 권한 부여를 AWS Data Exchange 사용 중지합니다. 개정이 취소되거나 데이터 세트가 삭제되면는 AWS KMS 상위 권한 부여를 AWS Data Exchange 사용 중지합니다. AWS KMS 작업에 대한 자세한 내용은 AWS KMS API 참조를 참조하세요.
암호화 컨텍스트 및 권한 부여 제약
AWS Data Exchange 는 권한 부여 제약 조건을 사용하여 요청에 지정된 암호화 컨텍스트가 포함된 경우에만 복호화 작업을 허용합니다. Amazon S3 버킷 키 기능을 사용하여 Amazon S3 객체를 암호화하고 공유할 수 있습니다 AWS Data Exchange. 버킷 Amazon 리소스 이름(ARN)은 암묵적으로 Amazon S3에서 암호화 컨텍스트로 사용합니다. 다음 예제는가 버킷 ARN을 생성하는 모든 권한 부여에 대한 AWS KMS 권한 부여 제약으로 AWS Data Exchange 사용하는 것을 보여줍니다.
"Constraints": {
"EncryptionContextSubset": "aws:s3:arn": “arn:aws:s3:::<Bucket ARN>"
}
}
AWS KMS keys 에서 모니터링 AWS Data Exchange
AWS KMS 고객 관리형 키를와 공유할 때 AWS Data ExchangeAWS CloudTrail를 사용하여 AWS Data Exchange 또는 데이터 구독자가 보내는 요청을 추적할 수 있습니다 AWS KMS. 다음은 CreateGrant
및 Decrypt
호출에 대한 CloudTrail 로그의 예입니다 AWS KMS.
- CreateGrant for parent
-
CreateGrant
는에서 자체적으로 생성한 상위 권한 부여 AWS Data Exchange 에 대한 것입니다.
{
"eventVersion": "1.08",
"userIdentity": {
"type": "AssumedRole",
"principalId": "AROAIGDTESTANDEXAMPLE:Provider01",
"arn": "arn:aws:sts::<your-account-id>:assumed-role/Admin/Provider01",
"accountId": "<your-account-id>",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"sessionContext": {
"sessionIssuer": {
"type": "Role",
"principalId": "AROAIGDTESTANDEXAMPLE",
"arn": "arn:aws:iam::<your-account-id>:role/Admin/Provider01”,
"accountId": "<your-account-id>",
"userName": "Admin"
},
"webIdFederationData": {},
"attributes": {
"creationDate": "2023-02-16T17:29:23Z",
"mfaAuthenticated": "false"
}
},
"invokedBy": "datax.amazonaws.com"
},
"eventTime": "2023-02-16T17:32:47Z",
"eventSource": "kms.amazonaws.com",
"eventName": "CreateGrant",
"awsRegion": "us-east-2",
"sourceIPAddress": "datax.amazonaws.com",
"userAgent": "datax.amazonaws.com",
"requestParameters": {
"keyId": "<Key ARN of the Key you shared with AWS Data Exchange>",
"operations": [
"CreateGrant",
"Decrypt",
"RetireGrant"
],
"granteePrincipal": "dataexchange.us-east-2.amazonaws.com",
"retiringPrincipal": "dataexchange.us-east-2.amazonaws.com",
"constraints": {
"encryptionContextSubset": { AWS:s3:arn": "arn:aws:s3:::<Your Bucket ARN>"
}
}
},
"responseElements": {
"grantId": "<KMS Grant ID of the created Grant>",
"keyId": "<Key ARN of the Key you shared with AWS Data Exchange>"
},
"requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
"eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
"readOnly": false,
"resources": [
{
"accountId": "<Your Account Id>",
"type": "AWS::KMS::Key",
"ARN": "<Key ARN of the Key you shared with AWS Data Exchange>"
}
],
"eventType": "AwsApiCall",
"managementEvent": true,
"recipientAccountId": "<Your Account Id>",
"eventCategory": "Management"
}
- CreateGrant for child
-
CreateGrant
는 구독자를 위해에서 생성한 하위 권한 부여 AWS Data Exchange 를 위한 것입니다.
{
"eventVersion": "1.08",
"userIdentity": {
"type": "AWSService",
"invokedBy": "datax.amazonaws.com"
},
"eventTime": "2023-02-15T23:15:49Z",
"eventSource": "kms.amazonaws.com",
"eventName": "CreateGrant",
"awsRegion": "us-east-2",
"sourceIPAddress": "datax.amazonaws.com",
"userAgent": "datax.amazonaws.com",
"requestParameters": {
"keyId": "<Key ARN of the Key you shared with AWS Data Exchange>",
"operations": [
"Decrypt"
],
"granteePrincipal": “<Subscriber’s account Id>”,
"retiringPrincipal": "dataexchange.us-east-2.amazonaws.com",
"constraints": {
"encryptionContextSubset": {
"aws:s3:arn": "arn:aws:s3:::<Your Bucket ARN>"
}
}
},
"responseElements": {
"grantId": "<KMS Grant ID of the created Grant>",
"keyId": "<Key ARN of the Key you shared with AWS Data Exchange>"
},
"requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
"eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
"readOnly": false,
"resources": [
{
"accountId": "<Your Account Id>",
"type": "AWS::KMS::Key",
"ARN": "<Key ARN of the Key you shared with AWS Data Exchange>"
}
],
"eventType": "AwsApiCall",
"managementEvent": true,
"recipientAccountId": "<Your Account Id>",
"sharedEventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE ",
"eventCategory": "Management"
}
- Decrypt
-
Decrypt
는 구독자가 구독한 암호화된 데이터를 읽으려고 할 때 호출합니다.
{
"eventVersion": "1.08",
"userIdentity": {
"type": "AWSAccount",
"principalId": "AROAIGDTESTANDEXAMPLE:Subscriber01",
"accountId": "<subscriber-account-id>",
"invokedBy": "<subscriber’s IAM identity>"
},
"eventTime": "2023-02-15T23:28:30Z",
"eventSource": "kms.amazonaws.com",
"eventName": "Decrypt",
"awsRegion": "us-east-2",
"sourceIPAddress": "<subscriber’s IP address>",
"userAgent": "<subscriber’s user agent>",
"requestParameters": {
"encryptionContext": {
"aws:s3:arn": "arn:aws:s3:::<Your Bucket ARN>"
},
"encryptionAlgorithm": "SYMMETRIC_DEFAULT"
},
"responseElements": null,
"requestID": ""ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
"eventID": ""ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE”,
"readOnly": true,
"resources": [
{
"accountId": "<Your Account Id>",
"type": "AWS::KMS::Key",
"ARN": "<Key ARN of the Key you shared with AWS Data Exchange>"
}
],
"eventType": "AwsApiCall",
"managementEvent": true,
"recipientAccountId": "602466227860",
"sharedEventID": "bcf4d02a-31ea-4497-9c98-4c3549f20a7b",
"eventCategory": "Management"
}