in src/lib/utils.ts [39:63]
export function grantKmsKeyPerm(key: IKey, logGroupName: string): void {
key.addToResourcePolicy(new PolicyStatement({
principals: [new ServicePrincipal('logs.amazonaws.com')],
actions: [
'kms:Encrypt*',
'kms:ReEncrypt*',
'kms:Decrypt*',
'kms:GenerateDataKey*',
'kms:Describe*',
],
resources: [
'*',
],
conditions: {
ArnLike: {
'kms:EncryptionContext:aws:logs:arn': Arn.format({
service: 'logs',
resource: 'log-group',
resourceName: logGroupName,
arnFormat: ArnFormat.COLON_RESOURCE_NAME,
}, Stack.of(key)),
},
},
}));
}