Задача не может получить доступ к файлу среды, хранящемуся в корзине Amazon S3

#amazon-web-services #amazon-s3 #amazon-iam #amazon-ecs

Вопрос:

Я создал кластер ECS с определением задачи и службой из этого определения задачи. Как вы можете видеть на следующем рисунке, я добавил файл среды в определение контейнера (хранится в Amazon S3).:

введите описание изображения здесь

Этот файл является частным, поэтому мне нужно добавить некоторые политики в роль задачи и роль выполнения задачи (я использую одну и ту же роль в обоих случаях, потому что у меня еще не очень четкое различие между ними). Здесь вы можете увидеть определение задачи, назначенные роли:

введите описание изображения здесь

К этой роли добавляются следующие политики:

 {
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "s3:GetBucketLocation",
            "Resource": "*"
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::*"
        },
        {
            "Sid": "VisualEditor2",
            "Effect": "Allow",
            "Action": "s3:ListAllMyBuckets",
            "Resource": "*"
        },
        {
            "Sid": "VisualEditor3",
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": "arn:aws:s3:::badger-next"
        }
    ]
}
 

И:

 {
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ecr:GetAuthorizationToken",
                "ecr:BatchCheckLayerAvailability",
                "ecr:GetDownloadUrlForLayer",
                "ecr:BatchGetImage",
                "logs:CreateLogStream",
                "logs:PutLogEvents"
            ],
            "Resource": "*"
        }
    ]
}
 

Несмотря на то, что это сделано, я все еще вижу эту ошибку, когда служба пытается загрузить новые экземпляры:

введите описание изображения здесь

Что я здесь упускаю?

Комментарии:

1. Чтобы предоставить разрешения объектам внутри корзины, а не самой корзине, вам необходимо использовать arn:aws:s3:::badger-next/*

2. Я пробовал и не получается. Я даже пробовал использовать «*», но результат тот же.