

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon QLDB에서 고객 관리형 키 사용
<a name="encryption-at-rest.using-cust-keys"></a>

 AWS Management Console, AWS Command Line Interface (AWS CLI) 또는 QLDB API를 사용하여 Amazon QLDB의 새 원장 및 기존 원장에 AWS KMS key 대해를 지정할 수 있습니다. 다음 주제에서는 QLDB에서 고객 관리형 키의 사용을 관리하고 모니터링하는 방법을 설명합니다.

**Topics**
+ [사전 조건](#encryption-at-rest.using-cust-keys.prereqs)
+ [새 원장에 AWS KMS key 지정하기](#encryption-at-rest.using-cust-keys.specify)
+ [기존 원장의 AWS KMS key 업데이트](#encryption-at-rest.using-cust-keys.update)
+ [AWS KMS keys모니터링](#encryption-at-rest.using-cust-keys.monitor)

## 사전 조건
<a name="encryption-at-rest.using-cust-keys.prereqs"></a>

고객 관리형 키로 QLDB 원장을 보호하려면 먼저 AWS Key Management Service ()에서 키를 생성해야 합니다AWS KMS. 또한 QLDB가 AWS KMS key 사용자를 대신하여 권한 부여를 생성하도록 허용하는 키 정책을 지정해야 합니다.

**고객 관리형 키 생성**  
고객 관리형 키를 생성하려면 *AWS Key Management Service 개발자 안내서*의 [대칭 암호화 KMS 키 생성](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk)의 단계를 따르세요. QLDB는 [비대칭 키](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html)는 지원하지 않습니다.

**키 정책 설정**  
키 정책은에서 고객 관리형 키에 대한 액세스를 제어하는 기본 방법입니다 AWS KMS. 모든 고객 관리형 키에는 정확히 하나의 키 정책이 있어야 합니다. 키 정책 문서의 설명은 KMS 키를 사용하는 권한을 가진 사람이 누구고 이를 어떻게 사용할 수 있는지 결정합니다. 자세한 내용은 [에서 키 정책 사용을 AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) 참조하세요.  
고객 관리형 키를 생성할 때 키 정책을 지정할 수 있습니다. 기존 고객 관리형 키의 키 정책을 변경하려면 [키 정책 변경](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html)을 참조하세요.  
QLDB가 고객 관리형 키를 사용하도록 허용하려면 키 정책에 다음 AWS KMS 작업에 대한 권한이 포함되어야 합니다.  
+ [kms:CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html) - 고객 관리형 키에 [권한 부여](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)를 추가합니다. 지정된 KMS 키에 제어 액세스 권한을 부여합니다.

  지정된 고객 관리형 키로 원장을 생성하거나 업데이트하면 QLDB는 필요한 [권한 부여 작업](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-grant-operations)에 액세스할 수 있는 권한을 생성합니다. 권한 부여 작업에는 다음이 포함됩니다.
  + [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)
  + [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)
  + [암호화](https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html)
+ [kms:DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) - 고객 관리형 키에 대한 세부 정보를 반환합니다. QLDB는 이 정보를 사용하여 키를 확인합니다.
**예제 키 정책**  
다음은 QLDB에 사용할 수 있는 키 정책 예입니다. 이 정책은 계정 `111122223333`에서 QLDB를 사용할 권한이 있는 보안 주체가 리소스 `DescribeKey`에서 `CreateGrant` 및 `arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab` 작업을 호출할 수 있도록 허용합니다.  
이 정책을 사용하려면 예제의 *us-east-1*, *111122223333*, *1234abcd-12ab-34cd-56ef-1234567890ab*를 사용자 고유의 정보로 바꾸세요.  

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid" : "Allow access to principals authorized to use Amazon QLDB",
            "Effect" : "Allow",
            "Principal" : {
                "AWS" : "*"
            },
            "Action" : [
                "kms:DescribeKey",
                "kms:CreateGrant"
            ],
            "Resource" : "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
            "Condition" : {
                "StringEquals" : {
                    "kms:ViaService" : "qldb.us-east-1.amazonaws.com",
                    "kms:CallerAccount" : "111122223333"
                }
            }
        }
    ]
}
```

## 새 원장에 AWS KMS key 지정하기
<a name="encryption-at-rest.using-cust-keys.specify"></a>

다음 단계에 따라 QLDB 콘솔 또는 AWS CLI를 사용하여 새 원장을 생성할 때 KMS 키를 지정합니다.

ID, 별칭 또는 Amazon 리소스 이름(ARN)을 사용하여 고객 관리형 키를 지정할 수 있습니다. 자세한 설명은 *AWS Key Management Service 개발자 가이드*에서 [키 식별자(KeyId)](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id)를 참조하세요.

**참고**  
교차 리전 키는 지원되지 않습니다. 지정된 KMS 키는 원장 AWS 리전 과 동일한에 있어야 합니다.

### 원장 생성 (콘솔)
<a name="encryption-at-rest.using-cust-keys.specify.con"></a>

1. 에 로그인 AWS Management Console하고 [https://console.aws.amazon.com/qldb](https://console.aws.amazon.com/qldb) Amazon QLDB 콘솔을 엽니다.

1. **원장 생성**을 선택합니다.

1. **원장 생성** 페이지에서 다음을 수행합니다.
   + **원장 정보** - 현재 AWS 계정 및 리전의 모든 원장 간에 고유한 원장 **이름을** 입력합니다.
   + **권한 모드** - 원장에 할당할 권한 모드를 선택합니다.
     + **모두 허용**
     + **표준**(*권장*)
   + **저장 데이터 암호화** - 저장된 데이터 암호화에 사용할 KMS 키 유형을 선택합니다.
     + ** AWS 소유 KMS 키 사용** - AWS 사용자를 대신하여에서 소유하고 관리하는 KMS 키를 사용합니다. 이는 기본 옵션이며 추가 설정이 필요하지 않습니다.
     + **다른 AWS KMS 키 선택** - 생성, 소유 및 관리하는 계정에서 대칭 암호화 KMS 키를 사용합니다.

        AWS KMS 콘솔을 사용하여 새 키를 생성하려면 ** AWS KMS 키 생성을** 선택합니다. 자세한 내용은 *AWS Key Management Service 개발자 안내서*의 [대칭 암호화 KMS 키 생성](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk)을 참조하세요.

       기존 KMS 키를 사용하려면 드롭다운 목록에서 하나를 선택하거나 KMS 키 ARN을 지정합니다.

1. 원하는 대로 설정되었으면 **원장 생성**을 선택합니다.

   QLDB 원장 상태가 **활성** 상태가 되면 해당 원장에 액세스할 수 있습니다. 몇 분 정도 걸릴 수 있습니다.

### 원장 생성 (AWS CLI)
<a name="encryption-at-rest.using-cust-keys.specify.cli"></a>

 AWS CLI 를 사용하여 기본 AWS 소유 키 또는 고객 관리형 키를 사용하여 QLDB에서 원장을 생성합니다.

**Example - 기본 AWS 소유 키를 사용하여 원장 생성**  

```
aws qldb create-ledger --name my-example-ledger --permissions-mode STANDARD
```

**Example - 고객 관리형 키를 사용하여 원장 생성**  

```
aws qldb create-ledger \
    --name my-example-ledger \
    --permissions-mode STANDARD \
    --kms-key arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
```

## 기존 원장의 AWS KMS key 업데이트
<a name="encryption-at-rest.using-cust-keys.update"></a>

QLDB 콘솔 또는 AWS CLI 를 사용하여 언제든지 기존 원장의 KMS 키를 AWS 소유 키 또는 고객 관리형 키로 업데이트할 수도 있습니다.

**참고**  
Amazon QLDB는 2021년 7월 22 AWS KMS keys 일에 고객 관리형에 대한 지원을 시작했습니다. 시작 전에 생성된 원장은 AWS 소유 키 기본적으로 로 보호되지만 현재 고객 관리형 키를 사용하여 저장 시 암호화할 수 없습니다.  
QLDB 콘솔에서 원장 생성 시간을 볼 수 있습니다.

QLDB의 주요 변경 사항은 비동기적으로 이루어집니다. 키 변경이 처리되는 동안 성능에 영향을 주지 않고 원장에 완전히 액세스할 수 있습니다. 키를 업데이트하는 데 걸리는 시간은 원장 크기에 따라 다릅니다

ID, 별칭 또는 Amazon 리소스 이름(ARN)을 사용하여 고객 관리형 키를 지정할 수 있습니다. 자세한 설명은 *AWS Key Management Service 개발자 가이드*에서 [키 식별자(KeyId)](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id)를 참조하세요.

**참고**  
교차 리전 키는 지원되지 않습니다. 지정된 KMS 키는 원장 AWS 리전 과 동일한에 있어야 합니다.

### 원장 업데이트 (콘솔)
<a name="encryption-at-rest.using-cust-keys.update.con"></a>

1. 에 로그인 AWS Management Console하고 [https://console.aws.amazon.com/qldb](https://console.aws.amazon.com/qldb) Amazon QLDB 콘솔을 엽니다.

1. 탐색 창에서 **원장**을 선택합니다.

1. 원장 목록에서 갱신하려는 원장을 선택한 다음 **원장 편집**을 선택합니다.

1. **원장 편집** 페이지에서 저장 시 암호화에 사용할 KMS 키 유형을 선택합니다.
   + ** AWS 소유 KMS 키 사용** - AWS 사용자를 대신하여에서 소유하고 관리하는 KMS 키를 사용합니다. 이는 기본 옵션이며 추가 설정이 필요하지 않습니다.
   + **다른 AWS KMS 키 선택** - 생성, 소유 및 관리하는 계정에서 대칭 암호화 KMS 키를 사용합니다.

      AWS KMS 콘솔을 사용하여 새 키를 생성하려면 ** AWS KMS 키 생성을** 선택합니다. 자세한 내용은 *AWS Key Management Service 개발자 안내서*의 [대칭 암호화 KMS 키 생성](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk)을 참조하세요.

     기존 KMS 키를 사용하려면 드롭다운 목록에서 하나를 선택하거나 KMS 키 ARN을 지정합니다.

1. **변경 확인**을 선택합니다.

### 원장 업데이트 (AWS CLI)
<a name="encryption-at-rest.using-cust-keys.update.cli"></a>

 AWS CLI 를 사용하여 QLDB의 기존 원장을 기본 AWS 소유 키 또는 고객 관리형 키로 업데이트합니다.

**Example - 기본 AWS 소유 키를 사용하여 원장 업데이트**  

```
aws qldb update-ledger --name my-example-ledger --kms-key AWS_OWNED_KMS_KEY
```

**Example - 고객 관리형 키를 사용하여 원장 업데이트**  

```
aws qldb update-ledger \
    --name my-example-ledger \
    --kms-key arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
```

## AWS KMS keys모니터링
<a name="encryption-at-rest.using-cust-keys.monitor"></a>

고객 관리형 키를 사용하여 Amazon QLDB 원장을 보호하는 경우 [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) 또는 [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html)를 사용하여 QLDB가 사용자를 대신하여에 보내는 요청을 추적할 수 AWS KMS 있습니다. 자세한 내용을 알아보려면 *AWS Key Management Service 개발자 안내서*의 [AWS KMS keys모니터링](https://docs.aws.amazon.com/kms/latest/developerguide/monitoring-overview.html)를 참조하세요.

다음 예제는 `CreateGrant`, `GenerateDataKey`, `Decrypt`, `Encrypt` 및 `DescribeKey` 작업에 대한 CloudTrail 로그 항목을 보여줍니다.

**CreateGrant**  
원장을 보호하기 위해 고객 관리형 키를 지정하면 QLDB는 사용자를 대신하여에 KMS 키에 AWS KMS 대한 액세스를 허용하는 `CreateGrant` 요청을 보냅니다. 또한 QLDB는 원장을 삭제할 때 `RetireGrant` 작업을 사용하여 부여한 권한을 제거합니다.  
QLDB가 생성하는 권한 부여는 원장마다 다릅니다. `CreateGrant` 요청에 있는 보안 주체는 테이블을 생성한 사용자입니다.  
`CreateGrant` 작업을 기록하는 이벤트는 다음 예시 이벤트와 유사합니다. 파라미터에는 테이블에 대한 CMK의 Amazon 리소스 이름(ARN), 피부여자 주체 및 삭제 보안 주체(QLDB 서비스), 권한 부여가 적용되는 작업이 포함됩니다.  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AKIAIOSFODNN7EXAMPLE:sample-user",
        "arn": "arn:aws:sts::111122223333:assumed-role/Admin/sample-user",
        "accountId": "111122223333",
        "accessKeyId": "AKIAI44QH8DHBEXAMPLE",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AKIAIOSFODNN7EXAMPLE",
                "arn": "arn:aws:iam::111122223333:role/Admin",
                "accountId": "111122223333",
                "userName": "Admin"
            },
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2021-06-04T21:37:11Z"
            }
        },
        "invokedBy": "qldb.amazonaws.com"
    },
    "eventTime": "2021-06-04T21:40:00Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "CreateGrant",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "qldb.amazonaws.com",
    "userAgent": "qldb.amazonaws.com",
    "requestParameters": {
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "granteePrincipal": "qldb.us-west-2.amazonaws.com",
        "operations": [
            "DescribeKey",
            "GenerateDataKey",
            "Decrypt",
            "Encrypt"
        ],
        "retiringPrincipal": "qldb.us-west-2.amazonaws.com"
    },
    "responseElements": {
        "grantId": "b3c83f999187ccc0979ef2ff86a1572237b6bba309c0ebce098c34761f86038a"
    },
    "requestID": "e99188d7-3b82-424e-b63e-e086d848ed60",
    "eventID": "88dc7ba5-4952-4d36-9ca8-9ab5d9598bab",
    "readOnly": false,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333"
}
```

**GenerateDataKey**  
원장 보호를 위해 고객 관리형 키를 지정하면 QLDB는 고유한 데이터 키를 생성합니다. 원장의 고객 관리형 키를 AWS KMS 지정하는 `GenerateDataKey` 요청을에 보냅니다.  
`GenerateDataKey` 작업을 기록하는 이벤트는 다음 예시 이벤트와 유사합니다. 사용자는 QLDB 서비스 계정입니다. 파라미터에는 고객 관리형 키의 ARN, 32바이트 길이가 필요한 데이터 키 지정자, 내부 키 계층 구조 노드를 식별하는 암호화 컨텍스트가 포함됩니다.  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "qldb.amazonaws.com"
    },
    "eventTime": "2021-06-04T21:40:01Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "GenerateDataKey",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "qldb.amazonaws.com",
    "userAgent": "qldb.amazonaws.com",
    "requestParameters": {
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "numberOfBytes": 32,
        "encryptionContext": {
            "key-hierarchy-node-id": "LY4HWMnkeZWKYi6MlitVJC",
            "key-hierarchy-node-version": "1"
        }
    },
    "responseElements": null,
    "requestID": "786977c9-e77c-467a-bff5-9ad5124a4462",
    "eventID": "b3f082cb-3e75-454e-bf0a-64be13075436",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333",
    "sharedEventID": "26688de5-0b1c-43d3-bc4f-a18029b08446"
}
```

**Decrypt**  
원장에 액세스하면 QLDB는 원장의 암호화된 데이터에 액세스할 수 있도록 원장에 저장된 데이터 키를 해독하는 `Decrypt` 작업을 호출합니다.  
`Decrypt` 작업을 기록하는 이벤트는 다음 예시 이벤트와 유사합니다. 사용자는 QLDB 서비스 계정입니다. 파라미터에는 고객 관리형 키의 ARN과 내부 키 계층 구조 노드를 식별하는 암호화 컨텍스트가 포함됩니다.  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "qldb.amazonaws.com"
    },
    "eventTime": "2021-06-04T21:40:56Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "Decrypt",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "qldb.amazonaws.com",
    "userAgent": "qldb.amazonaws.com",
    "requestParameters": {
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "encryptionAlgorithm": "SYMMETRIC_DEFAULT",
        "encryptionContext": {
            "key-hierarchy-node-id": "LY4HWMnkeZWKYi6MlitVJC",
            "key-hierarchy-node-version": "1"
        }
    },
    "responseElements": null,
    "requestID": "28f2dd18-3cc1-4fe2-82f7-5154f4933ebf",
    "eventID": "603ad5d4-4744-4505-9c21-bd4a6cbd4b20",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333",
    "sharedEventID": "7b6ce3e3-a764-42ec-8f90-5418c97ec411"
}
```

**암호화**  
QLDB는 고객 관리형 키를 사용하여 일반 텍스트를 사이퍼텍스트로 암호화하는 `Encrypt` 작업을 호출합니다.  
`Encrypt` 작업을 기록하는 이벤트는 다음 예시 이벤트와 유사합니다. 사용자는 QLDB 서비스 계정입니다. 파라미터에는 고객 관리형 키의 ARN과 원장의 내부 고유 ID를 지정하는 암호화 컨텍스트가 포함됩니다.  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "qldb.amazonaws.com"
    },
    "eventTime": "2021-06-04T21:40:01Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "Encrypt",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "qldb.amazonaws.com",
    "userAgent": "qldb.amazonaws.com",
    "requestParameters": {
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
        "encryptionContext": {
            "LedgerId": "F6qRNziJLUXA4Vy2ZUv8YY"
        },
        "encryptionAlgorithm": "SYMMETRIC_DEFAULT"
    },
    "responseElements": null,
    "requestID": "b2daca7d-4606-4302-a2d7-5b3c8d30c64d",
    "eventID": "b8aace05-2e37-4fed-ae6f-a45a1c6098df",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333",
    "sharedEventID": "ce420ab0-288e-4b4f-aee8-541e18a28aa5"
}
```

**DescribeKey**  
QLDB는 `DescribeKey` 작업을 호출하여 지정된 KMS 키가 AWS 계정 및 리전에 있는지 확인합니다.  
`DescribeKey` 작업을 기록하는 이벤트는 다음 예시 이벤트와 유사합니다. 보안 주체는 KMS 키를 AWS 계정 지정한의 사용자입니다. 파라미터는 고객 관리형 키의 ARN을 포함합니다.  

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AKIAIOSFODNN7EXAMPLE:sample-user",
        "arn": "arn:aws:sts::111122223333:assumed-role/Admin/sample-user",
        "accountId": "111122223333",
        "accessKeyId": "AKIAI44QH8DHBEXAMPLE",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AKIAIOSFODNN7EXAMPLE",
                "arn": "arn:aws:iam::111122223333:role/Admin",
                "accountId": "111122223333",
                "userName": "Admin"
            },
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2021-06-04T21:37:11Z"
            }
        },
        "invokedBy": "qldb.amazonaws.com"
    },
    "eventTime": "2021-06-04T21:40:00Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "DescribeKey",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "qldb.amazonaws.com",
    "userAgent": "qldb.amazonaws.com",
    "requestParameters": {
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
    },
    "responseElements": null,
    "requestID": "a30586af-c783-4d25-8fda-33152c816c36",
    "eventID": "7a9caf07-2b27-44ab-afe4-b259533ebb88",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333"
}
```