Especificar a criptografia do Amazon S3 usando propriedades do EMRFS - Amazon EMR

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

Especificar a criptografia do Amazon S3 usando propriedades do EMRFS

Importante

A partir do Amazon EMR versão 4.8.0, você pode usar configurações de segurança para aplicar configurações de criptografia mais facilmente e com mais opções. Recomendamos usar configuração de segurança. Para obter informações, consulte Configure data encryption. As instruções do console descritas nesta seção estão disponíveis para versões anteriores à 4.8.0. Se você usar o AWS CLI para configurar a criptografia do Amazon S3 na configuração do cluster e em uma configuração de segurança nas versões subsequentes, a configuração de segurança substituirá a configuração do cluster.

Ao criar um cluster, você pode especificar criptografia do lado do servidor (SSE) ou criptografia do lado do cliente (CSE) para dados do EMRFS no Amazon S3 usando o console ou usando propriedades de classificação por meio do SDK do EMR ou do EMR. emrfs-site AWS CLI A SSE e a CSE do Amazon S3 são mutuamente exclusivas. Você pode escolher uma delas, mas não ambas.

Para AWS CLI obter instruções, consulte a seção apropriada para seu tipo de criptografia abaixo.

Para especificar as opções de criptografia do EMRFS usando o AWS Management Console
  1. Navegue até o novo console do Amazon EMR e selecione Alternar para o console antigo na navegação lateral. Para obter mais informações sobre o que esperar ao alternar para o console antigo, consulte Usar o console antigo.

  2. Escolha Create cluster (Criar cluster), Go to advanced options (Ir para opções avançadas).

  3. Escolha uma Release de 4.7.2 ou anterior.

  4. Escolha outras opções para Software and Steps (Software e etapas), conforme apropriado para seu aplicativo e, em seguida, escolha Next (Próximo).

  5. Escolha as configurações nos painéis Hardware e General Cluster Settings (Configurações gerais do cluster), conforme apropriado para seu aplicativo.

  6. No painel Security (Segurança), em Authentication and encryption (Autenticação e criptografia), selecione a opção S3 Encryption (with EMRFS) (Criptografia do S3 (com EMRFS)) a ser usada.

    nota

    A criptografia do lado do servidor do S3 com gerenciamento de chaves do KMS (SSE-KMS) não está disponível ao usar o Amazon EMR 4.4 ou versões anteriores.

    • Se você escolher uma opção que use Gerenciamento de chaves da AWS , escolha um ID da chave do AWS KMS. Para ter mais informações, consulte Usando AWS KMS keys para criptografia EMRFS.

    • Se você escolher S3 client-side encryption with custom materials provider (Criptografia do lado do cliente do S3 com fornecedor de materiais personalizados), forneça o Class name (Nome da classe) e o JAR location (Local de JAR). Para ter mais informações, consulte Criptografia do lado do cliente do Amazon S3.

  7. Escolha outras opções conforme apropriado para seu aplicativo e, em seguida, escolha Create Cluster (Criar cluster).

Usando AWS KMS keys para criptografia EMRFS

A chave de AWS KMS criptografia deve ser criada na mesma região da sua instância de cluster do Amazon EMR e dos buckets do Amazon S3 usados com o EMRFS. Se a chave especificada estiver em uma conta diferente da que foi usada para configurar um cluster, será necessário especificar a chave usando o respectivo ARN.

O perfil do perfil de instância do Amazon EC2 deverá ter permissões para usar a chave do KMS que você especificar. O perfil padrão para o perfil de instância no Amazon EMR é EMR_EC2_DefaultRole. Se você usar um perfil diferente para o perfil de instância ou usar perfis do IAM para solicitações do EMRFS para o Amazon S3, certifique-se de que cada perfil seja adicionado como um usuário de chave, conforme o caso. Isso concede ao perfil permissões para usar a chave do KMS. Para obter mais informações, consulte Using Key Policies no Guia do desenvolvedor do AWS Key Management Service e Configure IAM roles for EMRFS requests to Amazon S3.

Você pode usar o AWS Management Console para adicionar seu perfil de instância ou perfil de instância do EC2 à lista de usuários principais da chave KMS especificada, ou você pode usar o AWS CLI ou um AWS SDK para anexar uma política de chaves apropriada.

O Amazon EMR oferece suporte somente a chaves do KMS simétricas. Não é possível usar uma chave do KMS assimétrica para criptografar dados em repouso em um cluster do Amazon EMR. Para obter ajuda para determinar se uma chave do KMS é simétrica ou assimétrica, consulte Identifying symmetric and asymmetric KMS keys.

O procedimento abaixo descreve como adicionar o perfil de instância do Amazon EMR padrão, EMR_EC2_DefaultRole, como um usuário de chave usando o AWS Management Console. Ele pressupõe que você já tenha criado uma chave do KMS. Para criar uma nova chave do KMS, consulte Creating Keys no Guia do desenvolvedor do AWS Key Management Service .

Adicionar o perfil de instância do EC2 para Amazon EMR à lista de usuários de chaves de criptografia
  1. Faça login no console AWS Management Console e abra o AWS Key Management Service (AWS KMS) em https://console.aws.amazon.com/kms.

  2. Para alterar o Região da AWS, use o seletor de região no canto superior direito da página.

  3. Selecione o alias da chave do KMS a ser modificada.

  4. Na página de detalhes da chave, em Key Users (Usuários de chaves), escolha Add (Adicionar).

  5. Na caixa de diálogo Add key users (Adicionar usuários da chave) selecione a função apropriada. O nome da função padrão é EMR_EC2_DefaultRole.

  6. Escolha Adicionar.

Criptografia do lado do servidor do Amazon S3

Quando você configura a criptografia do lado do servidor do Amazon S3, o Amazon S3 criptografa os dados no nível do objeto à medida que os grava no disco e os descriptografa quando são acessados. Para ter mais informações sobre o SSE, consulte Proteger os dados usando criptografia do lado do servidor no Guia do usuário do Amazon Simple Storage Service.

Você pode escolher entre dois sistemas de gerenciamento de chaves diferentes ao especificar a SSE no Amazon EMR:

  • SSE-S3: o Amazon S3 gerencia as chaves para você.

  • SSE-KMS — Você usa um AWS KMS key para configurar políticas adequadas para o Amazon EMR. Para obter mais informações sobre os principais requisitos do Amazon EMR, consulte Uso AWS KMS keys para criptografia.

A SSE com chaves fornecidas pelo cliente (SSE-C) não está disponível para o uso com o Amazon EMR.

Para criar um cluster com o SSE-S3 habilitado usando o AWS CLI
  • Digite o seguinte comando:

    aws emr create-cluster --release-label emr-4.7.2 or earlier \ --instance-count 3 --instance-type m5.xlarge --emrfs Encryption=ServerSide

Você também pode ativar o SSE-S3 configurando o fs.s3. enableServerSidePropriedade de criptografia para verdadeira nas emrfs-site propriedades. Consulte o exemplo para SSE-KMS a seguir e omita a propriedade para Key ID.

Para criar um cluster com o SSE-KMS ativado usando o AWS CLI
nota

O SSE-KMS está disponível apenas no Amazon EMR versão 4.5.0 e posteriores.

  • Digite o AWS CLI comando a seguir para criar um cluster com SSE-KMS, em que KeyID é, por exemplo, AWS KMS key a4567b8-9900-12ab-1234-123a45678901:

    aws emr create-cluster --release-label emr-4.7.2 or earlier --instance-count 3 \ --instance-type m5.xlarge --use-default-roles \ --emrfs Encryption=ServerSide,Args=[fs.s3.serverSideEncryption.kms.keyId=keyId]

    --OU--

    Digite o AWS CLI comando a seguir usando a emrfs-site classificação e forneça um arquivo JSON de configuração com conteúdo semelhante ao mostrado myConfig.json no exemplo abaixo:

    aws emr create-cluster --release-label emr-4.7.2 or earlier --instance-count 3 --instance-type m5.xlarge --applications Name=Hadoop --configurations file://myConfig.json --use-default-roles

    Exemplo de conteúdo de myConfig.json:

    [ { "Classification":"emrfs-site", "Properties": { "fs.s3.enableServerSideEncryption": "true", "fs.s3.serverSideEncryption.kms.keyId":"a4567b8-9900-12ab-1234-123a45678901" } } ]

Propriedades de configuração para SSE-S3 e SSE-KMS

Essas propriedades podem ser configuradas usando a classificação de configuração emrfs-site. O SSE-KMS está disponível apenas no Amazon EMR versão 4.5.0 e posteriores.

Propriedade Valor padrão Descrição
fs.s3.enableServerSideEncryption false

Quando definida como true, objetos armazenados no Amazon S3 são criptografados usando criptografia do lado do servidor. Se nenhuma chave for especificada, SSE-S3 será usada.

fs.s3.serverSideEncryption.kms.keyId n/a

Especifica um ID de AWS KMS chave ou ARN. Se uma chave for especificada, SSE-KMS será usada.