

 AWS Cloud9 não está mais disponível para novos clientes. Os clientes atuais do AWS Cloud9 podem continuar usando o serviço normalmente. [Saiba mais](https://aws.amazon.com/blogs/devops/how-to-migrate-from-aws-cloud9-to-aws-ide-toolkits-or-aws-cloudshell/)

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

# Opções adicionais de configuração para AWS Cloud9
<a name="setup-teams"></a>

Este tópico pressupõe que você já concluiu as etapas de configuração em [Configuração de equipe](setup.md) ou [Configuração de empresa](setup-enterprise.md).

Em [Team Setup](setup.md) ou [Enterprise Setup](setup-enterprise.md), você criou grupos e adicionou permissões de AWS Cloud9 acesso diretamente a esses grupos. Isso serve para garantir que os usuários desses grupos possam acessar o AWS Cloud9. Neste tópico, você adicionará mais permissões de acesso para restringir os tipos de ambientes que os usuários desses grupos podem criar. Isso pode ajudar a controlar os custos relacionados às AWS Cloud9 AWS contas e organizações.

Para adicionar essas permissões de acesso, crie seu próprio conjunto de políticas que definam as permissões de acesso à AWS que você deseja impor. Chamamos cada uma dessas de *política gerenciada pelo cliente*. Depois, você anexa essas políticas gerenciadas pelo cliente aos grupos aos quais os usuários pertencem. Em alguns cenários, você também deve separar as políticas AWS gerenciadas existentes que já estão anexadas a esses grupos. Para configurar isso, siga os procedimentos deste tópico.

**nota**  
Os procedimentos a seguir abrangem a anexação e desanexação de políticas somente para AWS Cloud9 usuários. Esses procedimentos pressupõem que você já tenha um grupo de AWS Cloud9 usuários e um grupo de AWS Cloud9 administradores separados. Eles também presumem que você tem apenas um número limitado de usuários no grupo de administradores do AWS Cloud9 . Essa prática recomendada de AWS segurança pode ajudá-lo a controlar, rastrear e solucionar melhor os problemas de acesso a AWS recursos.

## Etapa 1: Criar uma política gerenciada pelo cliente
<a name="setup-teams-create-policy"></a>

Crie uma política gerenciada pelo cliente usando o [Console de gerenciamento da AWS](#setup-teams-create-policy-console) ou a [ ou a interface da linha de comando da AWS (AWS CLI)](#setup-teams-create-policy-cli).

**nota**  
Esta etapa discute como criar uma política gerenciada pelo cliente apenas para grupos do IAM. Para criar um conjunto de permissões personalizado para grupos em Centro de Identidade do AWS IAM, pule esta etapa e siga as instruções em [Criar conjunto de permissões](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsets.html#howtocreatepermissionset) no *Guia do Centro de Identidade do AWS IAM usuário*. Neste tópico, siga as instruções para criar um conjunto de permissões personalizado. Para obter as políticas de permissões personalizadas relacionadas, consulte [Exemplos de políticas gerenciadas pelo cliente para equipes que usam o AWS Cloud9](setup-teams-policy-examples.md) mais adiante neste tópico.

### Etapa 1.1: criar uma política gerenciada pelo cliente usando o console
<a name="setup-teams-create-policy-console"></a>

1. Faça login no Console de gerenciamento da AWS, se você ainda não estiver conectado.

   Recomendamos que você faça login usando as credenciais de um usuário administrador em sua Conta da AWS. Se você não conseguir fazer isso, verifique com seu Conta da AWS administrador.

1. Abra o console do IAM. Para fazer isso, na barra de navegação do console, selecione **Serviços**. Depois, selecione **IAM**.

1. No painel de navegação do serviço, selecione **Policies (Políticas)**.

1. Selecione **Criar política**.

1. Na guia **JSON**, cole um de dos nossos [exemplos de políticas gerenciadas pelo cliente](setup-teams-policy-examples.md) sugeridos.
**nota**  
Você também pode criar suas próprias políticas gerenciadas pelo usuário. Para obter mais informações, consulte a [Referência de políticas JSON do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html) no *Guia do usuário do IAM* e na [documentação](https://aws.amazon.com/documentation/) do AWS service (Serviço da AWS).

1. Selecione **Revisar política**.

1. Na página **Review policy (Revisar política)**, digite um **Name (Nome)** e uma **Description (Descrição)** opcional para a política e, em seguida, selecione **Create policy (Criar política)**.

Repita essa etapa para cada política adicional gerenciada pelo cliente que você quiser criar. Depois, avance até [Adicionar políticas gerenciadas pelo cliente a um grupo usando o console](#setup-teams-add-policy-console).

### Etapa 1.2: Criar uma política gerenciada pelo cliente usando o AWS CLI
<a name="setup-teams-create-policy-cli"></a>

1. No computador em que você executa o AWS CLI, crie um arquivo para descrever a política (por exemplo,`policy.json`).

   Se criar o arquivo com um nome de arquivo diferente, substitua-o ao longo deste procedimento.

1. Cole uma das nossas sugestões de [exemplos de políticas gerenciadas pelo cliente](setup-teams-policy-examples.md) no arquivo `policy.json`.
**nota**  
Você também pode criar suas próprias políticas gerenciadas pelo usuário. Para obter mais informações, consulte a [Referência de políticas JSON do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html) no *Manual do usuário do IAM* e na [documentação](https://aws.amazon.com/documentation/) dos serviços da AWS .

1. No terminal ou no prompt de comando, mude para o diretório que contém o arquivo `policy.json`.

1. Execute o comando `create-policy` do IAM, especificando um nome para a política e o arquivo `policy.json`.

   ```
   aws iam create-policy --policy-document file://policy.json --policy-name MyPolicy
   ```

   No comando anterior, substitua `MyPolicy` por um nome para a política.

Vá em frente para [adicionar políticas gerenciadas pelo cliente a um grupo usando o. AWS CLI](#setup-teams-add-policy-cli)

## Etapa 2: Adicionar políticas gerenciadas pelo cliente a um grupo
<a name="setup-teams-add-policy"></a>

Adicione políticas gerenciadas pelo cliente a um grupo usando o [Console de gerenciamento da AWS](#setup-teams-add-policy-console) ou a [AWS Command Line Interface (AWS CLI)](#setup-teams-add-policy-cli). Para obter mais informações, consulte [Exemplos de políticas gerenciadas pelo cliente para equipes que usam AWS Cloud9](setup-teams-policy-examples.md).

**nota**  
Esta etapa discute como adicionar políticas gerenciadas pelo cliente apenas para grupos do IAM. Para adicionar conjuntos de permissões personalizados aos grupos em Centro de Identidade do AWS IAM, pule esta etapa e, em vez disso, siga as instruções em [Atribuir acesso ao Centro de Identidade do AWS IAM usuário](https://docs.aws.amazon.com/singlesignon/latest/userguide/useraccess.html#assignusers) *no Guia do usuário*.

### Etapa 2.1: adicionar políticas gerenciadas pelo cliente a um grupo usando o console
<a name="setup-teams-add-policy-console"></a>

1. Com o console do IAM aberto do procedimento anterior, no painel de navegação do serviço, selecione **Groups** (Grupos).

1. Selecione o nome do grupo.

1. Na guia **Permssões**, em **Políticas gerenciadas**, selecione **Anexar política**.

1. Na lista de nomes de políticas, selecione a caixa ao lado de cada política gerenciada pelo cliente que você deseja anexar ao grupo. Se não encontrar um nome de política específico na lista, insira o nome da política na caixa **Filter** (Filtrar) para exibi-la.

1. Escolha **Attach Policy**.

### Etapa 2.2: Adicionar políticas gerenciadas pelo cliente a um grupo usando o AWS CLI
<a name="setup-teams-add-policy-cli"></a>

**nota**  
Se você estiver usando [credenciais temporárias AWS gerenciadas](security-iam.md#auth-and-access-control-temporary-managed-credentials), não poderá usar uma sessão de terminal no AWS Cloud9 IDE para executar alguns ou todos os comandos desta seção. Para abordar as melhores práticas de AWS segurança, as credenciais temporárias AWS gerenciadas não permitem que alguns comandos sejam executados. Em vez disso, você pode executar esses comandos a partir de uma instalação separada do AWS Command Line Interface (AWS CLI).

Execute o comando `attach-group-policy` do IAM, especificando o nome do grupo e o nome de recurso da Amazon (ARN) da política.

```
aws iam attach-group-policy --group-name MyGroup --policy-arn arn:aws:iam::123456789012:policy/MyPolicy
```

No comando anterior, substitua `MyGroup` pelo nome do grupo. `123456789012`Substitua pelo ID AWS da conta. Substitua `MyPolicy` pelo nome da política gerenciada pelo cliente. 

## Próximas etapas
<a name="setup-teams-next-steps"></a>


****  

|  **Tarefa**  |  **Consulte este tópico**  | 
| --- | --- | 
|  Crie um ambiente de AWS Cloud9 desenvolvimento e, em seguida, use o AWS Cloud9 IDE para trabalhar com código em seu novo ambiente.  |   [Criar um ambiente](create-environment.md)   | 
|  Aprenda a usar o AWS Cloud9 IDE.  |   [Conceitos básicos: tutoriais básicos](tutorials-basic.md) e [Como trabalhar com o IDE](ide.md)   | 
|  Convide outras pessoas para usar o novo ambiente junto com você, em tempo real e com suporte para conversa por texto.  |   [Como trabalhar com ambientes compartilhados](share-environment.md)   | 

# Exemplos de políticas gerenciadas pelo cliente para equipes que usam AWS Cloud9
<a name="setup-teams-policy-examples"></a>

Veja a seguir alguns exemplos de políticas que podem ser usadas para restringir os ambientes que os usuários de um grupo podem criar em uma Conta da AWS.
+  [Impedir que os usuários de um grupo criem ambientes](#setup-teams-policy-examples-prevent-environments) 
+  [Impedir que os usuários de um grupo criem ambientes do EC2](#setup-teams-policy-examples-prevent-ec2-environments) 
+  [Permita que os usuários de um grupo criem ambientes EC2 somente com tipos específicos de instâncias do Amazon EC2](#setup-teams-policy-examples-specific-instance-types) 
+  [Permitir que os usuários de um grupo criem somente um único ambiente EC2 por região AWS](#setup-teams-policy-examples-single-ec2-environment) 

## Impedir que os usuários de um grupo criem ambientes
<a name="setup-teams-policy-examples-prevent-environments"></a>

A seguinte política gerenciada pelo cliente, quando vinculada a um grupo de AWS Cloud9 usuários, impede que esses usuários criem ambientes em um Conta da AWS. Isso é útil se você quiser que um usuário administrador gerencie Conta da AWS a criação de ambientes. Caso contrário, os usuários de um grupo de AWS Cloud9 usuários fazem isso.

------
#### [ JSON ]

****  

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

------

A política gerenciada pelo cliente anterior substitui `"Effect": "Allow"` explicitamente a política `AWSCloud9User` gerenciada que já está anexada ao grupo de usuários. `"Action": "cloud9:CreateEnvironmentEC2"` `"cloud9:CreateEnvironmentSSH"` `"Resource": "*"` AWS Cloud9 

## Impedir que os usuários de um grupo criem ambientes do EC2
<a name="setup-teams-policy-examples-prevent-ec2-environments"></a>

A seguinte política gerenciada pelo cliente, quando vinculada a um grupo de AWS Cloud9 usuários, impede que esses usuários criem ambientes EC2 em um Conta da AWS. Isso é útil se você quiser que um usuário administrador gerencie Conta da AWS a criação de ambientes EC2. Caso contrário, os usuários de um grupo de AWS Cloud9 usuários fazem isso. Isso presume que você também não anexou uma política que impede que os usuários do grupo criem ambientes SSH. Caso contrário, esses usuários não poderão criar ambientes.

------
#### [ JSON ]

****  

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

------

A política gerenciada pelo cliente anterior substitui `"Effect": "Allow"` explicitamente a política `AWSCloud9User` gerenciada que já está anexada ao grupo de usuários. `"Action": "cloud9:CreateEnvironmentEC2"` `"Resource": "*"` AWS Cloud9 

## Permita que os usuários de um grupo criem ambientes EC2 somente com tipos específicos de instâncias do Amazon EC2
<a name="setup-teams-policy-examples-specific-instance-types"></a>

A política gerenciada pelo cliente a seguir, quando vinculada a um AWS Cloud9 grupo de usuários, permite que os usuários do grupo de usuários criem ambientes EC2 que usam apenas tipos de instância começando com `t2` um Conta da AWS. Esta política presume que você também não anexou uma política que impede que os usuários do grupo criem ambientes do EC2. Caso contrário, esses usuários não poderão criar ambientes do EC2.

É possível substituir `"t2.*"` na política a seguir por uma classe de instância diferente (por exemplo, `"m4.*"`). Ou você pode restringir para várias classes de instância ou tipos de instância (por exemplo, `[ "t2.*", "m4.*" ]` ou `[ "t2.micro", "m4.large" ]`).

Para um grupo de AWS Cloud9 usuários, separe a política `AWSCloud9User` gerenciada do grupo. Depois, adicione a seguinte política gerenciada pelo cliente em seu lugar. Se você não desanexar a política gerenciada `AWSCloud9User`, a política gerenciada pelo cliente a seguir não terá nenhum efeito.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "cloud9:CreateEnvironmentSSH",
        "cloud9:GetUserPublicKey",
        "cloud9:UpdateUserSettings",
        "cloud9:GetUserSettings",
        "iam:GetUser",
        "iam:ListUsers",
        "ec2:DescribeVpcs",
        "ec2:DescribeSubnets"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": "cloud9:CreateEnvironmentEC2",
      "Resource": "*",
      "Condition": {
        "StringLike": {
          "cloud9:InstanceType": "t2.*"
        }
      }
    },
    {
      "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"
        }
      }
    }
  ]
}
```

------

A política gerenciada pelo cliente anterior também permite que esses usuários criem ambientes SSH. Para impedir completamente que esses usuários criem ambientes SSH, remova `"cloud9:CreateEnvironmentSSH",` da política gerenciada pelo cliente anterior.

## Permita que os usuários de um grupo criem somente um único ambiente EC2 em cada Região da AWS
<a name="setup-teams-policy-examples-single-ec2-environment"></a>

A seguinte política gerenciada pelo cliente, quando anexada a um grupo de AWS Cloud9 usuários, permite que cada um desses usuários crie no máximo um ambiente EC2 em cada um Região da AWS que AWS Cloud9 esteja disponível em. Isso é feito ao restringir o nome do ambiente para um nome específico nessa Região da AWS. Neste exemplo, o ambiente é restrito a `my-demo-environment`.

**nota**  
AWS Cloud9 não permite restringir a criação Regiões da AWS de ambientes específicos. AWS Cloud9 também não permite restringir o número geral de ambientes que podem ser criados. A única exceção são os [limites de serviço](limits.md) publicados.

Para um grupo de AWS Cloud9 usuários, separe a política `AWSCloud9User` gerenciada do grupo e adicione a seguinte política gerenciada pelo cliente em seu lugar. Se você não desanexar a política gerenciada `AWSCloud9User`, a política gerenciada pelo cliente a seguir não terá nenhum efeito.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "cloud9:CreateEnvironmentSSH",
        "cloud9:GetUserPublicKey",
        "cloud9:UpdateUserSettings",
        "cloud9:GetUserSettings",
        "iam:GetUser",
        "iam:ListUsers",
        "ec2:DescribeVpcs",
        "ec2:DescribeSubnets"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "cloud9:CreateEnvironmentEC2"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "cloud9:EnvironmentName": "my-demo-environment"
        }
      }
    },
    {
      "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"
        }
      }
    }
  ]
}
```

------

A política gerenciada pelo cliente anterior permite que esses usuários criem ambientes SSH. Para impedir completamente que esses usuários criem ambientes SSH, remova `"cloud9:CreateEnvironmentSSH",` da política gerenciada pelo cliente anterior.

Para obter mais exemplos, consulte [Exemplos de política gerenciada pelo cliente](security-iam.md#auth-and-access-control-customer-policies-examples).