У меня есть кросс-аккаунт, которому нужен доступ к корзине (точнее, к папке), когда я применяю это в terraform, я получаю сообщение об ошибке, может кто-нибудь сообщить мне, в чем заключается ошибка в этой политике
Я пытаюсь написать s3 acl policy.У пользователя должны быть только разрешения на folder1 внутри корзины.
укажите, пожалуйста, как использовать условие (у меня есть AccountA-CanonicalUserID) и имя пользователя
resource "aws_s3_bucket_policy" "policy" {
bucket = "${aws_s3_bucket.xxx.id}"
policy = <<POLICY
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "MicrositesLogs",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::xxx:user/user1"
},
"Action": [
"s3:PutObject",
"s3:GetObject"
],
"Resource": "arn:aws:s3:::xxxx/folder1/*",
"Condition": {
"StringEquals": {
"s3:x-amz-grant-full-control": "id=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
}
}
]
}
POLICY
}
Ошибка: ошибка при применении плана:
1 ошибка (и)произошло:
aws_s3_bucket_policy.policy: 1 произошла ошибка:
aws_s3_bucket_policy.policy: ошибка при установке политики S3: MalformedPolicy: условия выполняютсяне применяется к комбинации действий и ресурсов в коде состояния оператора: 400, идентификатор запроса: 84C92DAD0C9AC0FB, идентификатор хоста: rvg7fqFDXdigCHPLLM / FXtOTXJXGKXSN9eQNRBZdkd0GrGRzis9ZkJu1Kkyu896RUvOxQ *
1020 * 820 * 8207