Ações, recursos e chaves de condição do AWS CodeArtifact - Referência de autorização do serviço

Ações, recursos e chaves de condição do AWS CodeArtifact

O AWS CodeArtifact (prefixo de serviço: codeartifact) fornece os seguintes recursos, ações e chaves de contexto de condição específicos do serviço para uso em políticas de permissão do IAM.

Referências:

Ações definidas pelo AWS CodeArtifact

Você pode especificar as seguintes ações no elemento Action de uma declaração de política do IAM. Use políticas para conceder permissões para executar uma operação na AWS. Quando usa uma ação em uma política, você geralmente permite ou nega acesso à operação da API ou ao comando da CLI com o mesmo nome. No entanto, em alguns casos, uma única ação controla o acesso a mais de uma operação. Como alternativa, algumas operações exigem várias ações diferentes.

A coluna Resource types (Tipos de recursos) indica se cada ação é compatível com permissões no nível do recurso. Se não houver valor para essa coluna, você deverá especificar todos os recursos ("*") no elemento Resource de sua declaração de política. Se a coluna incluir um tipo de recurso, você poderá especificar um ARN desse tipo em uma declaração com essa ação. Os recursos obrigatórios são indicados na tabela com um asterisco (*). Se você especificar um ARN de permissão no nível do recurso em uma instrução que esteja usando essa ação, ele deverá ser desse tipo. Algumas ações oferecem suporte a vários tipos de recursos. Se o tipo de recurso for opcional (não indicado como obrigatório), você poderá optar por usar um, mas não o outro.

Para obter detalhes sobre as colunas na tabela a seguir, consulte Tabela de ações.

Ações Descrição Nível de acesso Tipos de recursos (*necessários) Chaves de condição Ações dependentes
AssociateExternalConnection Concede permissão para adicionar uma conexão externa a um repositório Write

repository*

AssociateWithDownstreamRepository Concede permissão para associar um repositório existente como um repositório upstream a outro repositório Write

repository*

CopyPackageVersions Concede permissão para copiar versões de pacotes de um repositório para outro no mesmo domínio Write

package*

repository*

CreateDomain Concede permissão para criar um domínio Write

aws:RequestTag/${TagKey}

aws:TagKeys

CreateRepository Concede permissão para criar um repositório Write

aws:RequestTag/${TagKey}

aws:TagKeys

DeleteDomain Concede permissão para excluir um domínio Write

domain*

DeleteDomainPermissionsPolicy Concede permissão para excluir o conjunto de políticas de recursos em um domínio Permissions management

domain*

DeletePackageVersions Concede permissão para excluir versões de pacote Write

package*

DeleteRepository Concede permissão para excluir um repositório Write

repository*

DeleteRepositoryPermissionsPolicy Concede permissão para excluir o conjunto de políticas de recursos em um repositório Permissions management

repository*

DescribeDomain Concede permissão para retornar informações sobre um domínio Read

domain*

DescribePackage Concede permissão para recuperar informações sobre um pacote Read

package*

DescribePackageVersion Concede permissão para retornar informações sobre uma versão de pacote Read

package*

DescribeRepository Concede permissão para retornar informações detalhadas sobre um repositório Read

repository*

DisassociateExternalConnection Concede permissão para desassociar uma conexão externa de um repositório Write

repository*

DisposePackageVersions Concede permissão para definir o status de versões de pacote como Descartado e excluir os respectivos ativos Write

package*

GetAuthorizationToken Concede permissão para gerar um token de autenticação temporário para acessar repositórios em um domínio Read

domain*

GetDomainPermissionsPolicy Concede permissão para retornar a política de recursos de um domínio Read

domain*

GetPackageVersionAsset Concede permissão para retornar um ativo (ou arquivo) que faz parte de uma versão de pacote Read

package*

GetPackageVersionReadme Concede permissão para retornar o arquivo readme de uma versão de pacote Read

package*

GetRepositoryEndpoint Concede permissão para retornar um endpoint para um repositório Read

repository*

GetRepositoryPermissionsPolicy Concede permissão para retornar a política de recursos de um repositório Read

repository*

ListDomains Concede permissão para listar os domínios na Conta da AWS do usuário atual List
ListPackageVersionAssets Concede permissão para listar os ativos de uma versão de pacote List

package*

ListPackageVersionDependencies Concede permissão para listar as dependências diretas de uma versão de pacote List

package*

ListPackageVersions Concede permissão para listar as versões de um pacote List

package*

ListPackages Concede permissão para listar os pacotes em um repositório List

repository*

ListRepositories Concede permissão para listar os repositórios administrados pela conta de chamada List
ListRepositoriesInDomain Concede permissão para listar os repositórios em um domínio List

domain*

ListTagsForResource Concede permissão para listar etiquetas para um recurso CodeArtifact List

domain

repository

PublishPackageVersion Concede permissão para publicar ativos e metadados em um endpoint de repositório Write

package*

PutDomainPermissionsPolicy Concede permissão para anexar uma política de recursos a um domínio Write

domain*

PutPackageMetadata Concede permissão para adicionar, modificar ou remover metadados de pacote usando um endpoint de repositório Write

package*

PutPackageOriginConfiguration Concede permissão para definir a configuração de origem de um pacote Write

package*

PutRepositoryPermissionsPolicy Concede permissão para anexar uma política de recursos a um repositório Write

repository*

ReadFromRepository Concede permissão para retornar ativos e metadados de pacote de um endpoint de repositório Read

repository*

TagResource Concede permissão para marcar um recurso CodeArtifact Marcação

domain

repository

aws:RequestTag/${TagKey}

aws:TagKeys

UntagResource Concede permissão para remover uma etiqueta de um recurso CodeArtifact Marcação

domain

repository

aws:TagKeys

UpdatePackageVersionsStatus Concede permissão para modificar o status de uma ou mais versões de um pacote Write

package*

UpdateRepository Concede permissão para modificar as propriedades de um repositório Write

repository*

Tipos de recursos definidos pelo AWS CodeArtifact

Os seguintes tipos de recursos são definidos por este serviço e podem ser usados no elemento Resource de declarações de políticas de permissão do IAM. Cada ação na Tabela de ações identifica os tipos de recursos que podem ser especificados com essa ação. Um tipo de recurso também pode definir quais chaves de condição você pode incluir em uma política. Essas chaves são exibidas na última coluna da tabela. Para obter detalhes sobre as colunas na tabela a seguir, consulte Tabela de tipos de recursos.

Tipos de recursos ARN Chaves de condição
domain arn:${Partition}:codeartifact:${Region}:${Account}:domain/${DomainName}

aws:ResourceTag/${TagKey}

repository arn:${Partition}:codeartifact:${Region}:${Account}:repository/${DomainName}/${RepositoryName}

aws:ResourceTag/${TagKey}

package arn:${Partition}:codeartifact:${Region}:${Account}:package/${DomainName}/${RepositoryName}/${PackageFormat}/${PackageNamespace}/${PackageName}

Chaves de condição do AWS CodeArtifact

O AWS CodeArtifact define as seguintes chaves de condição que podem ser usadas no elemento Condition de uma política do IAM. É possível usar essas chaves para refinar ainda mais as condições sob as quais a declaração de política se aplica. Para obter detalhes sobre as colunas na tabela a seguir, consulte Tabela de chaves de condição.

Para visualizar as chaves de condição globais disponíveis para todos os serviços, consulte Chaves de condição globais disponíveis.

Chaves de condição Descrição Type
aws:RequestTag/${TagKey} Filtra acesso pela presença de pares de chave-valor da etiqueta na solicitação String
aws:ResourceTag/${TagKey} Filtra o acesso por pares chave-valor da etiqueta anexados ao recurso String
aws:TagKeys Filtra ações pela presença de chaves da etiqueta na solicitação ArrayOfString