

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

# Armazenar chaves privadas com segurança no Amazon S3
<a name="https-storingprivatekeys"></a>

A chave privada que você usa para assinar seu certificado público é privada e não deve ser submetida ao código-fonte. Evite armazenar chaves privadas em arquivos de configuração carregando-as no Amazon S3 e configurando o Elastic Beanstalk para fazer download do arquivo do Amazon S3 durante a implantação da aplicação.

O exemplo a seguir mostra as seções [Recursos](environment-resources.md) e [arquivos](customize-containers-ec2.md#linux-files) de um [arquivo de configuração](ebextensions.md) que faz download do arquivo de chave privada de um bucket do Amazon S3.

**Example .ebextensions/privatekey.config**  

```
Resources:
  AWSEBAutoScalingGroup:
    Metadata:
      AWS::CloudFormation::Authentication:
        S3Auth:
          type: "s3"
          buckets: ["elasticbeanstalk-us-west-2-123456789012"]
          roleName: 
            "Fn::GetOptionSetting": 
              Namespace: "aws:autoscaling:launchconfiguration"
              OptionName: "IamInstanceProfile"
              DefaultValue: "aws-elasticbeanstalk-ec2-role"
files:
  # Private key
  "/etc/pki/tls/certs/server.key":
    mode: "000400"
    owner: root
    group: root
    authentication: "S3Auth"
    source: https://elasticbeanstalk-us-west-2-123456789012.s3.us-west-2.amazonaws.com/server.key
```

Substitua o nome do bucket e o URL no exemplo pelos seus. A primeira entrada desse arquivo adiciona um método de autenticação chamado `S3Auth` aos metadados do grupo de Auto Scaling do ambiente. Se você tiver configurado um [perfil de instância](concepts-roles-instance.md) personalizado para o ambiente a ser usado, caso contrário, será aplicado o valor padrão `aws-elasticbeanstalk-ec2-role`. O perfil de instância padrão tem permissão de leitura do bucket de armazenamento do Elastic Beanstalk. Se você usar um outro bucket, [adicione permissões ao perfil de instância](iam-instanceprofile.md#iam-instanceprofile-addperms).

A segunda entrada usa o método de autenticação `S3Auth` para fazer download da chave privada do URL especificado e salvá-la no `/etc/pki/tls/certs/server.key`. O servidor de proxy pode ler a chave privada a partir desse local para [encerrar conexões HTTPS na instância](https-singleinstance.md).

O perfil da instância atribuído às EC2 instâncias do seu ambiente precisa ter permissão para ler o objeto chave do bucket especificado. [Verifique se o perfil de instância tem permissão](iam-instanceprofile.md#iam-instanceprofile-verify) para ler o objeto no IAM e se as permissões no bucket e objeto não proíbem o perfil de instância.

**Para visualizar as permissões de um bucket**

1. Abra o [Console de gerenciamento do Amazon S3](https://console.aws.amazon.com/s3/home).

1. Escolha um bucket.

1. Escolha **Propriedades** e, em seguida, **Permissões**.

1. Verifique se sua conta tem permissão de leitura no bucket.

1. Se uma política de bucket estiver anexada, escolha **Bucket policy** para visualizar as permissões atribuídas ao bucket.