Какие разрешения нужно добавить в AWS, чтобы активировать ecr:getAuthorizationToken?

Я пытаюсь следуйте инструкциям, чтобы использовать реестр эластичных контейнеров Amazon (ECR), но я застрял на первом этапе, который заключается в получении токена аутентификации.

Команда:

aws ecr get-login

Or...

aws ecr get-login --region=us-west-2

Ошибка:

An error occurred (AccessDeniedException) when calling the GetAuthorizationToken operation: User: arn:aws:iam::9#####4:user/### is not authorized to perform: ecr:GetAuthorizationToken on resource: *

Разрешения AWS для пользователя для региона us-west-2:

AmazonEC2FullAccess
AmazonEC2ContainerRegistryFullAccess
Billing
AdministratorAccess
AmazonECS_FullAccess 

Версия интерфейса командной строки AWS:

aws help --version
aws-cli/1.14.40 Python/3.6.4 Darwin/18.2.0 botocore/1.8.44

person Calicoder    schedule 30.11.2018    source источник
comment
Вы смотрели в фактической документации ошибок? docs.aws.amazon.com/AmazonECR/latest/userguide/   -  person Dvir669    schedule 02.12.2018


Ответы (1)


Обратите внимание, что вы в некотором смысле не разрешаете своему пользователю доступ к ECR. Попробуйте добавить следующую политику для пользователя:

{
"Version": "2012-10-17",
"Statement": [{
    "Effect": "Allow",
    "Action": [
        "ecr:GetAuthorizationToken",
        "ecr:BatchCheckLayerAvailability",
        "ecr:GetDownloadUrlForLayer",
        "ecr:GetRepositoryPolicy",
        "ecr:DescribeRepositories",
        "ecr:ListImages",
        "ecr:DescribeImages",
        "ecr:BatchGetImage"
    ],
    "Resource": "*"
}]
}

https://docs.aws.amazon.com/AmazonECR/latest/userguide/ecr_managed_policies.html#AmazonEC2ContainerRegistryReadOnly

person Dvir669    schedule 01.12.2018