Используя terraform, я могу создать корзину S3 с включенным шифрованием KMS. Но когда я пытаюсь загрузить любой файл из S3 KMS, он не загружается, говоря: Access Denied
Журналы ошибок: -
download failed: s3://services-1234567890-cicd-storage/jars/jdbc-0.211.jar to utilities/jdbc-0.211.jar An error occurred (AccessDenied) when calling the GetObject operation: Access Denied
main.tf
resource "aws_s3_bucket" "s3_bucket_two" {
bucket = "dev-analytics-data"
# bucket = "services-${lookup(var.aws_account_id, terraform.workspace)}-cicd-storage"
acl = "${var.acl}"
versioning {
enabled = "${var.enable_versioning}"
}
server_side_encryption_configuration {
rule {
apply_server_side_encryption_by_default {
kms_master_key_id = "${data.terraform_remote_state.kms_s3.key_arn}"
sse_algorithm = "aws:kms"
}
}
}
}
Используемая политика IAM: -
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::12345678910:role/iam_role_devops_engineer",
"arn:aws:iam:: 12345678910:role/EMR_AutoScaling_DefaultRole",
"arn:aws:iam:: 12345678910:role/EMR_DefaultRole",
"arn:aws:iam:: 12345678910:user/iam_user_cng_jenkins",
"arn:aws:iam:: 12345678910:role/iam_role_sftp",
"arn:aws:iam:: 12345678910:role/iam_role_jenkins_user",
"arn:aws:iam:: 12345678910:role/EMR_EC2_DefaultRole"
]
},
"Action": "s3:GetObject",
"Resource": [
"arn:aws:s3:::services-12345678910-cicd-storage",
"arn:aws:s3:::services-12345678910-cicd-storage/*"
]
}
]
}
Я также пытался загрузить через aws cli, но все равно не получилось.
aws s3 cp --sse aws:kms --sse-kms-key-id arn:aws:kms:eu-central-1:1234567890:key/123asdps-as34-as23-asas-aslkui98393 spark-sql-kinesis_2.11-2.3.1.jar s3://services-1234567890-cicd-storage/tesie_jars/