Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Usar tags para controlar o acesso aos recursos do AWS CodeBuild

Modo de foco
Usar tags para controlar o acesso aos recursos do AWS CodeBuild - AWS CodeBuild

As condições nas declarações de política do IAM fazem parte da sintaxe que é possível usar para especificar permissões para ações do CodeBuild baseadas em projeto. É possível criar uma política que permita ou negue ações em projetos com base nas tags associadas a esses projetos e aplicar essas políticas aos grupos do IAM que você configura para gerenciar usuários. Para obter informações sobre como aplicar tags a um projeto usando o console ou a AWS CLI, consulte Criar um projeto de compilação no AWS CodeBuild. Para obter informações sobre como aplicar tags usando o SDK do CodeBuild, consulte CreateProject e Tags na Referência da API do CodeBuild. Para obter informações sobre como usar tags para controlar o acesso a recursos da AWS, consulte Controlling Access to AWS Resources Using Resource Tags, no Guia do usuário do IAM.

Importante

Ao usar o recurso de capacidade reservada, os dados armazenados em cache nas instâncias da frota, incluindo arquivos de origem, camadas do Docker e diretórios em cache especificados no buildspec, podem ser acessados por outros projetos na mesma conta. Isso ocorre por design e permite que projetos dentro da mesma conta compartilhem instâncias de frota.

exemplo Exemplo 1: Limitar ações de projetos do CodeBuild com base em tags de recursos

O exemplo a seguir nega todas as ações BatchGetProjects em projetos marcados com a chave Environment com o valor de chave de Production. O administrador de um usuário deve anexar essa política do IAM, além de uma política gerenciada pelo usuário, a usuários não autorizados. A chave de condição aws:ResourceTag é usada para controlar o acesso a recursos com base em suas tags.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "codebuild:BatchGetProjects" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:ResourceTag/Environment": "Production" } } } ] }
exemplo Exemplo 2: Limitar ações de projetos do CodeBuild com base em tags de solicitação

A política a seguir negará a permissão dos usuários para a ação CreateProject se a solicitação tiver uma tag com a chave Environment e o valor de chave Production. Além disso, a política impede que esses usuários não autorizados modifiquem projetos usando a chave de condição aws:TagKeys para não permitir UpdateProject se a solicitação tiver uma tag com a chave Environment. Um administrador deve anexar essa política do IAM, além da política gerenciada pelo usuário, a usuários que não estão autorizados a executar essas ações. A chave de condição aws:RequestTag é usada para controlar quais tags podem ser transmitidas em uma solicitação do IAM.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "codebuild:CreateProject" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:RequestTag/Environment": "Production" } } }, { "Effect": "Deny", "Action": [ "codebuild:UpdateProject" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:TagKeys": ["Environment"] } } } ] }
exemplo Exemplo 3: Negar ou permitir ações em grupos de relatórios com base em tags de recursos

É possível criar uma política que permita ou negue ações em recursos do CodeBuild (projetos e grupos de relatórios) com base nas tags da AWS associadas a esses recursos e aplicar essas políticas aos grupos do IAM configurados para gerenciar usuários. Por exemplo, é possível criar uma política que negue todas as ações do CodeBuild em grupos de relatórios com a chave de tag da AWS Status e o valor de chave de Secret e, depois, aplicar essa política ao grupo do IAM criado para os desenvolvedores gerais (Desenvolvedores). É necessário verificar se os desenvolvedores que trabalham nesses grupos de relatórios marcados não são membros do grupo Desenvolvedores geral, mas sim pertencentes a um grupo do IAM diferente que não tenha a política restritiva aplicada (SecretDevelopers).

O exemplo a seguir nega todas as ações do CodeBuild em grupos de relatórios marcados com a chave Status e o valor de chave de Secret:

{ "Version": "2012-10-17", "Statement" : [ { "Effect" : "Deny", "Action" : [ "codebuild:BatchGetReportGroups," "codebuild:CreateReportGroup", "codebuild:DeleteReportGroup", "codebuild:ListReportGroups", "codebuild:ListReportsForReportGroup", "codebuild:UpdateReportGroup" ] "Resource" : "*", "Condition" : { "StringEquals" : "aws:ResourceTag/Status": "Secret" } } ] }
exemplo Exemplo 4: Limitar ações do CodeBuild para AWSCodeBuildDeveloperAccess com base em tags de recursos

É possível criar políticas que permitam ações do CodeBuild em todos os grupos de relatórios e projetos que não estejam marcados com tags específicas. Por exemplo, a política a seguir permite o equivalente de permissões AWSCodeBuildDeveloperAccess para todos os grupos de relatórios e projetos, exceto os marcados com as tags especificadas:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codebuild:StartBuild", "codebuild:StopBuild", "codebuild:BatchGet*", "codebuild:GetResourcePolicy", "codebuild:DescribeTestCases", "codebuild:List*", "codecommit:GetBranch", "codecommit:GetCommit", "codecommit:GetRepository", "codecommit:ListBranches", "cloudwatch:GetMetricStatistics", "events:DescribeRule", "events:ListTargetsByRule", "events:ListRuleNamesByTarget", "logs:GetLogEvents", "s3:GetBucketLocation", "s3:ListAllMyBuckets" ], "Resource": "*", "Condition": { "StringNotEquals": { "aws:ResourceTag/Status": "Secret", "aws:ResourceTag/Team": "Saanvi" } } } ] }
PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.