기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
를 사용하여 이상 탐지기 및 그 결과 암호화 AWS KMS
이상 탐지기 데이터는 항상 CloudWatch 로그에서 암호화됩니다. 기본적으로 CloudWatch Logs는 저장 데이터에 서버 측 암호화를 사용합니다. 대신 AWS Key Management Service 를 사용하여 이를 암호화할 수 있습니다. 이렇게 하면 AWS KMS 키를 사용하여 암호화가 수행됩니다. 를 사용한 암호화 AWS KMS 는 KMS 키를 이상 탐지기와 연결하여 이상 탐지기 수준에서 활성화됩니다.
중요
CloudWatch 로그는 대칭 KMS 키만 지원합니다. 비대칭 키를 사용하여 로그 그룹의 데이터를 암호화하지 마세요. 자세한 내용은 대칭 및 비대칭 키 사용을 참조하세요.
Limits
-
다음 단계를 수행하려면
kms:CreateKey
,kms:GetKeyPolicy
및kms:PutKeyPolicy
권한이 있어야 합니다. -
로그 그룹에 키 연결 작업 또는 로그 그룹에서 키 연결 해제 작업이 적용되려면 최대 5분이 소요될 수 있습니다.
-
연결된 키에 대한 CloudWatch 로그 액세스를 취소하거나 연결된 KMS 키를 삭제하면 CloudWatch 로그의 암호화된 데이터를 더 이상 검색할 수 없습니다.
1단계: AWS KMS 키 생성
KMS 키를 생성하려면 다음 create-key 명령을 사용합니다.
aws kms create-key
출력에는 키의 키 ID와 Amazon 리소스 이름(ARN)이 포함됩니다. 다음은 예 출력입니다.
{
"KeyMetadata": {
"Origin": "AWS_KMS",
"KeyId": "key-default-1",
"Description": "",
"KeyManager": "CUSTOMER",
"Enabled": true,
"CustomerMasterKeySpec": "SYMMETRIC_DEFAULT",
"KeyUsage": "ENCRYPT_DECRYPT",
"KeyState": "Enabled",
"CreationDate": 1478910250.94,
"Arn": "arn:aws:kms:us-west-2:123456789012:key/key-default-1",
"AWSAccountId": "123456789012",
"EncryptionAlgorithms": [
"SYMMETRIC_DEFAULT"
]
}
}
2단계: KMS 키에 대한 권한 설정
기본적으로 모든 AWS KMS 키는 프라이빗입니다. 리소스 소유자만 이를 사용하여 데이터를 암호화 및 해독할 수 있습니다. 그러나 리소스 소유자는 다른 사용자 및 리소스에 KMS 키에 액세스할 수 있는 권한을 부여할 수 있습니다. 이 단계에서는 CloudWatch Logs 서비스 보안 주체에게 키를 사용할 수 있는 권한을 부여합니다. 이 서비스 보안 주체는 KMS 키가 저장된 리전과 동일한 AWS 리전에 있어야 합니다.
가장 좋은 방법은 KMS 키 사용을 지정한 AWS 계정 또는 이상 탐지기로만 제한하는 것입니다.
먼저 다음 get-key-policy 명령을 policy.json
사용하여 KMS 키의 기본 정책을 로 저장합니다.
aws kms get-key-policy --key-id
key-id
--policy-name default --output text > ./policy.json
텍스트 편집기에서 policy.json
파일을 열고 다음 설명 중 하나에서 굵은 글꼴로 표시된 섹션을 추가합니다. 기존 설명과 새 설명을 쉼표로 구분합니다. 이러한 문은 Condition
섹션을 사용하여 AWS KMS 키의 보안을 강화합니다. 자세한 내용은 AWS KMS 키 및 암호화 컨텍스트 단원을 참조하십시오.
이 예제의 Condition
섹션에서는 AWS KMS 키 사용을 지정된 계정으로 제한하지만 모든 이상 탐지기에서 사용할 수 있습니다.
{ "Version": "2012-10-17", "Id": "key-default-1", "Statement": [ { "Sid": "Enable IAM User Permissions", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
Your_account_ID
:root" }, "Action": "kms:*", "Resource": "*" }, { "Effect": "Allow", "Principal": { "Service": "logs.REGION
.amazonaws.com" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "ArnLike": { "kms:EncryptionContext:aws:logs:arn": "arn:aws:logs:REGION
:Your_account_ID
:anomaly-detector:*" } } }, { "Effect": "Allow", "Principal": { "Service": "logs.REGION
.amazonaws.com" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "ArnLike": { "kms:EncryptionContext:aws-crypto-ec:aws:logs:arn": "arn:aws:logs:REGION
:Your_account_ID
:anomaly-detector:*" } } } ] }
마지막으로 다음 put-key-policy 명령을 사용하여 업데이트된 정책을 추가합니다.
aws kms put-key-policy --key-id
key-id
--policy-name default --policy file://policy.json
3단계: KMS 키를 이상 탐지기와 연결
콘솔에서 KMS 키를 생성하거나 AWS CLI 또는 를 사용하여 키를 이상 탐지기와 연결할 수 있습니다APIs.
4단계: 이상 탐지기에서 키 연결 해제
키가 이상 탐지기와 연결된 후에는 키를 업데이트할 수 없습니다. 키를 제거하는 유일한 방법은 이상 탐지기를 삭제한 다음 다시 생성하는 것입니다.