As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
AWS CodeArtifact referência de permissões
AWS CodeArtifact recursos e operações
Em AWS CodeArtifact, o recurso principal é um domínio. Em uma política, você usa um Amazon Resource Name (ARN) para identificar o recurso a que a política se aplica. Os repositórios também são recursos e têm ARNs a eles associados. Para obter mais informações, consulte Nomes de recurso da Amazon (ARNs) no Referência geral da Amazon Web Services.
Tipo de recurso | Formato ARN |
---|---|
Domínio |
|
Repositório |
|
Package group |
|
Pacote com namespace |
|
Pacote sem namespace |
|
Todos os CodeArtifact recursos |
|
Todos os CodeArtifact recursos pertencentes à conta especificada na região especificada da AWS |
|
O ARN de recurso que você especifica depende a qual ação ou ações deseja controlar o acesso.
É possível indicar um domínio específico (myDomain
) em sua instrução usando o respectivo ARN, da seguinte maneira.
"Resource": "arn:aws:codeartifact:
us-east-2
:123456789012
:domain/myDomain
"
É possível indicar um repositório específico (myRepo
) em sua instrução usando o ARN dele da seguinte maneira.
"Resource": "arn:aws:codeartifact:
us-east-2
:123456789012
:domain/myDomain
/myRepo
"
Para especificar vários recursos em uma única instrução, separe seus ARNs com vírgulas. A instrução a seguir se aplica a todos os pacotes e repositórios em um domínio específico.
"Resource": [ "arn:aws:codeartifact:
us-east-2
:123456789012
:domain/myDomain
", "arn:aws:codeartifact:us-east-2
:123456789012
:repository/myDomain
/*", "arn:aws:codeartifact:us-east-2
:123456789012
:package/myDomain
/*" ]
nota
Muitos AWS serviços tratam dois pontos (:) ou uma barra invertida (/) como o mesmo caractere em ARNs. No entanto, CodeArtifact usa uma correspondência exata nos padrões e regras dos recursos. Certifique-se de usar os caracteres corretos ao criar padrões de evento, de modo que eles correspondam à sintaxe ARN no recurso.
AWS CodeArtifact Operações e permissões de API
Use a tabela a seguir como uma referência ao configurar o controle de acesso e escrever políticas de permissões que você pode anexar a uma identidade do IAM (políticas baseadas em identidade).
Você pode usar chaves AWS de condição abrangentes em suas AWS CodeArtifact políticas para expressar condições. Para obter uma lista, consulte Referência de elementos de política JSON do IAM no Guia do usuário do IAM.
Você especifica as ações no campo Action
das políticas. Para especificar uma ação, use o prefixo codeartifact:
seguido pelo nome da operação API (por exemplo, codeartifact:CreateDomain
e codeartifact:AssociateExternalConnection
). Para especificar várias ações em uma única declaração, separe-as com vírgulas (por exemplo, "Action": [
"codeartifact:CreateDomain", "codeartifact:AssociateExternalConnection" ]
).
Usando caracteres curinga
Você especifica um ARN, com ou sem um caractere curinga (*), como o valor do recurso no campo Resource
das políticas. Você pode usar um curinga para especificar várias ações ou recursos. Por exemplo, codeartifact:*
especifica todas as CodeArtifact ações e codeartifact:Describe*
especifica todas as CodeArtifact ações que começam com a palavra. Describe
AWS CodeArtifact Operações de API | Permissões obrigatórias (ações de API) | Recursos |
---|---|---|
AssociateExternalConnection |
Necessário para adicionar uma conexão externa a um repositório. |
|
CopyPackageVersions |
Para copiar versões de pacotes de um repositório de origem para um repositório de destino:
Obrigatório no repositório de destino.
Obrigatório no repositório de origem. |
|
CreateDomain |
Obrigatório para criar domínios.
Obrigatório na chave KMS fornecida ao especificar uma |
|
CreatePackageGroup |
Necessário para criar grupos de pacotes. |
|
CreateRepository |
Obrigatório para criar repositórios.
Obrigatório em um repositório para que possa ser adicionado como um repositório upstream aos repositórios downstream. |
|
DeleteDomain |
Obrigatório para excluir domínios. |
|
DeleteDomainPermissionsPolicy |
Obrigatório para excluir uma política de recursos do domínio. |
|
DeletePackage |
Obrigatório para excluir um pacote. |
|
DeletePackageGroup |
Necessário para excluir um grupo de pacotes. |
|
DeletePackageVersions |
Obrigatório para excluir versões de um pacote. |
|
DeleteRepository |
Obrigatório para excluir um repositório. |
|
DeleteRepositoryPermissionsPolicy |
Obrigatório para excluir uma política de recursos do repositório. |
|
DescribeDomain |
Obrigatório para obter informações sobre um domínio. |
|
DescribePackage |
Obrigatório para obter informações sobre um pacote. |
|
DescribePackageGroup |
Necessário para obter informações sobre um grupo de pacotes. |
|
DescribePackageVersion |
Obrigatório para obter informações sobre a versão de um pacote. |
|
DescribeRepository |
Obrigatório para obter informações sobre um repositório. |
|
DisassociateExternalConnection |
Obrigatório para remover uma conexão externa de um repositório. |
|
DisposePackageVersions |
Obrigatório para descartar versões de um pacote. |
|
GetAssociatedPackageGroup |
Necessário para obter o grupo de pacotes associado a um pacote. |
|
GetAuthorizationToken |
Obrigatório para obter um token de autorização temporário para acessar repositórios. |
|
GetDomainPermissionsPolicy |
Obrigatório para obter uma política de recursos de domínio. |
|
GetPackageVersionAsset |
Obrigatório para obter ativos em uma versão de pacote. |
arn:aws:codeartifact: |
GetPackageVersionReadme |
Obrigatório para obter o leiame de uma versão do pacote. |
|
GetRepositoryEndpoint |
Obrigatório para obter um endpoint do repositório. |
|
GetRepositoryPermissionsPolicy |
Obrigatório para obter uma política de recursos do repositório. |
|
ListAssociatedPackages |
Obrigatório para retornar uma lista de pacotes associados a um grupo de pacotes. |
|
ListDomains |
Obrigatório para retornar uma lista paginada de domínios em uma conta da AWS. |
|
ListPackageGroups |
Obrigatório para retornar uma lista paginada de grupos de pacotes em um domínio. |
|
ListPackages |
Obrigatório para retornar uma lista paginada de pacotes em um repositório. |
|
ListPackageVersionAssets |
Obrigatório para retornar uma lista paginada de ativos em uma versão de pacote. |
|
ListPackageVersionDependencies |
Obrigatório para retornar uma lista paginada das dependências em uma versão de pacote. |
|
ListPackageVersions |
Obrigatório para retornar uma lista paginada de versões de pacotes em um repositório. |
|
ListRepositories |
Obrigatório para retornar uma lista paginada de repositórios em uma conta da AWS. |
|
ListRepositoriesInDomain |
Obrigatório para retornar uma lista paginada de repositórios em um domínio. |
|
ListSubPackageGroups |
Obrigatório para devolver uma lista de grupos diretos de pacotes secundários de um grupo de pacotes. |
|
ListTagsForResource |
Obrigatório para listar tags de um recurso específico. |
|
PublishPackageVersion |
Obrigatório para publicar uma versão do pacote em um repositório. |
|
PutDomainPermissionsPolicy |
Obrigatório para adicionar uma política de recursos a um domínio. |
|
PutPackageMetadata |
Obrigatório para publicar versões do pacote Maven em um repositório ou para adicionar ou remover tags npm das versões do pacote npm. |
|
PutPackageOriginConfiguration |
Obrigatório para atualizar a configuração de origem de um pacote. |
|
PutRepositoryPermissionsPolicy |
Obrigatório para adicionar uma política de recursos a um repositório. |
|
ReadFromRepository |
Obrigatório para ler de um repositório usando um cliente de gerenciador de pacotes. |
|
TagResource |
Obrigatório para marcar um recurso. |
|
UntagResource |
Obrigatório para remover uma tag de um recurso. |
|
UpdatePackageGroup |
Necessário para atualizar um grupo de pacotes. |
|
UpdatePackageGroupOriginConfiguration |
Necessário para atualizar a configuração de origem de um grupo de pacotes. |
|
UpdatePackageVersionsStatus |
Obrigatório para alterar o status de uma versão do pacote. |
|
UpdateRepository |
Obrigatório para atualizar a descrição ou as conexões upstream de um repositório. Consulte Modificar a configuração upstream de um repositório ou UpdateRepositoryno Guia da CodeArtifact API para obter mais informações.
Obrigatório em um repositório para que possa ser adicionado como um repositório upstream aos repositórios downstream. |
|
Grupo de pacotes ARnS
nota
Esta seção sobre como os ARNs do grupo de pacotes e a codificação de padrões é informativa. É recomendável copiar ARNs do console ou buscar ARNs usando a DescribePackageGroup
API em vez de codificar padrões e construir ARNs.
As políticas do IAM usam o caractere curinga,*
, para combinar várias ações do IAM ou vários recursos. Os padrões de grupos de pacotes também usam o *
caractere. Para criar com mais facilidade políticas do IAM que correspondam a um único grupo de pacotes, o formato ARN do grupo de pacotes usa uma versão codificada do padrão de grupo de pacotes.
Especificamente, o formato ARN do grupo de pacotes é o seguinte:
arn:aws:codeartifact:
region
:account-ID
:package-group/my_domain
/encoded_package_group_pattern
Onde o padrão de grupo de pacotes codificado é o padrão de grupo de pacotes, com certos caracteres especiais substituídos por seus valores codificados em porcentagem. A lista a seguir contém os caracteres e seus valores correspondentes codificados em porcentagem:
*
:%2a
$
:%24
%
:%25
Por exemplo, o ARN de um grupo de pacotes raiz de um domínio, (/*
), seria:
arn:aws:codeartifact:
us-east-1
:111122223333
:package-group/my_domain
/%2a
Observe que os caracteres não incluídos na lista não podem ser codificados e os ARNs diferenciam maiúsculas de minúsculas, portanto, *
devem ser codificados como ou não. %2a
%2A