Identity and Access Management para AWS Cloud9 - AWS Cloud9

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 para AWS Cloud9

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 (conectado) e autorizado (tem permissões) a usar AWS Cloud9 os recursos. O IAM é um AWS service (Serviço da AWS) que você pode usar sem custo adicional.

Público

A forma como você usa AWS Identity and Access Management (IAM) difere, dependendo do trabalho que você faz AWS Cloud9.

Usuário do serviço — Se você usar o AWS Cloud9 serviço para realizar seu trabalho, seu administrador fornecerá as credenciais e as permissões de que você precisa. À medida que você usa mais AWS Cloud9 recursos para fazer seu trabalho, talvez precise de permissões adicionais. Entender como o acesso é gerenciado pode ajudá-lo a solicitar as permissões corretas ao seu administrador. Se não for possível acessar um recurso no AWS Cloud9, consulte Solução de problemas AWS Cloud9 de identidade e acesso.

Administrador de serviços — Se você é responsável pelos AWS Cloud9 recursos da sua empresa, provavelmente tem acesso total AWS Cloud9 a. É seu trabalho determinar quais AWS Cloud9 recursos e recursos seus usuários do serviço devem acessar. Assim, você deve enviar solicitações ao administrador do IAM para alterar as permissões dos usuários de seu serviço. Revise as informações nesta página para entender os Introdução ao IAM. Para saber mais sobre como sua empresa pode usar o IAM com AWS Cloud9, consulteComo AWS Cloud9 funciona com o IAM.

Administrador do IAM: Se você for um administrador do IAM, talvez queira saber detalhes sobre como pode gravar políticas para gerenciar acesso ao AWS Cloud9. Para ver exemplos de políticas AWS Cloud9 baseadas em identidade que você pode usar no IAM, consulte. Exemplos de políticas baseadas em identidade para o AWS Cloud9

Autenticando com identidades

A autenticação é a forma como você faz login AWS usando suas credenciais de identidade. Você deve estar autenticado (conectado AWS) como usuário do Usuário raiz da conta da AWS IAM ou assumindo uma função do IAM.

Você pode entrar AWS como uma identidade federada usando credenciais fornecidas por meio de uma fonte de identidade. AWS IAM Identity Center Usuários (IAM Identity Center), a autenticação de login único da sua empresa e suas credenciais do Google ou do Facebook são exemplos de identidades federadas. Quando você faz login como identidade federada, o administrador já configurou anteriormente a federação de identidades usando perfis do IAM. Ao acessar AWS usando a federação, você está assumindo indiretamente uma função.

Dependendo do tipo de usuário que você é, você pode entrar no AWS Management Console ou no portal de AWS acesso. Para obter mais informações sobre como fazer login em AWS, consulte Como fazer login Conta da AWS no Guia do Início de Sessão da AWS usuário.

Se você acessar AWS programaticamente, AWS fornece um kit de desenvolvimento de software (SDK) e uma interface de linha de comando (CLI) para assinar criptograficamente suas solicitações usando suas credenciais. Se você não usa AWS ferramentas, você mesmo deve assinar as solicitações. Para obter mais informações sobre como usar o método recomendado para assinar solicitações por conta própria, consulte Assinatura de solicitações de AWS API no Guia do usuário do IAM.

Independente do método de autenticação usado, também pode ser exigido que você forneça informações adicionais de segurança. Por exemplo, AWS recomenda que você use a autenticação multifator (MFA) para aumentar a segurança da sua conta. Para saber mais, consulte Autenticação Multifator no AWS IAM Identity Center Guia do Usuário. Usar a autenticação multifator (MFA) na AWS no Guia do Usuário do IAM.

Conta da AWS usuário root

Ao criar uma Conta da AWS, você começa com uma identidade de login que tem acesso completo a todos Serviços da AWS os recursos da conta. Essa identidade é chamada de usuário Conta da AWS raiz e é acessada fazendo login com o endereço de e-mail e a senha que você usou para criar a conta. É altamente recomendável não usar o usuário raiz para tarefas diárias. Proteja as credenciais do usuário raiz e use-as para executar as tarefas que somente ele pode executar. Para obter a lista completa das tarefas que exigem login como usuário raiz, consulte Tarefas que exigem credenciais de usuário raiz no Guia do usuário do IAM.

Identidade federada

Como prática recomendada, exija que usuários humanos, incluindo usuários que precisam de acesso de administrador, usem a federação com um provedor de identidade para acessar Serviços da AWS usando credenciais temporárias.

Uma identidade federada é um usuário do seu diretório de usuários corporativo, de um provedor de identidade da web AWS Directory Service, do diretório do Identity Center ou de qualquer usuário que acesse usando credenciais fornecidas Serviços da AWS por meio de uma fonte de identidade. Quando as identidades federadas são acessadas Contas da AWS, elas assumem funções, e as funções fornecem credenciais temporárias.

Para o gerenciamento de acesso centralizado, recomendamos usar o . AWS IAM Identity Center Você pode criar usuários e grupos no IAM Identity Center ou pode se conectar e sincronizar com um conjunto de usuários e grupos em sua própria fonte de identidade para uso em todos os seus Contas da AWS aplicativos. Para obter mais informações sobre o Centro de Identidade do IAM, consulte O que é o Centro de Identidade do IAM? no AWS IAM Identity Center Manual do Usuário do.

Usuários e grupos do IAM

Um usuário do IAM é uma identidade dentro da sua Conta da AWS que tem permissões específicas para uma única pessoa ou aplicativo. Sempre que possível, recomendamos depender de credenciais temporárias em vez de criar usuários do IAM com credenciais de longo prazo, como senhas e chaves de acesso. No entanto, se você tiver casos de uso específicos que exijam credenciais de longo prazo com usuários do IAM, recomendamos alternar as chaves de acesso. Para obter mais informações, consulte Alterne Chaves de Acesso Regularmente para Casos de Uso que exijam Credenciais de Longo Prazo no Guia do Usuário do IAM.

Um grupo do IAM é uma identidade que especifica uma coleção de usuários do IAM. Não é possível fazer login como um grupo. É possível usar grupos para especificar permissões para vários usuários de uma vez. Os grupos facilitam o gerenciamento de permissões para grandes conjuntos de usuários. Por exemplo, você pode ter um nome de grupo IAMAdmins e atribuir a esse grupo permissões para administrar recursos do IAM.

Usuários são diferentes de perfis. Um usuário é exclusivamente associado a uma pessoa ou a um aplicativo, mas uma função pode ser assumida por qualquer pessoa que precisar dela. Os usuários têm credenciais permanentes de longo prazo, mas os perfis fornecem credenciais temporárias. Para saber mais, consulte Quando Criar um Usuário do IAM (Ao Invés de uma Função) no Guia do Usuário do IAM.

Perfis do IAM

Uma função do IAM é uma identidade dentro da sua Conta da AWS que tem permissões específicas. Ele é semelhante a um usuário do IAM, mas não está associado a uma pessoa específica. Você pode assumir temporariamente uma função do IAM no AWS Management Console trocando de funções. Você pode assumir uma função chamando uma operação de AWS API AWS CLI ou usando uma URL personalizada. Para obter mais informações sobre métodos para usar perfis, consulte Usando Funções do IAM no Guia do Usuário do IAM.

Funções do IAM com credenciais temporárias são úteis nas seguintes situações:

  • Acesso de usuário federado: para atribuir permissões a identidades federadas, você pode criar um perfil e definir permissões para ele. Quando uma identidade federada é autenticada, essa identidade é associada ao perfil e recebe as permissões definidas pelo mesmo. Para obter mais informações sobre perfis para federação, consulte Criando um Perfil para um Provedor de Identidades Terceirizado no Guia do Usuário do IAM. Se você usa o IAM Identity Center, configure um conjunto de permissões. Para controlar o que suas identidades podem acessar após a autenticação, o IAM Identity Center correlaciona o conjunto de permissões a um perfil no IAM. Para obter informações sobre conjuntos de permissões, consulte Conjuntos de Permissões no AWS IAM Identity Center Manual do Usuário.

  • Permissões de usuários temporárias do IAM: um usuário ou perfil do IAM pode assumir um perfil do IAM para obter temporariamente permissões diferentes para uma tarefa específica.

  • Acesso entre contas: você pode usar um perfil do IAM para permitir que alguém (uma entidade principal confiável) acesse recursos na sua conta de uma conta diferente. As funções são a forma primária de conceder acesso entre contas. No entanto, com alguns Serviços da AWS, você pode anexar uma política diretamente a um recurso (em vez de usar uma função como proxy). Para aprender a diferença entre funções e políticas baseadas em recurso para acesso entre contas, consulte Como as Funções do IAM Diferem das Políticas Baseadas em Recurso no Guia do Usuário do IAM.

  • Acesso entre serviços — Alguns Serviços da AWS usam recursos em outros Serviços da AWS. Por exemplo, quando você faz uma chamada em um serviço, é comum que esse serviço execute aplicativos no Amazon EC2 ou armazene objetos no Amazon S3. Um serviço pode fazer isso usando as permissões de chamada da entidade principal, uma função de serviço ou uma função vinculada ao serviço.

    • Sessões de acesso direto (FAS) — Quando você usa um usuário ou uma função do IAM para realizar ações AWS, você é considerado principal. Ao usar alguns serviços, você pode executar uma ação que inicia outra ação em um serviço diferente. O FAS usa as permissões do diretor chamando um AWS service (Serviço da AWS), combinadas com a solicitação AWS service (Serviço da AWS) para fazer solicitações aos serviços posteriores. As solicitações do FAS são feitas somente quando um serviço recebe uma solicitação que requer interações com outros Serviços da AWS ou com recursos para ser concluída. Nesse caso, você precisa ter permissões para executar ambas as ações. Para obter detalhes da política ao fazer solicitações de FAS, consulte Encaminhar sessões de acesso.

    • Função de Serviço: uma função de serviço é uma função do IAM que um serviço assume para realizar ações em seu nome. Um administrador do IAM pode criar, modificar e excluir um perfil de serviço do IAM. Para obter mais informações, consulte Criando um Perfil para Delegar Permissões a um AWS service (Serviço da AWS) no Guia do Usuário do IAM.

    • Função vinculada ao serviço — Uma função vinculada ao serviço é um tipo de função de serviço vinculada a um. AWS service (Serviço da AWS) O serviço pode assumir o perfil de executar uma ação em seu nome. As funções vinculadas ao serviço aparecem em você Conta da AWS e são de propriedade do serviço. Um administrador do IAM pode visualizar, mas não pode editar as permissões para funções vinculadas a serviço.

  • Aplicativos em execução no Amazon EC2 — Você pode usar uma função do IAM para gerenciar credenciais temporárias para aplicativos que estão sendo executados em uma instância do EC2 e fazendo AWS CLI solicitações de API. AWS É preferível fazer isso a armazenar chaves de acesso na instância do EC2. Para atribuir uma AWS função a uma instância do EC2 e disponibilizá-la para todos os seus aplicativos, você cria um perfil de instância anexado à instância. Um perfil de instância contém a perfil e permite que os programas em execução na instância do EC2 obtenham credenciais temporárias. Para mais informações, consulte Usar uma função do IAM para conceder permissões a aplicativos em execução nas instâncias do Amazon EC2 no Guia do usuário do IAM.

Para aprender se deseja usar perfis do IAM, consulte Quando Criar uma Função do IAM (em Vez de um Usuário) no Guia do Usuário do IAM.

Gerenciando acesso usando políticas

Você controla o acesso AWS criando políticas e anexando-as a AWS identidades ou recursos. Uma política é um objeto AWS que, quando associada a uma identidade ou recurso, define suas permissões. AWS avalia essas políticas quando um principal (usuário, usuário raiz ou sessão de função) faz uma solicitação. As permissões nas políticas determinam se a solicitação será permitida ou negada. A maioria das políticas é armazenada AWS como documentos JSON. Para obter mais informações sobre a estrutura e o conteúdo de documentos de políticas JSON, consulte Visão Geral das Políticas JSON no Guia do Usuário do IAM.

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

Por padrão, usuários e funções não têm permissões. Para conceder aos usuários permissão para executar ações nos recursos de que eles precisam, um administrador do IAM pode criar políticas do IAM. O administrador pode então adicionar as políticas do IAM às funções e os usuários podem assumir as funções.

As políticas do IAM definem permissões para uma ação, independente do método usado para executar a operação. Por exemplo, suponha que você tenha uma política que permite a ação iam:GetRole. Um usuário com essa política pode obter informações de função da AWS Management Console AWS CLI, da ou da AWS API.

Políticas baseadas em identidade

As políticas baseadas em identidade são documentos de políticas de permissões JSON que você pode anexar a uma identidade, como usuário do IAM, grupo de usuários ou perfil do IAM. Essas políticas controlam quais ações os usuários e funções podem realizar, em quais recursos e em quais condições. Para saber como criar uma política baseada em identidade, consulte Criar políticas do IAM no Guia do usuário do IAM.

As políticas baseadas em identidade também podem ser categorizadas como políticas em linha ou políticas gerenciadas. As políticas em linha são incorporadas diretamente a um único usuário, grupo ou função. As políticas gerenciadas são políticas autônomas que você pode associar a vários usuários, grupos e funções em seu Conta da AWS. As políticas AWS gerenciadas incluem políticas gerenciadas e políticas gerenciadas pelo cliente. Para saber como selecionar entre uma política gerenciada ou uma política em linha, consulte Selecionar entre políticas gerenciadas e políticas em linha no Guia do usuário do IAM.

Políticas baseadas em recursos

Políticas baseadas em recursos são documentos de políticas JSON que você anexa a um recurso. São exemplos de políticas baseadas em recursos as políticas de confiança de função do IAM e as políticas do bucket do Amazon S3. Em serviços que suportem políticas baseadas em recursos, os administradores de serviço podem usá-las para controlar o acesso a um recurso específico. Para o recurso ao qual a política está anexada, a política define quais ações uma entidade principal especificada pode executar nesse recurso e em que condições. Você deve especificar uma entidade principal em uma política baseada em recursos. Os diretores podem incluir contas, usuários, funções, usuários federados ou. Serviços da AWS

Políticas baseadas em atributos são políticas em linha que estão localizadas nesse serviço. Você não pode usar políticas AWS gerenciadas do IAM em uma política baseada em recursos.

Listas de controle de acesso (ACLs)

As listas de controle de acesso (ACLs) controlam quais entidades principais (membros, usuários ou funções da conta) têm permissão para acessar um recurso. As ACLs são semelhantes as políticas baseadas em recursos, embora não usem o formato de documento de política JSON.

O Amazon S3 e o Amazon VPC são exemplos de serviços que oferecem suporte a ACLs. AWS WAF Saiba mais sobre ACLs em Configurações da lista de controle de acesso (ACL) no Guia do Desenvolvedor do Amazon Simple Storage Service.

Outros tipos de política

AWS oferece suporte a tipos de políticas adicionais menos comuns. Esses tipos de política podem definir o máximo de permissões concedidas a você pelos tipos de política mais comuns.

  • Limites de permissões: um limite de permissões é um recurso avançado no qual você define o máximo de permissões que uma política baseada em identidade pode conceder a uma entidade do IAM (usuário ou perfil do IAM). É possível definir um limite de permissões para uma entidade. As permissões resultantes são a interseção das políticas baseadas em identidade de uma entidade e dos seus limites de permissões. As políticas baseadas em atributo que especificam o usuário ou o perfil no campo Principal não são limitadas pelo limite de permissões. Uma negação explícita em qualquer uma dessas políticas substitui a permissão. Para obter mais informações sobre limites de permissões, consulte Limites de Permissões para Entidades do IAM no Guia do Usuário do IAM.

  • Políticas de controle de serviço (SCPs) — SCPs são políticas JSON que especificam as permissões máximas para uma organização ou unidade organizacional (OU) em. AWS Organizations AWS Organizations é um serviço para agrupar e gerenciar centralmente vários Contas da AWS que sua empresa possui. Se você habilitar todos os atributos em uma organização, poderá aplicar políticas de controle de serviço (SCPs) a qualquer uma ou a todas as contas. O SCP limita as permissões para entidades nas contas dos membros, incluindo cada uma Usuário raiz da conta da AWS. Para obter mais informações sobre o Organizações e SCPs, consulte Como os SCPs Funcionam no AWS Organizations Manual do Usuário do.

  • Políticas de sessão: são políticas avançadas que você transmite como um parâmetro quando cria de forma programática uma sessão temporária para uma função ou um usuário federado. As permissões da sessão resultante são a interseção das políticas baseadas em identidade do usuário ou do perfil e das políticas de sessão. As permissões também podem ser provenientes de uma política baseada em atributo. Uma negação explícita em qualquer uma dessas políticas substitui a permissão. Para obter mais informações, consulte Políticas de sessão no Guia do usuário do IAM.

Vários tipos de política

Quando vários tipos de política são aplicáveis a uma solicitação, é mais complicado compreender as permissões resultantes. Para saber como AWS determinar se uma solicitação deve ser permitida quando vários tipos de políticas estão envolvidos, consulte Lógica de avaliação de políticas no Guia do usuário do IAM.

Como AWS Cloud9 funciona com o IAM

Antes de usar o IAM para gerenciar o acesso AWS Cloud9, saiba com quais recursos do IAM estão disponíveis para uso AWS Cloud9.

Para ter uma visão de alto nível de como AWS Cloud9 e outros AWS serviços funcionam com a maioria dos recursos do IAM, consulte AWS os serviços que funcionam com o IAM no Guia do usuário do IAM.

Políticas baseadas em identidade para AWS Cloud9

Suporta com políticas baseadas em identidade

Sim

As políticas baseadas em identidade são documentos de políticas de permissões JSON que você pode anexar a uma identidade, como usuário IAM, grupo de usuários ou perfil do IAM. 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 AWS Cloud9

Para ver exemplos de políticas AWS Cloud9 baseadas em identidade, consulte. Exemplos de políticas baseadas em identidade para o AWS Cloud9

Políticas baseadas em recursos dentro AWS Cloud9

Oferece suporte a políticas baseadas em recursos

Não

Políticas baseadas em recursos são documentos de políticas JSON que você anexa a um recurso. São exemplos de políticas baseadas em recursos as políticas de confiança de função do IAM e as políticas do bucket do Amazon S3. Em serviços que suportem políticas baseadas em recursos, os administradores de serviço podem usá-las para controlar o acesso a um recurso específico. Para o recurso ao qual a política está anexada, a política define quais ações uma entidade principal especificada pode executar nesse recurso e em que condições. Você deve especificar uma entidade principal em uma política baseada em recursos. Os diretores podem incluir contas, usuários, funções, usuários federados ou. Serviços da AWS

Para permitir o acesso entre contas, você pode especificar uma conta inteira ou as entidades do IAM em outra conta como a entidade principal em uma política baseada em atributo. Adicionar uma entidade principal entre contas à política baseada em atributo é apenas metade da tarefa de estabelecimento da relação de confiança. Quando o principal e o recurso são diferentes Contas da AWS, um administrador do IAM na conta confiável também deve conceder permissão à entidade principal (usuário ou função) para acessar o recurso. Eles concedem permissão ao anexar uma política baseada em identidade para a entidade. No entanto, se uma política baseada em atributo conceder acesso a uma entidade principal na mesma conta, nenhuma política baseada em identidade adicional será necessária. Para obter mais informações, consulte Como os perfis do IAM diferem de políticas baseadas em recursos no Guia do usuário do IAM.

AWS Cloud9 não oferece suporte a políticas baseadas em recursos, mas você ainda pode controlar as permissões de recursos do AWS Cloud9 ambiente para membros do AWS Cloud9 ambiente por meio da AWS Cloud9 API e AWS Cloud9 do IDE.

Ações políticas para AWS Cloud9

Oferece suporte a ações de políticas

Sim

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual entidade principal pode executar ações em quais recursos, e em que 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.

Incluem ações em uma política para conceder permissões para executar a operação associada.

Para ver uma lista de AWS Cloud9 ações, consulte Ações definidas por AWS Cloud9 na Referência de Autorização de Serviço.

As ações de política AWS Cloud9 usam o seguinte prefixo antes da ação:

account

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

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

Para ver exemplos de políticas AWS Cloud9 baseadas em identidade, consulte. Exemplos de políticas baseadas em identidade para o AWS Cloud9

Recursos políticos para AWS Cloud9

Oferece suporte a atributos de políticas

Sim

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual entidade principal pode executar ações em quais recursos, e em que 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": "*"

Para ver uma lista dos tipos de AWS Cloud9 recursos e seus ARNs, consulte Recursos definidos por AWS Cloud9 na Referência de Autorização de Serviço. Para saber com quais ações é possível especificar o ARN de cada atributo, consulte Ações definidas pelo AWS Cloud9.

Para ver exemplos de políticas AWS Cloud9 baseadas em identidade, consulte. Exemplos de políticas baseadas em identidade para o AWS Cloud9

Chaves de condição de política para AWS Cloud9

Suporta chaves de condição de política específicas de serviço

Sim

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual principal pode executar ações em quais recursos, e em que 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, AWS avalia a condição usando uma OR operação lógica. 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. Por exemplo, é possível conceder a um usuário do IAM permissão para acessar um atributo somente se ele estiver marcado com seu nome de usuário do IAM. 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 chaves de condição AWS globais, consulte as chaves de contexto de condição AWS global no Guia do usuário do IAM.

Para ver uma lista de chaves de AWS Cloud9 condição, consulte Chaves de condição AWS Cloud9 na Referência de autorização de serviço. Para saber com quais ações e recursos você pode usar uma chave de condição, consulte Ações definidas por AWS Cloud9.

Para ver exemplos de políticas AWS Cloud9 baseadas em identidade, consulte. Exemplos de políticas baseadas em identidade para o AWS Cloud9

ACLs em AWS Cloud9

Oferece suporte a ACLs

Não

As listas de controle de acesso (ACLs) controlam quais entidades principais (membros, usuários ou funções da conta) têm permissões para acessar um recurso. As ACLs são semelhantes as políticas baseadas em recursos, embora não usem o formato de documento de política JSON.

ABAC com AWS Cloud9

Oferece suporte a ABAC (tags em políticas)

Sim

O controle de acesso por atributo (ABAC) é uma estratégia de autorização que define permissões com base em atributos. Em AWS, esses atributos são chamados de tags. Você pode anexar tags a entidades do IAM (usuários ou funções) e a vários AWS recursos. A marcação de entidades e atributos é a primeira etapa do ABAC. Em seguida, você cria políticas de ABAC para permitir operações quando a tag da entidade principal corresponder à tag do recurso que ela estiver tentando acessar.

O ABAC é útil em ambientes que estão crescendo rapidamente e ajuda em situações em que o gerenciamento de políticas se torna um problema.

Para controlar o acesso baseado em tags, forneça informações sobre a tag no elemento de condição de uma política usando as chaves de condição aws:ResourceTag/key-name, aws:RequestTag/key-name ou aws:TagKeys.

Se um serviço oferecer suporte às três chaves de condição para todo tipo de recurso, o valor será Sim para o serviço. Se um serviço oferecer suporte às três chaves de condição somente para alguns tipos de recursos, o valor será Parcial.

Para obter mais informações sobre o ABAC, consulte O que é ABAC? no Guia do Usuário do IAM. Para visualizar um tutorial com etapas para configurar o ABAC, consulte Usar Controle de Acesso Baseado em Atributos (ABAC) no Guia do Usuário do IAM.

Usando credenciais temporárias com AWS Cloud9

Oferece suporte a credenciais temporárias

Sim

Alguns Serviços da AWS não funcionam quando você faz login usando credenciais temporárias. Para obter informações adicionais, incluindo quais Serviços da AWS funcionam com credenciais temporárias, consulte Serviços da AWS “Trabalhe com o IAM” no Guia do usuário do IAM.

Você está usando credenciais temporárias se fizer login AWS Management Console usando qualquer método, exceto um nome de usuário e senha. Por exemplo, quando você acessa AWS usando o link de login único (SSO) da sua empresa, esse processo cria automaticamente credenciais temporárias. Você também cria automaticamente credenciais temporárias quando faz login no console como usuário e, em seguida, alterna perfis. Para obter mais informações sobre como alternar funções, consulte Alternar para uma Função (Console) no Guia do Usuário do IAM.

Você pode criar manualmente credenciais temporárias usando a AWS API AWS CLI ou. Em seguida, você pode usar essas credenciais temporárias para acessar AWS. AWS recomenda que você gere credenciais temporárias dinamicamente em vez de usar chaves de acesso de longo prazo. Para mais informações, consulte Credenciais de segurança temporárias no IAM.

Sessões de acesso direto para AWS Cloud9

Suporte para o recurso Encaminhamento de sessões de acesso (FAS)

Sim

Quando você usa um usuário ou uma função do IAM para realizar ações AWS, você é considerado um principal. Ao usar alguns serviços, você pode executar uma ação que inicia outra ação em um serviço diferente. O FAS usa as permissões do diretor chamando um AWS service (Serviço da AWS), combinadas com a solicitação AWS service (Serviço da AWS) para fazer solicitações aos serviços posteriores. As solicitações do FAS são feitas somente quando um serviço recebe uma solicitação que requer interações com outros Serviços da AWS ou com recursos para ser concluída. Nesse caso, você precisa ter permissões para executar ambas as ações. Para obter detalhes da política ao fazer solicitações de FAS, consulte Encaminhamento de sessões de acesso.

Funções de serviço para AWS Cloud9

Suporta perfis de serviço

Sim

A função de serviço é uma função do IAM que um serviço assume para executar ações em seu nome. Um administrador do IAM pode criar, modificar e excluir um perfil de serviço do IAM. Para obter mais informações, consulte Criando um Perfil para Delegar Permissões a um AWS service (Serviço da AWS) no Guia do Usuário do IAM.

Atenção

Alterar as permissões de uma função de serviço pode interromper AWS Cloud9 a funcionalidade. Edite as funções de serviço somente quando AWS Cloud9 fornecer orientação para fazer isso.

Funções vinculadas a serviços para AWS Cloud9

Oferece suporte a perfis vinculados ao serviço

Sim

Uma função vinculada ao serviço é um tipo de função de serviço vinculada a um. AWS service (Serviço da AWS) O serviço pode assumir o perfil de executar uma ação em seu nome. As funções vinculadas ao serviço aparecem em você Conta da AWS e são de propriedade do serviço. Um administrador do IAM pode visualizar, mas não pode editar as permissões para perfis vinculados ao serviço.

Para obter detalhes sobre como criar ou gerenciar funções vinculadas a serviços, consulte AWS Serviços que Funcionam com o IAM. Encontre um serviço na tabela que inclua um Yes na coluna Função Vinculada ao Serviço.. Escolha o link Sim para visualizar a documentação do perfil vinculado a esse serviço .

Exemplos de políticas baseadas em identidade para o AWS Cloud9

Por padrão, usuários e funções não têm permissão para criar ou modificar recursos do AWS Cloud9 . Eles também não podem realizar tarefas usando a AWS API AWS Management Console, AWS Command Line Interface (AWS CLI) ou. Para conceder permissões de usuários para executar ações nos recursos que eles precisam, um administrador do IAM pode criar políticas do IAM. O administrador pode então adicionar as políticas do IAM aos perfis, e os usuários podem assumir os perfis.

Para saber como criar uma política baseada em identidade do IAM usando esses exemplos de documento de política JSON, consulte Criação de políticas do IAM no Guia do Usuário do IAM.

Para obter detalhes sobre ações e tipos de recursos definidos por AWS Cloud9, incluindo o formato dos ARNs para cada um dos tipos de recursos, consulte Ações, recursos e chaves de condição AWS Cloud9 na Referência de Autorização de Serviço.

Melhores práticas de política

As políticas baseadas em identidade determinam se alguém pode criar, acessar ou excluir AWS Cloud9 recursos em sua conta. Essas ações podem incorrer em custos para seus Conta da AWS. Ao criar ou editar políticas baseadas em identidade, siga estas diretrizes e recomendações:

  • Comece com as políticas AWS gerenciadas e avance para as permissões de privilégios mínimos — Para começar a conceder permissões aos seus usuários e cargas de trabalho, use as políticas AWS gerenciadas que concedem permissões para muitos casos de uso comuns. Eles estão disponíveis no seu Conta da AWS. Recomendamos que você reduza ainda mais as permissões definindo políticas gerenciadas pelo AWS cliente que sejam específicas para seus casos de uso. Para obter mais informações, consulte Políticas Gerenciadas pela AWS ou AWS Políticas Gerenciadas para Funções de Trabalho no Guia do Usuário do IAM.

  • Aplique permissões de privilégio mínimo: ao definir permissões com as políticas do IAM, conceda apenas as permissões necessárias para executar uma tarefa. Você faz isso definindo as ações que podem ser executadas em atributos específicos sob condições específicas, também conhecidas como permissões de privilégio mínimo. Para obter mais informações sobre como usar o IAM para aplicar permissões, consulte Políticas e Permissões no IAM no Guia do Usuário do IAM.

  • Utilize condições nas políticas do IAM para restringir ainda mais o acesso: você pode adicionar uma condição às políticas para limitar o acesso a ações e recursos. Por exemplo, você pode gravar uma condição de política para especificar que todas as solicitações devem ser enviadas usando SSL. Você também pode usar condições para conceder acesso às ações de serviço se elas forem usadas por meio de uma ação específica AWS service (Serviço da AWS), como AWS CloudFormation. Para obter mais informações, consulte Condição de Elementos de Política JSON do IAM no Guia do Usuário do IAM.

  • Use o IAM Access Analyzer para validar suas políticas do IAM para garantir permissões seguras e funcionais: o IAM Access Analyzer valida as políticas novas e existentes para que elas sigam o idioma de política do IAM (JSON) e as práticas recomendadas do IAM. O IAM Access Analyzer oferece mais de 100 verificações de política e ações recomendadas para ajudar você a criar políticas seguras e funcionais. Para obter mais informações, consulte Validação de Política do IAM Access Analyzer no Guia do Usuário do IAM.

  • Exigir autenticação multifator (MFA) — Se você tiver um cenário que exija usuários do IAM ou um usuário root, ative Conta da AWS a MFA para obter segurança adicional. Para exigir MFA quando as operações de API forem chamadas, adicione condições de MFA às suas políticas. Para obter mais informações, consulte Configurando Acesso à API Protegido por MFA no Guia do Usuário do IAM.

Para obter mais informações sobre as práticas recomendadas do IAM, consulte Práticas Recomendadas de Segurança no IAM no Guia do Usuário do IAM.

Usar o console do AWS Cloud9

Para acessar o AWS Cloud9 console, você deve ter um conjunto mínimo de permissões. Essas permissões devem permitir que você liste e visualize detalhes sobre os AWS Cloud9 recursos em seu Conta da AWS. Se você criar uma política baseada em identidade que seja mais restritiva do que as permissões mínimas necessárias, o console não funcionará como pretendido para entidades (usuários ou perfis) com essa política.

Você não precisa permitir permissões mínimas do console para usuários que estão fazendo chamadas somente para a API AWS CLI ou para a AWS API. Em vez disso, permita o acesso somente a ações que correspondam a operação de API que estiverem tentando executar.

Para garantir que usuários e funções ainda possam usar o AWS Cloud9 console, anexe também a política AWS Cloud9 ConsoleAccess ou a política ReadOnly AWS gerenciada às entidades. Para obter mais informações, consulte Adicionando Permissões a um Usuário no Guia do Usuário do IAM.

Permitir que usuários visualizem suas próprias permissões

Este exemplo mostra como criar uma política que permita que os usuários do IAM visualizem as políticas gerenciadas e em linha anexadas a sua identidade de usuário. Essa política inclui permissões para concluir essa ação no console ou programaticamente usando a API AWS CLI ou AWS .

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

Solução de problemas AWS Cloud9 de identidade e acesso

Use as informações a seguir para ajudá-lo a diagnosticar e corrigir problemas comuns que você pode encontrar ao trabalhar com AWS Cloud9 um IAM.

Não estou autorizado a realizar uma ação em AWS Cloud9

Se você receber uma mensagem de erro informando que não tem autorização para executar uma ação, suas políticas deverão ser atualizadas para permitir que você realize a ação.

O erro do exemplo a seguir ocorre quando o usuário do IAM mateojackson tenta usar o console para visualizar detalhes sobre um atributo my-example-widget fictício, mas não tem as permissões awes:GetWidget fictícias.

User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: awes:GetWidget on resource: my-example-widget

Nesse caso, a política do usuário mateojackson deve ser atualizada para permitir o acesso ao recurso my-example-widget usando a ação awes:GetWidget.

Se precisar de ajuda, entre em contato com seu AWS administrador. Seu administrador é a pessoa que forneceu suas credenciais de login.

Não estou autorizado a realizar iam: PassRole

Se você receber uma mensagem de erro informando que não está autorizado a executar a ação iam:PassRole, as suas políticas devem ser atualizadas para permitir que você passe uma função para o AWS Cloud9.

Alguns Serviços da AWS permitem que você passe uma função existente para esse serviço em vez de criar uma nova função de serviço ou uma função vinculada ao serviço. Para fazê-lo, você deve ter permissões para passar o perfil para o serviço.

O exemplo de erro a seguir ocorre quando uma usuária do IAM chamada marymajor tenta utilizar o console para executar uma ação no AWS Cloud9. No entanto, a ação exige que o serviço tenha permissões concedidas por um perfil de serviço. Mary não tem permissões para passar o perfil para o serviço.

User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole

Nesse caso, as políticas de Mary devem ser atualizadas para permitir que ela realize a ação iam:PassRole.

Se precisar de ajuda, entre em contato com seu AWS administrador. Seu administrador é a pessoa que forneceu suas credenciais de login.

Quero permitir que pessoas fora da minha Conta da AWS acessem meus AWS Cloud9 recursos

Você pode criar uma função que os usuários de outras contas ou pessoas fora da sua organização possam usar para acessar seus recursos. Você pode especificar quem é confiável para assumir o perfil. Para serviços que oferecem suporte a políticas baseadas em recursos ou listas de controle de acesso (ACLs), você pode usar políticas para conceder às pessoas acesso aos seus recursos.

Para saber mais, consulte:

Como AWS Cloud9 funciona com recursos e operações do IAM

AWS Identity and Access Management é usado para gerenciar as permissões que permitem que você trabalhe com ambientes de AWS Cloud9 desenvolvimento Serviços da AWS e outros recursos.

AWS Cloud9 recursos e operações

Em AWS Cloud9, o recurso principal é um ambiente AWS Cloud9 de desenvolvimento. Em uma política, você usa um Nome de recurso da Amazon (ARN) para identificar o recurso a que a política se aplica. A tabela a seguir lista ARNs de ambiente. Para obter mais informações, consulte Nomes de recursos da Amazon (ARNs) e namespaces de serviço da AWS no Referência geral da Amazon Web Services.

Tipo de recurso Formato ARN

Ambiente

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

Todo ambiente de propriedade da conta especificada na Região da AWS especificada

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:*

Todo ambiente de propriedade da conta determinada na região especificada

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:*

Todos os AWS Cloud9 recursos, independentemente da conta e da região

arn:aws:cloud9:*

Por exemplo, você pode indicar um ambiente específico na instrução usando o nome do recurso da Amazon (ARN), da forma a seguir.

"Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:70d899206236474f9590d93b7c41dfEX"

Para especificar todos os recursos, use o caractere curinga (*) no elemento Resource.

"Resource": "*"

Para especificar vários recursos em uma única instrução, separe os nomes de recurso da Amazon (ARNs) com vírgulas.

"Resource": [ "arn:aws:cloud9:us-east-2:123456789012:environment:70d899206236474f9590d93b7c41dfEX", "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" ]

AWS Cloud9 fornece um conjunto de operações para trabalhar com AWS Cloud9 recursos. Para obter uma lista, consulte AWS Cloud9 referência de permissões.

Informações sobre propriedade de recursos

A Conta da AWS conta é proprietária dos recursos criados na conta, independentemente de quem criou os recursos.

Considere os seguintes casos de uso e cenários:

  • Suponha que você use as credenciais da sua conta raiz Conta da AWS para criar um ambiente de AWS Cloud9 desenvolvimento. Embora seja possível, isso não é recomendado. Nesse caso, você Conta da AWS é o proprietário do ambiente.

  • Suponha que você crie um usuário do IAM no seu Conta da AWS e conceda permissões para criar um ambiente para esse usuário. O usuário poderá criar um ambiente. No entanto, o seu Conta da AWS, ao qual o usuário pertence, ainda é dono do ambiente.

  • Suponha que você crie uma função do IAM em sua Conta da AWS com permissões para criar um ambiente. Qualquer pessoa capaz de assumir o perfil poderá criar um ambiente. Sua Conta da AWS, à qual a função pertence, é a proprietária do ambiente.

nota

Se você excluir uma conta de usuário que seja proprietária do ARN de um ou mais AWS Cloud9 ambientes, esses ambientes não terão proprietário. Uma solução alternativa para esse cenário é usar o AWS Cloud9 SDK para adicionar outro usuário do IAM com privilégios de leitura e gravação usando a CreateEnvironmentMembership ação e o EnvironmentMember tipo de dados. Depois de adicionar esse usuário do IAM, você pode copiar os arquivos do ambiente para novos AWS Cloud9 ambientes e tornar esse proprietário o proprietário do ARN. Para obter mais informações sobre essa ação, consulte e CreateEnvironmentMembership, para obter mais informações sobre esse tipo de dados, consulte EnvironmentMembero Guia de referência da AWS Cloud9 API.

Gerenciamento de acesso aos recursos

A política de permissões descreve quem possui acesso a quais recursos.

nota

Esta seção aborda o uso do IAM no AWS Cloud9. Não são fornecidas informações detalhadas sobre o serviço IAM. Para obter a documentação completa do IAM, consulte O que é IAM? no Manual do usuário do IAM. Para obter informações sobre a sintaxe e as descrições da política do IAM, consulte a Referência da política JSON do IAM no Manual do usuário do IAM.

As políticas anexadas a uma identidade do IAM são chamadas de políticas baseadas em identidade (ou políticas do IAM). As políticas anexadas a um recurso são chamadas de políticas baseadas em recursos. AWS Cloud9 oferece suporte a políticas baseadas em identidade e em recursos.

Cada uma das ações da API a seguir requer que apenas uma política do IAM seja associada à identidade do IAM que deseja chamar estas ações da API:

  • CreateEnvironmentEC2

  • DescribeEnvironments

As seguintes ações da API exigem uma política baseada em recursos. Uma política do IAM não é necessária, mas AWS Cloud9 usa uma política do IAM se ela estiver anexada à identidade do IAM que deseja chamar essas ações da API. A política baseada em recursos deve ser aplicada ao recurso desejado AWS Cloud9 :

  • CreateEnvironmentMembership

  • DeleteEnvironment

  • DeleteEnvironmentMembership

  • DescribeEnvironmentMemberships

  • DescribeEnvironmentStatus

  • UpdateEnvironment

  • UpdateEnvironmentMembership

Para obter mais informações sobre o que cada uma dessas ações da API faz, consulte a Referência da API do AWS Cloud9 .

Você não pode anexar uma política baseada em recursos diretamente a um AWS Cloud9 recurso. Em vez disso, AWS Cloud9 anexa as políticas apropriadas baseadas em AWS Cloud9 recursos aos recursos à medida que você adiciona, modifica, atualiza ou exclui membros do ambiente.

Para conceder a um usuário permissões para realizar ações em AWS Cloud9 recursos, você anexa uma política de permissões a um grupo do IAM ao qual o usuário pertence. Recomendamos que você anexe uma política AWS gerenciada (predefinida) AWS Cloud9 sempre que possível. AWS as políticas gerenciadas contêm conjuntos predefinidos de permissões de acesso para cenários de uso e tipos de usuários comuns, como administração completa de um ambiente, usuários do ambiente e usuários que têm acesso somente de leitura a um ambiente. Para obter uma lista de políticas AWS gerenciadas para AWS Cloud9, consulteAWS políticas gerenciadas para AWS Cloud9.

Para obter mais detalhes sobre os cenários de uso e os tipos de usuário exclusivos, crie e anexe suas próprias políticas gerenciadas pelo cliente. Consulte Opções de configuração adicionais para o AWS Cloud9 (Team e Enterprise) e Criação de políticas gerenciadas pelo cliente para AWS Cloud9.

Para anexar uma política do IAM (AWS gerenciada ou gerenciada pelo cliente) a uma identidade do IAM, consulte Anexar políticas do IAM (console) no Guia do usuário do IAM.

Permissões de sessão para operações de API

Ao usar a AWS API AWS CLI ou para criar programaticamente uma sessão temporária para uma função ou usuário federado, você pode transmitir políticas de sessão como um parâmetro para ampliar o escopo da sessão de função. Isso significa que as permissões efetivas da sessão são a interseção das políticas baseadas em identidade da função e das políticas de sessão.

Quando uma solicitação é feita para acessar um recurso durante uma sessão, se não houver uma declaração Deny, nem uma declaração Allow aplicável na política da sessão, o resultado da avaliação da política será uma negação implícita. (Para obter mais informações, consulte Determining whether a request is allowed or denied within an account (Como determinar se uma solicitação é permitida ou negada) no Manual do Usuário do IAM.

Porém, para operações de AWS Cloud9 API que exigem uma política baseada em recursos (veja acima), as permissões são concedidas à entidade do IAM que está chamando se ela for especificada como Principal na política de recursos. Essa permissão explícita tem precedência sobre a negação implícita da política de sessão, permitindo que a sessão chame a operação da API com sucesso. AWS Cloud9

AWS políticas gerenciadas para AWS Cloud9

Uma política AWS gerenciada é uma política autônoma criada e administrada por AWS. AWS as políticas gerenciadas são projetadas para fornecer permissões para muitos casos de uso comuns, para que você possa começar a atribuir permissões a usuários, grupos e funções.

Lembre-se de que as políticas AWS gerenciadas podem não conceder permissões de privilégio mínimo para seus casos de uso específicos porque elas estão disponíveis para uso de todos os AWS clientes. Recomendamos que você reduza ainda mais as permissões definindo políticas gerenciadas pelo cliente da  específicas para seus casos de uso.

Você não pode alterar as permissões definidas nas políticas AWS gerenciadas. Se AWS atualizar as permissões definidas em uma política AWS gerenciada, a atualização afetará todas as identidades principais (usuários, grupos e funções) às quais a política está anexada. AWS é mais provável que atualize uma política AWS gerenciada quando uma nova AWS service (Serviço da AWS) é lançada ou novas operações de API são disponibilizadas para serviços existentes.

Para mais informações, consulte Políticas gerenciadas pela AWS no Manual do usuário do IAM.

AWS política gerenciada: AWSCloud9Administrator

É possível anexar a política AWSCloud9Administrator a suas identidades do IAM.

Essa política concede permissões administrativas que fornecem acesso ao administrador AWS Cloud9 a.

Detalhes das permissões

Esta política inclui as seguintes permissões:

  • AWS Cloud9 — Todas as AWS Cloud9 ações em suas Conta da AWS.

  • Amazon EC2 — Obtenha informações sobre vários recursos da Amazon VPC e de sub-rede em seus. Conta da AWS

  • IAM — Obtenha informações sobre os usuários do IAM e crie a função AWS Cloud9 vinculada ao serviço neles Conta da AWS conforme necessário. Conta da AWS

  • Systems Manager— Permite que o usuário chame StartSession para iniciar uma conexão com uma instância para uma sessão do Session Manager. Essa permissão é necessária para usuários que abrem um ambiente que se comunica com sua instância do EC2 por meio do Systems Manager. Para obter mais informações, consulte Acessar instâncias do EC2 sem entrada com o AWS Systems Manager

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:*", "iam:GetUser", "iam:ListUsers", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeRouteTables" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:GetConnectionStatus" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ssm:resourceTag/aws:cloud9:environment": "*" }, "StringEquals": { "aws:CalledViaFirst": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ] } ] }

AWS política gerenciada: AWSCloud9User

É possível anexar a política AWSCloud9User a suas identidades do IAM.

Esta política concede permissões ao usuário para criar ambientes de desenvolvimento do AWS Cloud9 e para gerenciar ambientes próprios.

Detalhes da permissão

Esta política inclui as seguintes permissões:

  • AWS Cloud9 — crie e obtenha informações sobre seus ambientes e obtenha e altere as configurações do usuário em seus ambientes.

  • Amazon EC2 — Obtenha informações sobre vários recursos da Amazon VPC e de sub-rede em seus. Conta da AWS

  • IAM — Obtenha informações sobre os usuários do IAM e crie a função AWS Cloud9 vinculada ao serviço neles Conta da AWS conforme necessário. Conta da AWS

  • Systems Manager— Permite que o usuário chame StartSession para iniciar uma conexão com uma instância para uma sessão do Session Manager. Essa permissão é necessária para usuários que abrem um ambiente que se comunica com sua instância do EC2 por meio do Systems Manager. Para obter mais informações, consulte Acessar instâncias do EC2 sem entrada com o AWS Systems Manager

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:UpdateUserSettings", "cloud9:GetUserSettings", "iam:GetUser", "iam:ListUsers", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeRouteTables" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloud9:CreateEnvironmentEC2", "cloud9:CreateEnvironmentSSH" ], "Resource": "*", "Condition": { "Null": { "cloud9:OwnerArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:GetUserPublicKey" ], "Resource": "*", "Condition": { "Null": { "cloud9:UserArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:DescribeEnvironmentMemberships" ], "Resource": [ "*" ], "Condition": { "Null": { "cloud9:UserArn": "true", "cloud9:EnvironmentId": "true" } } }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:GetConnectionStatus" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ssm:resourceTag/aws:cloud9:environment": "*" }, "StringEquals": { "aws:CalledViaFirst": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ] } ] }

AWS política gerenciada: AWSCloud9EnvironmentMember

É possível anexar a política AWSCloud9EnvironmentMember a suas identidades do IAM.

Essa política concede permissões de associação que permitem ingressar em um ambiente AWS Cloud9 compartilhado.

Detalhes de permissão

Esta política inclui as seguintes permissões:

  • AWS Cloud9 — obtenha informações sobre seus ambientes e obtenha e altere as configurações do usuário para seus ambientes.

  • IAM — Obtenha informações sobre os usuários do IAM e crie a função AWS Cloud9 vinculada ao serviço neles Conta da AWS conforme necessário. Conta da AWS

  • Systems Manager— Permite que o usuário chame StartSession para iniciar uma conexão com uma instância para uma sessão do Session Manager. Essa permissão é necessária para usuários que abrem um ambiente que se comunica com sua instância do EC2 por meio do Systems Manager. Para obter mais informações, consulte Acessar instâncias do EC2 sem entrada com o AWS Systems Manager

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:GetUserSettings", "cloud9:UpdateUserSettings", "iam:GetUser", "iam:ListUsers" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloud9:DescribeEnvironmentMemberships" ], "Resource": [ "*" ], "Condition": { "Null": { "cloud9:UserArn": "true", "cloud9:EnvironmentId": "true" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:GetConnectionStatus" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ssm:resourceTag/aws:cloud9:environment": "*" }, "StringEquals": { "aws:CalledViaFirst": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ] } ] }

AWS política gerenciada: AWSCloud9ServiceRolePolicy

A função AWSServiceRoleForAWSCloud9 vinculada ao serviço usa essa política para permitir que o AWS Cloud9 ambiente interaja com o Amazon AWS CloudFormation EC2 e os recursos.

Detalhes da permissão

Isso AWSCloud9ServiceRolePolicyconcede aos AWSServiceRoleForAWSCloud 9 as permissões necessárias AWS Cloud9 para permitir a interação com o Serviços da AWS (Amazon EC2 e AWS CloudFormation) que são necessárias para criar e executar ambientes de desenvolvimento.

AWS Cloud9 define as permissões de suas funções vinculadas ao serviço e só AWS Cloud9 pode assumir suas funções. As permissões definidas incluem a política de confiança e a política de permissões, que não pode ser anexada a nenhuma outra entidade do IAM.

Para obter mais informações sobre como AWS Cloud9 usa funções vinculadas a serviços, consulte. Usar funções vinculadas ao serviço do AWS Cloud9

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:RunInstances", "ec2:CreateSecurityGroup", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "cloudformation:CreateStack", "cloudformation:DescribeStacks", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStackResources" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:TerminateInstances", "ec2:DeleteSecurityGroup", "ec2:AuthorizeSecurityGroupIngress" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloudformation:DeleteStack" ], "Resource": "arn:aws:cloudformation:*:*:stack/aws-cloud9-*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:security-group/*" ], "Condition": { "StringLike": { "aws:RequestTag/Name": "aws-cloud9-*" } } }, { "Effect": "Allow", "Action": [ "ec2:StartInstances", "ec2:StopInstances" ], "Resource": "*", "Condition": { "StringLike": { "ec2:ResourceTag/aws:cloudformation:stack-name": "aws-cloud9-*" } } }, { "Effect": "Allow", "Action": [ "ec2:StartInstances", "ec2:StopInstances" ], "Resource": [ "arn:aws:license-manager:*:*:license-configuration:*" ] }, { "Effect": "Allow", "Action": [ "iam:ListInstanceProfiles", "iam:GetInstanceProfile" ], "Resource": [ "arn:aws:iam::*:instance-profile/cloud9/*" ] }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole" ], "Condition": { "StringLike": { "iam:PassedToService": "ec2.amazonaws.com" } } } ] }

AWS Cloud9 atualizações nas políticas AWS gerenciadas

Veja detalhes sobre as atualizações das políticas AWS gerenciadas AWS Cloud9 desde que esse serviço começou a rastrear essas alterações. Para receber alertas automáticos sobre alterações nessa página, assine o feed RSS na página Histórico do AWS Cloud9 documento.

Alteração Descrição Data

Uma nova ação AWSCloud9Administratore AWSCloud9EnvironmentMemberpolíticas foram AWSCloud9Useradicionadas.

A ssm:GetConnectionStatus ação foi adicionada AWSCloud9UserAWSCloud9Administratoràs AWSCloud9EnvironmentMemberpolíticas. Essa ação concederá aos usuários as permissões para verificar o status da conexão SSM. A cloud9:ValidateEnvironmentName API foi removida da AWSCloud9Userpolítica porque está obsoleta.

12 de outubro de 2023

APIs adicionadas AWSCloud9Usere AWSCloud9Administratorpolíticas.

Duas novas APIs foram adicionadas às AWSCloud9Administratorpolíticas AWSCloud9Usere, essas APIs são ec2:DescribeInstanceTypeOfferings ec2:DescribeRouteTables e. O objetivo dessas APIs é permitir AWS Cloud9 validar se a sub-rede padrão é compatível com o tipo de instância escolhido pelo cliente ao criar um AWS Cloud9 ambiente.

2 de agosto de 2023

Atualizar para AWSCloud9ServiceRolePolicy

AWSCloud9ServiceRolePolicyfoi atualizado AWS Cloud9 para permitir iniciar e interromper instâncias do Amazon EC2 que são gerenciadas pelas configurações de licença do License Manager.

12 de janeiro de 2022

AWS Cloud9 começou a rastrear alterações

AWS Cloud9 começou a rastrear as mudanças em suas políticas AWS gerenciadas.

15 de março de 2021

Criação de políticas gerenciadas pelo cliente para AWS Cloud9

Se nenhuma das políticas AWS gerenciadas atender aos seus requisitos de controle de acesso, você poderá criar e anexar suas próprias políticas gerenciadas pelo cliente.

Para criar uma política gerenciada pelo cliente, consulte Create an IAM Policy (Console) (Criar uma política do IAM, console) no Manual do usuário do IAM.

Especificar elementos da política: efeitos, principais, ações e recursos

Para cada AWS Cloud9 recurso, o serviço define um conjunto de operações de API. Para conceder permissões para essas operações de API, AWS Cloud9 defina um conjunto de ações que você pode especificar em uma política.

Estes são os elementos de política básicos:

  • Effect – Especifique o efeito, permitir ou negar, quando o usuário solicitar a ação. Se você não conceder (permitir) explicitamente acesso a um recurso, o acesso estará implicitamente negado. Você também pode negar acesso explicitamente a um recurso. Faça isso para garantir que um usuário não acesse um recurso, mesmo quando uma política diferente conceder o acesso.

  • Principal – Em políticas baseadas em identidade (políticas do IAM), o usuário ao qual a política está anexada é o principal implícito. Para as políticas baseadas em recursos, você especifica o usuário, conta, serviço ou outra entidade a receber permissões.

  • Resource: use um nome do recurso da Amazon (ARN) para identificar o recurso ao qual a política se aplica.

  • Action – Use palavras-chave para identificar as operações de recurso que você quer permitir ou negar. Por exemplo, a permissão cloud9:CreateEnvironmentEC2 permite que o usuário execute a operação CreateEnvironmentEC2.

Para saber mais sobre a sintaxe e as descrições de políticas do IAM, consulte a Referência da política JSON do IAM no Manual do usuário do IAM.

Para ver uma tabela mostrando todas as ações da AWS Cloud9 API e os recursos aos quais elas se aplicam, consulte AWS Cloud9 referência de permissões o.

Exemplos de política gerenciada pelo cliente

Nesta seção, encontre exemplos de políticas que concedem permissões para ações do AWS Cloud9 . Adapte as políticas do IAM de exemplo a seguir para permitir ou negar explicitamente o acesso ao AWS Cloud9 para suas identidades do IAM.

Para criar ou anexar uma política gerenciada pelo cliente a uma identidade do IAM, consulte Criar uma política do IAM (console) e Anexar políticas do IAM (console) no Manual do usuário do IAM.

nota

Os exemplos a seguir usam a região Leste dos EUA (Ohio) (us-east-2), uma ID fictícia (123456789012) e uma Conta da AWS ID de ambiente de AWS Cloud9 desenvolvimento fictícia (). 81e900317347585a0601e04c8d52eaEX

Obter informações sobre ambientes

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, permite que essa entidade obtenha informações sobre todos os ambientes na conta.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:DescribeEnvironments", "Resource": "*" } ] }
nota

A permissão de acesso anterior já está incluída nas políticas AWS gerenciadas AWSCloud9Administrator e. AWSCloud9User

Criar ambientes EC2

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, permite que essa entidade crie ambientes de desenvolvimento AWS Cloud9 EC2 em sua conta.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*" } ] }
nota

A permissão de acesso anterior já está incluída nas políticas AWS gerenciadas AWSCloud9Administrator e. AWSCloud9User

Criar ambientes EC2 com tipos específicos de instância do Amazon EC2

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, permite que essa entidade crie ambientes de desenvolvimento AWS Cloud9 EC2 em sua conta. No entanto, os ambientes EC2 podem usar somente a classe especificada dos tipos de instância do Amazon EC2.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*", "Condition": { "StringLike": { "cloud9:InstanceType": "t3.*" } } } ] }
nota

Se a política AWS gerenciada AWSCloud9Administrator ou já AWSCloud9User estiver anexada à entidade do IAM, essa política AWS gerenciada substituirá o comportamento da declaração de política anterior do IAM. Isso ocorre porque essas políticas AWS gerenciadas são mais permissivas.

Criar ambientes do EC2 em sub-redes específicas da Amazon VPC

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, permite que essa entidade crie ambientes de desenvolvimento AWS Cloud9 EC2 em sua conta. No entanto, os ambientes EC2 podem usar somente as sub-redes especificadas da Amazon VPC.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*", "Condition": { "StringLike": { "cloud9:SubnetId": [ "subnet-12345678", "subnet-23456789" ] } } } ] }
nota

Se a política AWS gerenciada AWSCloud9Administrator ou já AWSCloud9User estiver anexada à entidade do IAM, essa política AWS gerenciada substituirá o comportamento da declaração de política anterior do IAM. Isso ocorre porque essas políticas AWS gerenciadas são mais permissivas.

Criar um ambiente EC2 com um nome de ambiente específico

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, permite que essa entidade crie um ambiente de desenvolvimento do AWS Cloud9 EC2 em sua conta. No entanto, o ambiente EC2 pode usar apenas o nome especificado.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*", "Condition": { "StringEquals": { "cloud9:EnvironmentName": "my-demo-environment" } } } ] }
nota

Se a política AWS gerenciada AWSCloud9Administrator ou já AWSCloud9User estiver anexada à entidade do IAM, essa política AWS gerenciada substituirá o comportamento da declaração de política anterior do IAM. Isso ocorre porque essas políticas AWS gerenciadas são mais permissivas.

Criar somente ambientes SSH

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, permite que essa entidade crie ambientes de desenvolvimento AWS Cloud9 SSH em sua conta. No entanto, a entidade não pode criar ambientes de desenvolvimento AWS Cloud9 EC2.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:CreateEnvironmentSSH", "Resource": "*" }, { "Effect": "Deny", "Action": "cloud9:CreateEnvironmentEC2", "Resource": "*" } ] }

Atualizar ambientes ou impedir a atualização de um ambiente

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, permite que essa entidade altere as informações sobre qualquer ambiente de AWS Cloud9 desenvolvimento em sua conta.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:UpdateEnvironment", "Resource": "*" } ] }
nota

A permissão de acesso anterior já está incluída na política AWS AWSCloud9Administrator gerenciada.

O exemplo de instrução de política do IAM a seguir, anexado a uma entidade do IAM, impede explicitamente que essa entidade altere as informações sobre o ambiente com o nome do recurso da Amazon (ARN) especificado.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "cloud9:UpdateEnvironment", "Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" } ] }

Obter listas de membros do ambiente

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, permite que essa entidade obtenha uma lista de membros para todos os ambientes na conta.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:DescribeEnvironmentMemberships", "Resource": "*" } ] }
nota

A permissão de acesso anterior já está incluída na política AWS AWSCloud9Administrator gerenciada. Além disso, a permissão de acesso anterior é mais permissiva do que a permissão de acesso equivalente na política gerenciada AWS . AWSCloud9User

Compartilhar ambientes somente com um usuário específico

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, permite que essa entidade compartilhe todos os ambientes na conta com somente usuários especificados.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:CreateEnvironmentMembership" ], "Resource": "*", "Condition": { "StringEquals": { "cloud9:UserArn": "arn:aws:iam::123456789012:user/MyDemoUser" } } } ] }
nota

Se a política AWS gerenciada AWSCloud9Administrator ou já AWSCloud9User estiver anexada à entidade do IAM, essas políticas AWS gerenciadas substituirão o comportamento da declaração de política anterior do IAM. Isso ocorre porque essas políticas AWS gerenciadas são mais permissivas.

Impedir o compartilhamento de ambientes

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, impede que essa entidade compartilhe qualquer ambiente na conta.

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

Alterar ou impedir a alteração das configurações de membros do ambiente

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, permite que essa entidade altere as configurações de membros em qualquer ambiente da conta.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:UpdateEnvironmentMembership", "Resource": "*" } ] }
nota

A permissão de acesso anterior já está incluída na política AWS AWSCloud9Administrator gerenciada.

O exemplo de instrução de política do IAM a seguir, anexado a uma entidade do IAM, impede explicitamente que essa entidade altere as configurações de membros no ambiente com o nome do recurso da Amazon (ARN) especificado.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "cloud9:UpdateEnvironmentMembership", "Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" } ] }

Remover ou impedir a remoção de membros do ambiente

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, permite que essa entidade remova todos os ambientes da conta.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:DeleteEnvironmentMembership", "Resource": "*" } ] }
nota

A permissão de acesso anterior já está incluída na política AWS AWSCloud9Administrator gerenciada.

O exemplo de instrução de política do IAM a seguir, anexado a uma entidade do IAM, impede explicitamente que essa entidade remova membros do ambiente com o nome do recurso da Amazon (ARN) especificado.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "cloud9:DeleteEnvironmentMembership", "Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" } ] }

Excluir ou impedir a exclusão de um ambiente

O exemplo de declaração de política do IAM a seguir, anexado a uma entidade do IAM, permite que essa entidade exclua todos os ambientes de na conta.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cloud9:DeleteEnvironment", "Resource": "*" } ] }
nota

A permissão de acesso anterior já está incluída na política AWS AWSCloud9Administrator gerenciada.

O exemplo de instrução de política do IAM a seguir, anexado a uma entidade do IAM, impede explicitamente que essa entidade exclua o ambiente com o nome do recurso da Amazon (ARN) especificado.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "cloud9:DeleteEnvironment", "Resource": "arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX" } ] }

Política de IAM personalizada para criação de ambiente SSM

Há um problema de permissões atual que ocorre ao criar um ambiente SSM com as políticas AWSCloud9Administrator ou AWSCloud9User anexadas. O exemplo de declaração de política do IAM a seguir, quando anexado a uma entidade do IAM, permite que os usuários anexem e usem a política AWS gerenciada AWSCloud9Administrator ouAWSCloud9User.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:UpdateUserSettings", "cloud9:GetUserSettings", "iam:GetUser", "iam:ListUsers", "iam:ListRoles", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeRouteTables" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloud9:CreateEnvironmentEC2", "cloud9:CreateEnvironmentSSH" ], "Resource": "*", "Condition": { "Null": { "cloud9:OwnerArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:GetUserPublicKey" ], "Resource": "*", "Condition": { "Null": { "cloud9:UserArn": "true" } } }, { "Effect": "Allow", "Action": [ "cloud9:DescribeEnvironmentMemberships" ], "Resource": [ "*" ], "Condition": { "Null": { "cloud9:UserArn": "true", "cloud9:EnvironmentId": "true" } } }, { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": "ssm:StartSession", "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ssm:resourceTag/aws:cloud9:environment": "*" }, "StringEquals": { "aws:CalledViaFirst": "cloud9.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ] }, { "Effect": "Allow", "Action": ["iam:ListInstanceProfilesForRole", "iam:CreateRole"], "Resource": ["arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole"] }, { "Effect": "Allow", "Action": ["iam:AttachRolePolicy"], "Resource": ["arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole"], "Condition": { "StringEquals": { "iam:PolicyARN": "arn:aws:iam::aws:policy/AWSCloud9SSMInstanceProfile" } } }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole", "Condition": { "StringEquals": { "iam:PassedToService": "ec2.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "iam:CreateInstanceProfile", "iam:AddRoleToInstanceProfile" ], "Resource": [ "arn:aws:iam::*:instance-profile/cloud9/AWSCloud9SSMInstanceProfile" ] } ] }

AWS Cloud9 referência de permissões

Você pode usar chaves AWS de condição amplas em suas AWS Cloud9 políticas para expressar condições. Para obter mais informações, consulte IAM JSON Policy Elements: Condition (Elementos da política JSON do IAM: condição) no Manual do usuário do IAM.

Você especifica as ações no campo Action das políticas. Para especificar uma ação, use o prefixo cloud9: seguido do nome da operação da API (por exemplo, "Action": "cloud9:DescribeEnvironments"). Para especificar várias ações em uma única declaração, separe-as com vírgulas (por exemplo, "Action": [ "cloud9:UpdateEnvironment", "cloud9:DeleteEnvironment" ]).

Usando caracteres curinga

Especifique um ARN, com ou sem um caractere curinga (*), como o valor do recurso no campo Resource da política. Você pode usar um curinga para especificar várias ações ou recursos. Por exemplo, cloud9:* especifica todas as AWS Cloud9 ações e cloud9:Describe* especifica todas as AWS Cloud9 ações que começam com. Describe

O exemplo a seguir permite que uma entidade do IAM obtenha informações sobre ambientes e associações de ambientes para qualquer ambiente da conta.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloud9:Describe*" ], "Resource": "*" } ] }
nota

A permissão de acesso anterior já está incluída na política AWS AWSCloud9Administrator gerenciada. Além disso, a permissão de acesso anterior é mais permissiva do que a permissão de acesso equivalente na política gerenciada AWS . AWSCloud9User

AWS Cloud9 Operações de API e permissões necessárias para ações

nota

É possível usar a tabela a seguir como referência ao configurar o controle de acesso e escrever políticas de permissões que podem ser associadas a uma identidade do IAM (políticas baseadas em identidade).

A tabela Public API operations lista as operações de API que podem ser chamadas por clientes usando SDKs e a tabela AWS Command Line Interface.

O Permission-only API operations lista as operações de API que não são diretamente chamadas pelo código do cliente ou pelo AWS Command Line Interface. Porém, os usuários do IAM exigem permissões para essas operações que são chamadas quando as ações do AWS Cloud9 são executadas usando o console.

Operações públicas de API
AWS Cloud9 operação Permissão necessária (ação da API) Recurso

CreateEnvironmentEC2

cloud9:CreateEnvironmentEC2

Necessário para criar um ambiente de desenvolvimento AWS Cloud9 EC2.

*

CreateEnvironmentMembership

cloud9:CreateEnvironmentMembership

Necessário para adicionar um membro a um ambiente.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

DeleteEnvironment

cloud9:DeleteEnvironment

Necessário para excluir um ambiente.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

DeleteEnvironmentMembership

cloud9:DeleteEnvironmentMembership

Necessário para remover um membro de um ambiente.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

DescribeEnvironmentMemberships

cloud9:DescribeEnvironmentMemberships

Necessário para obter uma lista de membros em um ambiente.

*

DescribeEnvironments

cloud9:DescribeEnvironments

Necessário para obter informações sobre um ambiente.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

DescribeEnvironmentStatus

cloud9:DescribeEnvironmentStatus

Necessário para obter informações sobre o status de um ambiente.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

UpdateEnvironment

cloud9:UpdateEnvironment

Necessário para atualizar as configurações de um ambiente.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

UpdateEnvironmentMembership

cloud9:UpdateEnvironmentMembership

Necessário para atualizar as configurações de um membro em um ambiente.

arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:ENVIRONMENT_ID

Operações de API somente de permissão
AWS Cloud9 operação Descrição Documentação do console

ActivateEC2Remote

cloud9:ActivateEC2Remote

Inicia a instância do Amazon EC2 à qual seu AWS Cloud9 IDE se conecta.

Abrir um ambiente no AWS Cloud9

CreateEnvironmentSSH

cloud9:CreateEnvironmentSSH

Cria um ambiente de desenvolvimento AWS Cloud9 SSH.

Criar um ambiente SSH

CreateEnvironmentToken

cloud9:CreateEnvironmentToken

Cria um token de autenticação que permite uma conexão entre o IDE do AWS Cloud9 e o ambiente do usuário.

Criar um ambiente EC2

DescribeEC2Remote

cloud9:DescribeEC2Remote

Obtém detalhes sobre a conexão com o ambiente de desenvolvimento EC2, incluindo host, usuário e porta.

Criar um ambiente EC2

DescribeSSHRemote

cloud9:DescribeSSHRemote

Obtém detalhes sobre a conexão com o ambiente de desenvolvimento do SSH, incluindo host, usuário e porta.

Criar um ambiente SSH

GetEnvironmentConfig

cloud9:GetEnvironmentConfig

Obtém informações de configuração que são usadas para inicializar o IDE do AWS Cloud9 .

Trabalhar com o Ambiente de desenvolvimento integrado (IDE) do AWS Cloud9

GetEnvironmentSettings

cloud9:GetEnvironmentSettings

Obtém as configurações do AWS Cloud9 IDE para um ambiente de desenvolvimento especificado.

Trabalhar com o Ambiente de desenvolvimento integrado (IDE) do AWS Cloud9

GetMembershipSettings

cloud9:GetMembershipSettings

Obtém as configurações do AWS Cloud9 IDE para um membro do ambiente especificado.

Trabalhar com ambientes compartilhados no AWS Cloud9

GetUserPublicKey

cloud9:GetUserPublicKey

Obtém a chave SSH pública do usuário, que é usada AWS Cloud9 para se conectar aos ambientes de desenvolvimento SSH.

Criar um ambiente SSH

GetUserSettings

cloud9:GetUserSettings

Obtém as configurações do AWS Cloud9 IDE para um usuário especificado.

Trabalhar com o Ambiente de desenvolvimento integrado (IDE) do AWS Cloud9

ModifyTemporaryCredentialsOnEnvironmentEC2

cloud9:ModifyTemporaryCredentialsOnEnvironmentEC2

Define credenciais temporárias AWS gerenciadas na instância do Amazon EC2 que é usada pelo AWS Cloud9 ambiente de desenvolvimento integrado (IDE).

AWS credenciais temporárias gerenciadas

UpdateEnvironmentSettings

cloud9:UpdateEnvironmentSettings

Atualiza as configurações do AWS Cloud9 IDE para um ambiente de desenvolvimento especificado.

Trabalhar com o Ambiente de desenvolvimento integrado (IDE) do AWS Cloud9

UpdateMembershipSettings

cloud9:UpdateMembershipSettings

Atualiza as configurações do AWS Cloud9 IDE para um membro do ambiente especificado.

Trabalhar com ambientes compartilhados no AWS Cloud9

UpdateSSHRemote

cloud9:UpdateSSHRemote

Atualiza detalhes sobre a conexão com o ambiente de desenvolvimento SSH, incluindo host, usuário e porta.

Criar um ambiente SSH

UpdateUserSettings

cloud9:UpdateUserSettings

Atualiza as configurações do AWS Cloud9 IDE para um usuário especificado.

Trabalhar com o Ambiente de desenvolvimento integrado (IDE) do AWS Cloud9

GetMigrationExperiences

cloud9:GetMigrationExperiences

Concede permissão a um AWS Cloud9 usuário para obter a experiência de migração de AWS Cloud9 para CodeCatalyst.

AWS credenciais temporárias gerenciadas

Se você está apenas procurando a lista de ações que as credenciais temporárias AWS gerenciadas suportam, vá para. Ações suportadas por credenciais temporárias AWS gerenciadas

Para um ambiente de desenvolvimento AWS Cloud9 EC2, AWS Cloud9 disponibiliza credenciais de AWS acesso temporário para você no ambiente. Elas são chamadas de credenciais temporárias gerenciadas pela AWS . Isso oferece os seguintes benefícios:

  • Você não precisa armazenar as credenciais de AWS acesso permanente de uma AWS entidade (por exemplo, um usuário do IAM) em nenhum lugar do ambiente. Isso evita que essas credenciais sejam acessadas pelos membros do ambiente sem o seu conhecimento e aprovação.

  • Não é necessário configurar, gerenciar ou anexar manualmente um perfil da instância para a instância do Amazon EC2 que se conecta ao ambiente. Um perfil de instância é outra abordagem para gerenciar credenciais de AWS acesso temporário.

  • AWS Cloud9 renova continuamente suas credenciais temporárias, portanto, um único conjunto de credenciais só pode ser usado por um tempo limitado. Essa é uma prática recomendada de AWS segurança. Para ter mais informações, consulte Criação e atualização de credenciais temporárias AWS gerenciadas.

  • AWS Cloud9 impõe restrições adicionais sobre como suas credenciais temporárias podem ser usadas para acessar AWS ações e recursos do ambiente. Essa também é uma prática recomendada de AWS segurança.

Importante

Atualmente, se a instância EC2 do seu ambiente for iniciada em uma sub-rede privada, você não poderá usar credenciais temporárias AWS gerenciadas para permitir que o ambiente EC2 acesse um AWS serviço em nome de uma AWS entidade (por exemplo, um usuário do IAM).

Para obter mais informações sobre quando você pode iniciar uma instância do EC2 em uma sub-rede privada, consulte Crie uma sub-rede para AWS Cloud9.

nota

Considere usar uma política AWS gerenciada em vez de uma política embutida ao usar credenciais temporárias AWS gerenciadas.

Veja como as credenciais temporárias AWS gerenciadas funcionam sempre que um ambiente EC2 tenta acessar um AWS service (Serviço da AWS) em nome de uma AWS entidade (por exemplo, um usuário do IAM):

  1. AWS Cloud9 verifica se a AWS entidade chamadora (por exemplo, o usuário do IAM) tem permissão para realizar a ação solicitada para o recurso solicitado em AWS. Se a permissão não existir ou for explicitamente negada, a solicitação falhará.

  2. AWS Cloud9 verifica as credenciais temporárias AWS gerenciadas para ver se suas permissões permitem a entrada da ação solicitada para o recurso solicitado. AWS Se a permissão não existir ou for explicitamente negada, a solicitação falhará. Para obter uma lista de permissões que AWS gerenciaram o suporte de credenciais temporárias, consulteAções suportadas por credenciais temporárias AWS gerenciadas.

  • Se a AWS entidade e as credenciais temporárias AWS gerenciadas permitirem a ação solicitada para o recurso solicitado, a solicitação será bem-sucedida.

  • Se a AWS entidade ou as credenciais temporárias AWS gerenciadas negarem explicitamente ou falharem em permitir explicitamente a ação solicitada para o recurso solicitado, a solicitação falhará. Isso significa que, mesmo que a AWS entidade chamadora tenha as permissões corretas, a solicitação falhará se também AWS Cloud9 não for explicitamente permitida. Da mesma forma, se AWS Cloud9 permitir que uma ação específica seja executada para um recurso específico, a solicitação falhará se a AWS entidade também não permitir explicitamente.

O proprietário de um ambiente EC2 pode ativar ou desativar as credenciais temporárias AWS gerenciadas para esse ambiente a qualquer momento, da seguinte maneira:

  1. Com o ambiente aberto, no AWS Cloud9 IDE, na barra de menu AWS Cloud9, escolha Preferências.

  2. No painel de navegação da guia Preferências, selecione Configurações da AWS , Credenciais.

  3. Usar as credenciais temporárias gerenciadas pela AWS para ativar e desativar as credenciais temporárias gerenciadas pela AWS .

nota

Você também pode ativar ou desativar as credenciais temporárias AWS gerenciadas chamando a operação da AWS Cloud9 API UpdateEnvironmente atribuindo um valor ao managedCredentialsAction parâmetro. Você pode solicitar essa operação de API usando AWS ferramentas padrão, como AWS SDKs e o. AWS CLI

Se você desativar as credenciais temporárias AWS gerenciadas, o ambiente não poderá acessar nenhuma Serviços da AWS, independentemente da AWS entidade que faz a solicitação. Porém, suponha que você não possa ou não queira ativar as credenciais temporárias AWS gerenciadas para um ambiente e ainda precise que o ambiente acesse Serviços da AWS. Considere as seguintes alternativas:

As alternativas anteriores substituem todas as permissões concedidas (ou negadas) pelas credenciais temporárias gerenciadas pela AWS em um ambiente EC2.

Ações suportadas por credenciais temporárias AWS gerenciadas

Para um ambiente de desenvolvimento AWS Cloud9 EC2, as credenciais temporárias AWS gerenciadas permitem todas AWS as ações de todos os AWS recursos do chamador Conta da AWS, com as seguintes restrições:

  • Pois AWS Cloud9, somente as seguintes ações são permitidas:

    • cloud9:CreateEnvironmentEC2

    • cloud9:CreateEnvironmentSSH

    • cloud9:DescribeEnvironmentMemberships

    • cloud9:DescribeEnvironments

    • cloud9:DescribeEnvironmentStatus

    • cloud9:UpdateEnvironment

  • Para o IAM, apenas as seguintes ações são permitidas:

    • iam:AttachRolePolicy

    • iam:ChangePassword

    • iam:CreatePolicy

    • iam:CreatePolicyVersion

    • iam:CreateRole

    • iam:CreateServiceLinkedRole

    • iam:DeletePolicy

    • iam:DeletePolicyVersion

    • iam:DeleteRole

    • iam:DeleteRolePolicy

    • iam:DeleteSSHPublicKey

    • iam:DetachRolePolicy

    • iam:GetInstanceProfile

    • iam:GetPolicy

    • iam:GetPolicyVersion

    • iam:GetRole

    • iam:GetRolePolicy

    • iam:GetSSHPublicKey

    • iam:GetUser

    • iam:List*

    • iam:PassRole

    • iam:PutRolePolicy

    • iam:SetDefaultPolicyVersion

    • iam:UpdateAssumeRolePolicy

    • iam:UpdateRoleDescription

    • iam:UpdateSSHPublicKey

    • iam:UploadSSHPublicKey

  • Todas as ações do IAM que interagem com funções são permitidas somente para nomes de função que começam com Cloud9-. No entanto, iam:PassRole funciona com todos os nomes de função.

  • Para AWS Security Token Service (AWS STS), somente as seguintes ações são permitidas:

    • sts:GetCallerIdentity

    • sts:DecodeAuthorizationMessage

  • Todas as AWS ações suportadas são restritas ao endereço IP do ambiente. Essa é uma prática recomendada de AWS segurança.

Se AWS Cloud9 não oferecer suporte a uma ação ou recurso que você precisa de um ambiente EC2 para acessar, ou se as credenciais temporárias AWS gerenciadas estiverem desativadas para um ambiente EC2 e você não puder ativá-las novamente, considere as seguintes alternativas:

As alternativas anteriores substituem todas as permissões concedidas (ou negadas) pelas credenciais temporárias gerenciadas pela AWS em um ambiente EC2.

Criação e atualização de credenciais temporárias AWS gerenciadas

Para um ambiente de desenvolvimento AWS Cloud9 EC2, as credenciais temporárias AWS gerenciadas são criadas na primeira vez que você abre o ambiente.

AWS as credenciais temporárias gerenciadas são atualizadas sob qualquer uma das seguintes condições:

  • Sempre que um determinado período passar. Atualmente, isso ocorre a cada cinco minutos.

  • Sempre que recarregar a guia do navegador da Web que exibe o IDE para o ambiente.

  • Quando o carimbo de hora listado no arquivo ~/.aws/credentials do ambiente for alcançado.

  • Se a configuração das credenciais temporárias gerenciadas pela AWS for definida como desativada toda vez que você a reativa. (Para exibir ou alterar essa configuração, selecione AWS Cloud9, Preferências na barra de menus do IDE. No painel de navegação da guia Preferências, selecione Configurações de AWS , Credenciais.)

  • Por motivos de segurança, as credenciais temporárias AWS gerenciadas expiram automaticamente após 15 minutos. Para que as credenciais sejam atualizadas, o proprietário do ambiente deve estar conectado ao ambiente do AWS Cloud9 por meio do IDE. Para obter mais informações sobre as funções do proprietário do ambiente, consulte Controlar o acesso às credenciais temporárias gerenciadas pela AWS.

Controlar o acesso às credenciais temporárias gerenciadas pela AWS

Um colaborador com credenciais temporárias AWS gerenciadas pode usar AWS Cloud9 para interagir com outros. Serviços da AWS Para garantir que apenas colaboradores confiáveis recebam as credenciais temporárias gerenciadas pela AWS , essas credenciais serão desativadas se um novo membro for adicionado por qualquer pessoa que não seja o proprietário do ambiente. As credenciais são desativadas pela exclusão do arquivo ~/.aws/credentials.

Importante

AWS as credenciais temporárias gerenciadas também expiram automaticamente a cada 15 minutos. Para que as credenciais sejam atualizadas para que os colaboradores possam continuar a usá-las, o proprietário do ambiente deve estar conectado ao AWS Cloud9 ambiente por meio do IDE.

Somente o proprietário do ambiente pode reativar as credenciais temporárias AWS gerenciadas para que elas possam ser compartilhadas com outros membros. Quando o proprietário do ambiente abre o IDE, uma caixa de diálogo confirma que as credenciais temporárias AWS gerenciadas estão desativadas. O proprietário do ambiente pode reativar as credenciais para todos os membros ou mantê-las desabilitadas para todos os membros.

Atenção

Para manter a conformidade com as práticas recomendadas de segurança, mantenha as credenciais temporárias gerenciadas desativadas se você não tiver certeza sobre a identidade do último usuário adicionado ao ambiente. Você pode verificar a lista de membros com permissões de leitura/gravação na janela Collaborate (Colaborar).