Permissões de extração entre contas ECR

1

Temos duas contas da AWS. A conta A tem repositórios ECR e a conta B deve ser capaz de extrair deles.

Eu tentei configurar as declarações de permissão do repositório na Conta A para permitir a extração da Conta B, mas a AWS alega que minha política não é válida.

Eu tentei:

  • Definir o principal como o número da conta da Conta B. Isso resulta no erro Your permission statements have one or more invalid parameters. Invalid parameter at 'PolicyText' failed to satisfy constraint: 'Invalid repository policy provided'
  • Definindo o principal para o ARN do usuário raiz na Conta B ( arn:aws:iam::1234567891011:root ). Isso resulta no erro The service name arn:aws:iam::1234567891011:root is invalid. A valid service name format is [service].amazonaws.com.
  • Definindo o principal para o ARN de um usuário do IAM na Conta B. O mesmo erro acima.

As etapas acima foram feitas por meio do console da AWS, que não permite editar o JSON diretamente para as permissões do ECR. Eu tentei o comando da CLI aws ecr set-repository-policy com as alterações acima, mas os mesmos erros foram retornados no terminal.

A adição de permissões para usuários do IAM na mesma conta funciona bem.

As ações que tentei adicionar na política são:

        "Action": [
            "ecr:BatchGetImage",
            "ecr:GetDownloadUrlForLayer",
            "ecr:GetRepositoryPolicy",
            "ecr:ListImages",
            "ecr:DescribeRepositories"
        ]

Alguma idéia do que eu posso estar fazendo errado?

    
por Amandil 15.02.2018 / 15:04

1 resposta

0

Você precisa configurar uma função de conta cruzada para que a Conta b assuma.

Crie a função de conta cruzada na conta que possui o Registro, A, que dá acesso ao registro na função. E dê à Conta B as permissões para assumir essa função.

link

link

    
por 16.02.2018 / 15:45