# KMS 키

## 리소스 유형

`AWS.KMS.Key`

## 리소스 ID 형식

KMS 키의 경우 리소스 ID는 ARN입니다.

`arn:aws:kms:us-west-2:123456789012:key/1`

## 배경

KMS는 AWS의 다양한 서비스 전반과 애플리케이션 내에서 사용할 암호화 키를 생성하고 관리하는 서비스입니다.

## 필드

| 필드                   | 유형    | 설명                                  |
| -------------------- | ----- | ----------------------------------- |
| `KeyRotationEnabled` | `불리언` | 이 KMS 키에 대해 키 순환이 활성화되어 있는 경우       |
| `Policy`             | `문자열` | 이 키에 대한 접근 권한이 무엇인지 나타내는 JSON 정책 문서 |

## 예시

```javascript
{
    "AccountId": "123456789012",
    "Arn": "arn:aws:kms:us-west-2:123456789012:key/1",
    "CloudHsmClusterId": null,
    "CustomKeyStoreId": null,
    "DeletionDate": null,
    "Description": "다른 키가 정의되어 있지 않을 때 내 ACM 프라이빗 키를 보호하는 기본 마스터 키",
    "Enabled": true,
    "EncryptionAlgorithms": null,
    "ExpirationModel": null,
    "Id": "1",
    "KeyManager": "AWS",
    "KeyRotationEnabled": null,
    "KeySpec": "SYMMETRIC_DEFAULT",
    "KeyState": "Enabled",
    "KeyUsage": "ENCRYPT_DECRYPT",
    "MacAlgorithms": null,
    "MultiRegion": true,
    "MultiRegionConfiguration": {
	"MultiRegionKeyType": "PRIMARY",
	"PrimaryKey": {
		"Arn": "arn:aws:kms:us-west-2:123456789012:key/1",
		"Region": "us-west-2"
	},
	"ReplicaKeys": null
    },
    "Origin": "AWS_KMS",
    "PendingDeletionWindowInDays": null,
    "Policy": "{\n  \"Version\" : \"2012-10-17\",\n  \"Id\" : \"auto-acm-3\",\n  \"Statement\" : [ {\n    \"Sid\" : \"복호화 권한 생성을 허용\",\n    \"Effect\" : \"Allow\",\n    \"Principal\" : {\n      \"AWS\" : \"*\"\n    },\n    \"Action\" : \"kms:CreateGrant\",\n    \"Resource\" : \"*\",\n    \"Condition\" : {\n      \"StringEquals\" : {\n        \"kms:CallerAccount\" : \"123456789012\",\n        \"kms:ViaService\" : \"acm.us-east-1.amazonaws.com\"\n      },\n      \"ForAllValues:StringEquals\" : {\n        \"kms:GrantOperations\" : \"Decrypt\"\n      },\n      \"Bool\" : {\n        \"kms:GrantIsForAWSResource\" : \"true\"\n      }\n    }\n  }, {\n    \"Sid\" : \"암호화 권한 생성을 허용\",\n    \"Effect\" : \"Allow\",\n    \"Principal\" : {\n      \"AWS\" : \"*\"\n    },\n    \"Action\" : \"kms:CreateGrant\",\n    \"Resource\" : \"*\",\n    \"Condition\" : {\n      \"StringEquals\" : {\n        \"kms:CallerAccount\" : \"123456789012\",\n        \"kms:ViaService\" : \"acm.us-east-1.amazonaws.com\"\n      },\n      \"ForAllValues:StringEquals\" : {\n        \"kms:GrantOperations\" : [ \"Encrypt\", \"ReEncryptFrom\", \"ReEncryptTo\" ]\n      },\n      \"Bool\" : {\n        \"kms:GrantIsForAWSResource\" : \"true\"\n      }\n    }\n  }, {\n    \"Sid\" : \"키 소유자에게 허용된 작업\",\n    \"Effect\" : \"Allow\",\n    \"Principal\" : {\n      \"AWS\" : \"*\"\n    },\n    \"Action\" : [ \"kms:DescribeKey\", \"kms:ListGrants\", \"kms:RevokeGrant\", \"kms:GetKeyPolicy\" ],\n    \"Resource\" : \"*\",\n    \"Condition\" : {\n      \"StringEquals\" : {\n        \"kms:CallerAccount\" : \"123456789012\"\n      }\n    }\n  }, {\n    \"Sid\" : \"다른 키로의 재암호화 거부\",\n    \"Effect\" : \"Deny\",\n    \"Principal\" : {\n      \"AWS\" : \"*\"\n    },\n    \"Action\" : \"kms:ReEncrypt*\",\n    \"Resource\" : \"*\",\n    \"Condition\" : {\n      \"Bool\" : {\n        \"kms:ReEncryptOnSameKey\" : \"false\"\n      }\n    }\n  } ]\n}",
    "Region": "us-west-2",
    "ResourceId": "arn:aws:kms:us-west-2:123456789012:key/1",
    "ResourceType": "AWS.KMS.Key",
    "SigningAlgorithms": null,
    "Tags": null,
    "TimeCreated": "2019-01-01T00:00:00.000Z",
    "ValidTo": null
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.panther.com/ko/cloud-scanning/cloud-resource-attributes/aws/kms-key.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
