

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

# KMS 키의 과거 사용 결정
<a name="deleting-keys-determining-usage"></a>

KMS 키를 삭제하기 전에 해당 키로 암호화된 사이퍼텍스트 수를 알고 싶을 수 있습니다. AWS KMS 는이 정보를 저장하지 않으며 사이퍼텍스트도 저장하지 않습니다. 과거에 KMS 키가 어떻게 사용되었는지 알면 향후에 필요할지 그렇지 않을지 결정하는 데 도움이 될 수 있습니다. 이 주제에서는 KMS 키의 과거 용도를 파악하는 데 도움이 될 수 있는 몇 가지 전략을 소개합니다.

**주의**  
과거 및 실제 사용량을 결정하기 위한 이러한 전략은 AWS 사용자 및 AWS KMS 운영에만 유효합니다. AWS KMS외부에서의 비대칭 KMS 키의 퍼블릭 키의 사용을 감지할 수 없습니다. 암호를 해독할 수 없는 암호화 텍스트를 만드는 등 퍼블릭 키 암호화에 사용되는 비대칭 KMS 키를 삭제할 때의 특별한 위험에 대한 자세한 내용은 [Deleting asymmetric KMS keys](deleting-keys.md#deleting-asymmetric-cmks) 단원을 참조하십시오.

**Topics**
+ [KMS 키 권한 확인을 통해 사용 가능 범위 파악](#deleting-keys-usage-key-permissions)
+ [AWS CloudTrail 로그를 검사하여 실제 사용량 확인](#deleting-keys-usage-cloudtrail)

## KMS 키 권한 확인을 통해 사용 가능 범위 파악
<a name="deleting-keys-usage-key-permissions"></a>

어떤 사람 또는 항목이 현재 KMS 키에 액세스할 수 있는지 파악하면 KMS 키가 어느 정도 범위에서 사용되었는지, 앞으로도 계속 필요할지 판단하는 데 도움이 될 수 있습니다. 현재 어떤 사람 또는 대상이 KMS 키에 액세스할 수 있는지 파악하는 방법을 알아보려면 [에 대한 액세스 결정 AWS KMS keys](determining-access.md) 단원을 참조하십시오.

## AWS CloudTrail 로그를 검사하여 실제 사용량 확인
<a name="deleting-keys-usage-cloudtrail"></a>

KMS 키 사용 내역을 이용하면 특정 KMS 키로 암호화가 암호화되었는지 판단하는 데 도움이 될 수 있습니다.

모든 AWS KMS API 활동은 AWS CloudTrail 로그 파일에 기록됩니다. KMS 키가 위치한 리전에서 [ CloudTrail 추적을 생성한](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html) 경우 CloudTrail 로그 파일을 검사하여 특정 KMS 키에 대한 모든 AWS KMS API 활동의 기록을 볼 수 있습니다. 추적이 없는 경우에도 [CloudTrail 이벤트 기록](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html)에서 최근 이벤트를 볼 수 있습니다. 에서 CloudTrail을 AWS KMS 사용하는 방법에 대한 자세한 내용은 섹션을 참조하세요[를 사용하여 AWS KMS API 호출 로깅 AWS CloudTrail](logging-using-cloudtrail.md).

다음 예에서는 Amazon Simple Storage Service(Amazon S3)에 저장된 객체를 보호하는 용도로 KMS 키를 사용할 때 생성되는 CloudTrail 로그 항목을 보여 줍니다. 이 예에서 객체는 [KMS 키를 사용한 서버 측 암호화(SSE-KMS) 데이터 보호 기능](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html)을 사용하여 Amazon S3에 업로드됩니다. SSE-KMS를 사용하여 Amazon S3에 객체를 업로드할 때 객체를 보호하는 데 사용할 KMS 키를 지정합니다. Amazon S3는 작업을 사용하여 객체에 AWS KMS [https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html) 대한 고유한 데이터 키를 요청하며,이 요청 이벤트는 다음과 유사한 항목과 함께 CloudTrail에 로깅됩니다.

```
{
  "eventVersion": "1.02",
  "userIdentity": {
    "type": "AssumedRole",
    "principalId": "AROACKCEVSQ6C2EXAMPLE:example-user",
    "arn": "arn:aws:sts::111122223333:assumed-role/Admins/example-user",
    "accountId": "111122223333",
    "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "sessionContext": {
      "attributes": {
        "mfaAuthenticated": "false",
        "creationDate": "2015-09-10T23:12:48Z"
      },
      "sessionIssuer": {
        "type": "Role",
        "principalId": "AROACKCEVSQ6C2EXAMPLE",
        "arn": "arn:aws:iam::111122223333:role/Admins",
        "accountId": "111122223333",
        "userName": "Admins"
      }
    },
    "invokedBy": "internal.amazonaws.com"
  },
  "eventTime": "2015-09-10T23:58:18Z",
  "eventSource": "kms.amazonaws.com",
  "eventName": "GenerateDataKey",
  "awsRegion": "us-west-2",
  "sourceIPAddress": "internal.amazonaws.com",
  "userAgent": "internal.amazonaws.com",
  "requestParameters": {
    "encryptionContext": {"aws:s3:arn": "arn:aws:s3:::example_bucket/example_object"},
    "keySpec": "AES_256",
    "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
  },
  "responseElements": null,
  "requestID": "cea04450-5817-11e5-85aa-97ce46071236",
  "eventID": "80721262-21a5-49b9-8b63-28740e7ce9c9",
  "readOnly": true,
  "resources": [{
    "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "accountId": "111122223333"
  }],
  "eventType": "AwsApiCall",
  "recipientAccountId": "111122223333"
}
```

나중에 Amazon S3에서이 객체를 다운로드하면 Amazon S3는 지정된 KMS 키를 사용하여 객체의 데이터 키를 해독 AWS KMS 하라는 `Decrypt` 요청을에 보냅니다. 이렇게 하면 CloudTrail 로그 파일에 다음과 비슷한 항목이 포함됩니다.

```
{
  "eventVersion": "1.02",
  "userIdentity": {
    "type": "AssumedRole",
    "principalId": "AROACKCEVSQ6C2EXAMPLE:example-user",
    "arn": "arn:aws:sts::111122223333:assumed-role/Admins/example-user",
    "accountId": "111122223333",
    "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "sessionContext": {
      "attributes": {
        "mfaAuthenticated": "false",
        "creationDate": "2015-09-10T23:12:48Z"
      },
      "sessionIssuer": {
        "type": "Role",
        "principalId": "AROACKCEVSQ6C2EXAMPLE",
        "arn": "arn:aws:iam::111122223333:role/Admins",
        "accountId": "111122223333",
        "userName": "Admins"
      }
    },
    "invokedBy": "internal.amazonaws.com"
  },
  "eventTime": "2015-09-10T23:58:39Z",
  "eventSource": "kms.amazonaws.com",
  "eventName": "Decrypt",
  "awsRegion": "us-west-2",
  "sourceIPAddress": "internal.amazonaws.com",
  "userAgent": "internal.amazonaws.com",
  "requestParameters": {
    "encryptionContext": {"aws:s3:arn": "arn:aws:s3:::example_bucket/example_object"}},
  "responseElements": null,
  "requestID": "db750745-5817-11e5-93a6-5b87e27d91a0",
  "eventID": "ae551b19-8a09-4cfc-a249-205ddba330e3",
  "readOnly": true,
  "resources": [{
    "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
    "accountId": "111122223333"
  }],
  "eventType": "AwsApiCall",
  "recipientAccountId": "111122223333"
}
```

모든 AWS KMS API 활동은 CloudTrail에서 로깅됩니다. 이러한 로그 항목을 평가하여 특정 KMS 키의 과거 사용량을 파악할 수 있고, 이렇게 하면 해당 항목을 삭제할지 말지 결정하는 데 도움이 될 수 있습니다.

CloudTrail 로그 파일에 AWS KMS API 활동이 표시되는 방법에 대한 추가 예제를 보려면 단원을 참조하십시오[를 사용하여 AWS KMS API 호출 로깅 AWS CloudTrail](logging-using-cloudtrail.md). CloudTrail에 대한 자세한 내용은 [AWS CloudTrail 사용 설명서](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/)를 참조하십시오.