翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
を使用して異常ディテクターとその結果を暗号化する AWS KMS
CloudWatch Logs では、異常検出データは常に暗号化されます。デフォルトでは、CloudWatch Logs は保管中のデータに対してサーバー側の暗号化を使用します。別の方法として、この暗号化には AWS Key Management Service を使用できます。その場合、暗号化は AWS KMS キーを使用して行われます。を使用した暗号化 AWS KMS は、KMS キーを異常ディテクターに関連付けることで、異常ディテクターレベルで有効になります。
重要
CloudWatch Logs は、対称 KMS キーのみをサポートします。非対称キーを使用してロググループのデータを暗号化しないでください。詳細については、「対称キーと非対称キーの使用」を参照してください。
制限
-
以下の手順を実行するには、
kms:CreateKey
、kms:GetKeyPolicy
、およびkms:PutKeyPolicy
アクセス許可が必要です。 -
キーと異常ディテクターを関連付けるか、あるいは関連付けを解除すると、オペレーションが有効になるまで最大 5 分かかることがあります。
-
関連付けられたキーへの CloudWatch Logs のアクセスを取り消したり、関連付けられた KMS キーを削除した場合、CloudWatch Logs 内の暗号化されたデータを取得できなくなります。
ステップ 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 キーはプライベートです。リソースの所有者のみがその CMK を使用してデータを暗号化および復号できます。ただし、リソース所有者は、他のユーザーとリソースに KMS キーへのアクセス許可を付与することができます。このステップでは、CloudWatch Logs サービスプリンシパルに、キーを使用するアクセス許可を付与します。このサービスプリンシパルは、KMS キーが保存されているリージョンと同じ AWS リージョンに存在する必要があります。
ベストプラクティスとして、KMS キーの使用は、指定した AWS アカウントまたは異常ディテクターのみに制限することをお勧めします。
まず、get-key-policy コマンドを使用して、KMS キーのデフォルトポリシーを policy.json
として保存します。
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: 異常ディテクターからキーの関連付けを解除する
キーが異常ディテクターに関連付けられていると、キーを更新できません。キーを削除する唯一の方法は、異常ディテクターを削除してから再作成することです。