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

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

O AWS CodeBuild (prefixo de serviço: codebuild) 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 CodeBuild

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
BatchDeleteBuilds Concede permissão para excluir uma ou mais compilações Write

project*

BatchGetBuildBatches Concede permissão para obter informações sobre um ou mais lotes de compilação Read

project*

BatchGetBuilds Concede permissão para obter informações sobre uma ou mais compilações Read

project*

BatchGetProjects Concede permissão para obter informações sobre um ou mais projetos de compilação Read

project*

BatchGetReportGroups Concede permissão para retornar uma matriz de objetos ReportGroup que são especificados pelo parâmetro reportGroupArns de entrada Read

report-group*

BatchGetReports Concede permissão para retornar uma matriz dos objetos Report especificados pelo parâmetro reportArns de entrada Read

report-group*

BatchPutCodeCoverages [somente permissão] Concede permissão para adicionar ou atualizar informações sobre um relatório Write

report-group*

BatchPutTestCases [somente permissão] Concede permissão para adicionar ou atualizar informações sobre um relatório Write

report-group*

CreateProject Concede permissão para criar um projeto de compilação Write

project*

aws:RequestTag/${TagKey}

aws:TagKeys

CreateReport [somente permissão] Concede permissão para criar um relatório. Um relatório é criado quando os testes especificados no arquivo buildspec para grupos de relatórios são executados durante a compilação de um projeto Write

report-group*

CreateReportGroup Concede permissão para criar um grupo de relatório Write

report-group*

aws:RequestTag/${TagKey}

aws:TagKeys

CreateWebhook Concede permissão para criar webhook. Para um projeto de compilação existente do AWS CodeBuild que tem seu código-fonte armazenado em um repositório GitHub ou do Bitbucket, permite que o AWS CodeBuild inicie a recompilação do código-fonte toda vez que uma alteração de código é enviada por push ao repositório Write

project*

DeleteBuildBatch Concede permissão para excluir um lote de compilação Write

project*

DeleteOAuthToken [somente permissão] Concede permissão para excluir um token OAuth de um provedor OAuth de terceiros conectado. Usado apenas no console do AWS CodeBuild Write
DeleteProject Concede permissão para excluir um projeto de compilação Write

project*

DeleteReport Concede permissão para excluir um relatório Write

report-group*

DeleteReportGroup Concede permissão para excluir um grupo de relatório Write

report-group*

DeleteResourcePolicy Concede permissão para excluir uma política de recursos do projeto ou grupo de relatórios associado Permissions management

project

report-group

DeleteSourceCredentials Concede permissão para excluir um conjunto de credenciais de origem do GitHub, do GitHub Enterprise ou do Bitbucket Write
DeleteWebhook Concede permissão para excluir o webhook. Para um projeto de compilação existente do AWS CodeBuild que tem seu código-fonte armazenado em um repositório GitHub ou Bitbucket, interrompe a recompilação do código-fonte pelo AWS CodeBuild a cada vez que uma alteração de código é enviada por push ao repositório Write

project*

DescribeCodeCoverages Concede permissão para retornar uma matriz de objetos CodeCoverage Read

report-group*

DescribeTestCases Concede permissão para retornar uma matriz de objetos TestCase Read

report-group*

GetReportGroupTrend Concede permissão para analisar e acumular os valores dos relatórios de teste do grupo de relatórios especificado Read

report-group*

GetResourcePolicy Concede permissão para retornar uma política de recursos para o projeto ou grupo de relatórios especificado Read

project

report-group

ImportSourceCredentials Concede permissão para importar as credenciais do repositório de origem de um projeto do AWS CodeBuild que tem o código-fonte armazenado em um repositório GitHub, GitHub Enterprise ou Bitbucket Write
InvalidateProjectCache Concede permissão para redefinir o cache de um projeto Write

project*

ListBuildBatches Concede permissão para obter uma lista de IDs de lotes de compilação, em que cada um representa um único lote de compilação List
ListBuildBatchesForProject Concede permissão para obter uma lista de IDs de lotes de compilação para o projeto de compilação especificado, com cada ID representando um único lote de compilação List

project*

ListBuilds Concede permissão para obter uma lista de IDs de compilação, em que cada um representa uma única compilação List
ListBuildsForProject Concede permissão para obter uma lista de IDs de compilação para o projeto de compilação especificado, com cada ID de compilação representando uma única compilação List

project*

ListConnectedOAuthAccounts [somente permissão] Concede permissão para listar provedores OAuth de terceiros conectados. Usado apenas no console do AWS CodeBuild List
ListCuratedEnvironmentImages Concede permissão para obter informações sobre imagens do Docker gerenciadas pelo AWS CodeBuild List
ListProjects Concede permissão para obter uma lista de nomes de projetos de compilação, com cada nome representando um único projeto de compilação List
ListReportGroups Concede permissão para retornar uma lista de ARNs de grupo de relatórios. Cada ARN do grupo de relatórios representa um grupo de relatórios List
ListReports Concede permissão para retornar uma lista de ARNs de relatório. Cada ARN de relatório representa um relatório List
ListReportsForReportGroup Concede permissão para retornar uma lista de ARNs de relatório que pertencem ao grupo de relatórios especificado. Cada ARN de relatório representa um relatório List

report-group*

ListRepositories [somente permissão] Concede permissão para listar os repositórios de código-fonte de um provedor OAuth de terceiros conectado. Usado apenas no console do AWS CodeBuild List
ListSharedProjects Concede permissão para retornar uma lista de ARNs do projeto que foram compartilhados com o solicitante. Cada ARN de projeto representa um projeto List
ListSharedReportGroups Concede permissão para retornar uma lista de ARNs do grupo de relatórios que foram compartilhados com o solicitante. Cada ARN do grupo de relatórios representa um grupo de relatórios List
ListSourceCredentials Concede permissão para retornar uma lista de objetos SourceCredentialsInfo List
PersistOAuthToken [somente permissão] Concede permissão para salvar um token OAuth de um provedor OAuth de terceiros conectado. Usado apenas no console do AWS CodeBuild Write
PutResourcePolicy Concede permissão para criar uma política de recursos para o projeto ou grupo de relatórios associado Permissions management

project

report-group

RetryBuild Concede permissão para repetir uma compilação Write

project*

RetryBuildBatch Concede permissão para repetir um lote de compilação Write

project*

StartBuild Concede permissão para iniciar a execução de uma compilação Write

project*

StartBuildBatch Concede permissão para iniciar a execução de um lote de compilação Write

project*

StopBuild Concede permissão para tentar interromper a execução de uma compilação Write

project*

StopBuildBatch Concede permissão para tentar interromper a execução de um lote de compilação Write

project*

UpdateProject Concede permissão para alterar as configurações de um projeto de compilação existente Write

project*

aws:RequestTag/${TagKey}

aws:TagKeys

UpdateProjectVisibility Concede permissão para alterar a visibilidade pública de um projeto e suas compilações Write

project*

aws:RequestTag/${TagKey}

aws:TagKeys

UpdateReport [somente permissão] Concede permissão para atualizar informações sobre um relatório Write

report-group*

UpdateReportGroup Concede permissão para alterar as configurações de um grupo de relatórios existente Write

report-group*

aws:RequestTag/${TagKey}

aws:TagKeys

UpdateWebhook Concede permissão para atualizar o webhook associado a um projeto de compilação do AWS CodeBuild Write

project*

Tipos de recursos definidos pelo AWS CodeBuild

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
build arn:${Partition}:codebuild:${Region}:${Account}:build/${BuildId}
build-batch arn:${Partition}:codebuild:${Region}:${Account}:build-batch/${BuildBatchId}
project arn:${Partition}:codebuild:${Region}:${Account}:project/${ProjectName}

aws:ResourceTag/${TagKey}

report-group arn:${Partition}:codebuild:${Region}:${Account}:report-group/${ReportGroupName}

aws:ResourceTag/${TagKey}

report arn:${Partition}:codebuild:${Region}:${Account}:report/${ReportGroupName}:${ReportId}

Chaves de condição do AWS CodeBuild

O AWS CodeBuild 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 o acesso por ações com base na presença de pares de chave-valor da etiqueta na solicitação String
aws:ResourceTag/${TagKey} Filtra o acesso por ações com base nos pares de chave-valor da etiqueta anexados ao recurso String
aws:TagKeys Filtra o acesso por ações com base na presença de chaves da etiqueta na solicitação ArrayOfString