Identity and Access Management e Amazon CodeCatalyst - Amazon CodeCatalyst

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á.

Identity and Access Management e Amazon CodeCatalyst

Na Amazon CodeCatalyst, você cria e usa um AWS Builder ID para fazer login e acessar seus espaços e projetos. Um ID de AWS construtor não é uma identidade no AWS Identity and Access Management (IAM) e não existe em um Conta da AWS. No entanto, CodeCatalyst se integra com o IAM ao verificar um espaço para fins de cobrança e quando conectado a um Conta da AWS para criar e usar recursos nele. Conta da AWS

AWS Identity and Access Management (IAM) é uma ferramenta AWS service (Serviço da AWS) que ajuda o administrador a controlar com segurança o acesso aos AWS recursos. Os administradores do IAM controlam quem pode ser autenticado (fazer login) e autorizado (ter permissões) para usar os recursos. O IAM é um AWS service (Serviço da AWS) que você pode usar sem custo adicional.

Ao criar um espaço na Amazon CodeCatalyst, você deve se conectar Conta da AWS como a conta de cobrança do seu espaço. Você deve ter permissões de administrador no Conta da AWS para verificar o CodeCatalyst espaço ou ter a permissão. Você também tem a opção de adicionar uma função do IAM ao seu espaço que CodeCatalyst pode ser usada para criar e acessar recursos nesse espaço conectado Conta da AWS. Isso é chamado de função de serviço. Você pode optar por criar conexões com mais de uma Conta da AWS e criar funções de serviço para CodeCatalyst cada uma dessas contas.

nota

O faturamento CodeCatalyst ocorre na conta Conta da AWS designada como a cobrança. No entanto, se você criar uma função de CodeCatalyst serviço nessa Conta da AWS ou em qualquer outra conectada Conta da AWS, os recursos criados e usados pela função de CodeCatalyst serviço serão cobrados nessa função conectada Conta da AWS. Para obter mais informações, consulte Gerenciando o faturamento no Guia do CodeCatalyst Administrador da Amazon.

Políticas baseadas em identidade no IAM

Políticas baseadas em identidade são documentos de políticas de permissões JSON que você pode anexar a uma identidade. Essa identidade pode ser um usuário, um grupo de usuários ou uma função. Essas políticas controlam quais ações os usuários e funções podem realizar, em quais recursos e em quais condições. Saiba como criar uma política baseada em identidade consultando Criando Políticas do IAM no Guia do Usuário do IAM.

Com as políticas baseadas em identidade do IAM, é possível especificar ações ou recursos permitidos ou negados, assim como as condições sob as quais as ações são permitidas ou negadas. Você não pode especificar a entidade principal em uma política baseada em identidade porque ela se aplica ao usuário ou função à qual ela está anexada. Para saber mais sobre todos os elementos que podem ser usados em uma política JSON, consulte Referência de elementos da política JSON do IAM no Guia do Usuário do IAM.

Exemplos de políticas baseadas em identidade para o CodeCatalyst

Para ver exemplos de políticas CodeCatalyst baseadas em identidade, consulte. Exemplos de políticas baseadas em identidade para conexões CodeCatalyst

Ações políticas no IAM

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual diretor pode realizar quais ações em quais recursos e sob quais condições.

O elemento Action de uma política JSON descreve as ações que você pode usar para permitir ou negar acesso em uma política. As ações de política geralmente têm o mesmo nome da operação de AWS API associada. Existem algumas exceções, como ações somente de permissão, que não têm uma operação de API correspondente. Há também algumas operações que exigem várias ações em uma política. Essas ações adicionais são chamadas de ações dependentes.

Para especificar várias ações em uma única instrução, separe-as com vírgulas.

"Action": [ "prefix:action1", "prefix:action2" ]

Recursos de política no IAM

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual diretor pode realizar quais ações em quais recursos e sob quais condições.

O elemento Resource de política JSON especifica o objeto ou os objetos aos quais a ação se aplica. As instruções devem incluir um elemento Resource ou um elemento NotResource. Como prática recomendada, especifique um recurso usando seu nome do recurso da Amazon (ARN). Isso pode ser feito para ações que oferecem suporte a um tipo de atributo específico, conhecido como permissões em nível de atributo.

Para ações não compatíveis com permissões no nível de recurso, como operações de listagem, use um curinga (*) para indicar que a instrução se aplica a todos os recursos.

"Resource": "*"

Chaves de condição de política no IAM

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual diretor pode realizar quais ações em quais recursos e sob quais condições.

O elemento Condition (ou bloco Condition) permite especificar condições nas quais uma instrução estiver em vigor. O elemento Condition é opcional. Você pode criar expressões condicionais que usem operadores de condição, como “igual a” ou “menor que”, para corresponder a condição da política aos valores na solicitação.

Se você especificar vários elementos Condition em uma instrução ou várias chaves em um único Condition elemento, a AWS os avaliará usando uma operação lógica AND. Se você especificar vários valores para uma única chave de condição, a AWS avaliará a condição usando uma operação lógica OR. Todas as condições devem ser atendidas antes que as permissões da instrução sejam concedidas.

Você também pode usar variáveis de espaço reservado ao especificar condições. Para obter mais informações, consulte Elementos de Política do IAM: Variáveis e Tags no Guia do Usuário do IAM.

AWS suporta chaves de condição globais e chaves de condição específicas do serviço. Para ver todas as AWS chaves de condição globais da , consulte AWS Chaves de contexto de condição globais da no Guia do usuário do IAM.

Exemplos de políticas baseadas em identidade para conexões CodeCatalyst

Em CodeCatalyst, Contas da AWS são necessários para gerenciar o faturamento de um espaço e acessar recursos nos fluxos de trabalho do projeto. Uma conexão de conta é usada para autorizar a adição Contas da AWS a um espaço. Políticas baseadas em identidade são usadas nos conectados. Contas da AWS

Por padrão, usuários e funções não têm permissão para criar ou modificar CodeCatalyst recursos. Eles também não podem realizar tarefas usando a AWS API AWS Management Console, AWS Command Line Interface (AWS CLI) ou. Um administrador do IAM deve criar políticas do IAM que concedam aos usuários e funções permissão para executar ações nos recursos de que precisem. Por isso, o administrador precisa anexar essas políticas para os usuários que precisem delas.

O exemplo a seguir de políticas do IAM concede permissões para ações relacionadas às conexões da conta. Use-os para limitar o acesso para conectar contas CodeCatalyst a.

Exemplo 1: permitir que um usuário aceite solicitações de conexão em uma única Região da AWS

A política de permissões a seguir só permite que os usuários visualizem e aceitem solicitações de conexões entre CodeCatalyst Contas da AWS e. Além disso, a política usa uma condição para permitir somente as ações na região us-west-2 e não de outra. Regiões da AWS Para visualizar e aprovar a solicitação, o usuário faz login AWS Management Console com a mesma conta especificada na solicitação.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codecatalyst:AcceptConnection", "codecatalyst:GetPendingConnection" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestedRegion": "us-west-2" } } } ] }

Exemplo 2: Permitir o gerenciamento de conexões no console para um único Região da AWS

A política de permissões a seguir permite que os usuários gerenciem conexões entre CodeCatalyst e Contas da AWS em uma única região. A política usa uma condição para permitir somente as ações na região us-west-2 e não de outra. Regiões da AWS Depois de criar uma conexão, você pode criar a CodeCatalystWorkflowDevelopmentRole-spaceNamefunção escolhendo a opção no AWS Management Console. No exemplo de política, a condição para a iam:PassRole ação inclui os princípios de serviço para CodeCatalyst. Somente funções com esse acesso serão criadas no AWS Management Console.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codecatalyst:*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestedRegion": "us-west-2" } } }, { "Effect": "Allow", "Action": [ "iam:CreateRole", "iam:CreatePolicy", "iam:AttachRolePolicy", "iam:ListRoles" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": [ "codecatalyst.amazonaws.com", "codecatalyst-runner.amazonaws.com" ] } } } ] }

Exemplo 3: negar o gerenciamento de conexões

A política de permissões a seguir nega aos usuários qualquer capacidade de gerenciar conexões entre CodeCatalyst e. Contas da AWS

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "codecatalyst:*" ], "Resource": "*" } ] }

CodeCatalyst referência de permissões

Esta seção fornece uma referência de permissões para ações usadas com o recurso de conexão da conta para Contas da AWS as quais estão conectadas CodeCatalyst. A seção a seguir descreve ações somente com permissões relacionadas à conexão de contas.

Permissões necessárias para conexões de conta

As permissões a seguir são necessárias para trabalhar com conexões de conta.

CodeCatalyst permissões para conexões de contas Permissões obrigatórias Recursos
AcceptConnection Necessário aceitar uma solicitação para conectar essa conta a um CodeCatalyst espaço. Esta é apenas uma permissão de política do IAM, e não uma ação de API.

Compatível apenas com um caractere curinga (*) no elemento de política Resource.

AssociateIamRoleToConnection Obrigatório para associar uma função do IAM a uma conexão de conta. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
DeleteConnection Necessário para excluir uma conexão de conta. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
DisassociateIamRoleFromConnection Obrigatório para desassociar uma função do IAM de uma conexão de conta. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
GetBillingAuthorization Obrigatório para descrever a autorização de cobrança para uma conexão de conta. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
GetConnection Necessário para obter uma conexão com a conta. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
GetPendingConnection Necessário para receber uma solicitação pendente para conectar essa conta a um CodeCatalyst espaço. Esta é apenas uma permissão de política do IAM, e não uma ação de API.

Compatível apenas com um caractere curinga (*) no elemento de política Resource.

ListConnections Necessário para listar conexões de conta que não estão pendentes. Esta é apenas uma permissão de política do IAM, e não uma ação de API.

Compatível apenas com um caractere curinga (*) no elemento de política Resource.

ListIamRolesForConnection Obrigatório para listar as funções do IAM associadas a uma conexão de conta. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
ListTagsForResource Obrigatório para listar as tags associadas a uma conexão de conta. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
PutBillingAuthorization Necessário para criar ou atualizar a autorização de cobrança para uma conexão de conta. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
RejectConnection Obrigatório para rejeitar uma solicitação para conectar essa conta a um CodeCatalyst espaço. Esta é apenas uma permissão de política do IAM, e não uma ação de API.

Compatível apenas com um caractere curinga (*) no elemento de política Resource.

TagResource Necessário para criar ou editar tags associadas a uma conexão de conta. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID
UntagResource Necessário para remover tags associadas a uma conexão de conta. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/connections/connection_ID

Permissões necessárias para aplicativos do IAM Identity Center

As permissões a seguir são necessárias para trabalhar com aplicativos do IAM Identity Center.

CodeCatalyst permissões para aplicativos do IAM Identity Center Permissões obrigatórias Recursos
AssociateIdentityCenterApplicationToSpace Necessário para associar um aplicativo do IAM Identity Center a um CodeCatalyst espaço. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
AssociateIdentityToIdentityCenterApplication Necessário para associar uma identidade a um aplicativo do IAM Identity Center para um CodeCatalyst espaço. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
BatchAssociateIdentitiesToIdentityCenterApplication É necessário associar várias identidades a um aplicativo do IAM Identity Center para um CodeCatalyst espaço. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
BatchDisassociateIdentitiesFromIdentityCenterApplication É necessário desassociar várias identidades de um aplicativo do IAM Identity Center para um CodeCatalyst espaço. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
CreateIdentityCenterApplication Necessário para criar um aplicativo do IAM Identity Center. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
CreateSpaceAdminRoleAssignment Necessário para criar uma atribuição de função de administrador para um determinado CodeCatalyst espaço e aplicativo do IAM Identity Center. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
DeleteIdentityCenterApplication Necessário para excluir um aplicativo do IAM Identity Center. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
DisassociateIdentityCenterApplicationFromSpace Obrigatório para desassociar um aplicativo do IAM Identity Center de um CodeCatalyst espaço. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
DisassociateIdentityFromIdentityCenterApplication Necessário para desassociar uma identidade de um aplicativo do IAM Identity Center para um CodeCatalyst espaço. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
GetIdentityCenterApplication Necessário para obter informações sobre um aplicativo do IAM Identity Center. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
ListIdentityCenterApplications Obrigatório para visualizar uma lista de todos os aplicativos do IAM Identity Center na conta. Esta é apenas uma permissão de política do IAM, e não uma ação de API.

Compatível apenas com um caractere curinga (*) no elemento de política Resource.

ListIdentityCenterApplicationsForSpace Obrigatório para visualizar uma lista de aplicativos do IAM Identity Center por CodeCatalyst espaço. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
ListSpacesForIdentityCenterApplication Necessário para visualizar uma lista de CodeCatalyst espaços pelo aplicativo IAM Identity Center. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
SynchronizeIdentityCenterApplication Necessário para sincronizar um aplicativo do IAM Identity Center com o repositório de identidade de apoio. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID
UpdateIdentityCenterApplication Necessário para atualizar um aplicativo do IAM Identity Center. Esta é apenas uma permissão de política do IAM, e não uma ação de API. arn:aws:codecatalyst:region:account_ID:/identity-center-applications/identity-center-application_ID