

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Especificación del cifrado de Amazon S3 mediante propiedades de EMRFS
<a name="emr-emrfs-encryption"></a>

**importante**  
A partir de la versión 4.8.0 de Amazon EMR, puede utilizar las configuraciones de seguridad para aplicar la configuración de cifrado con mayor facilidad y con más opciones. Recomendamos que utilice las configuraciones de seguridad. Para obtener más información, consulte [Configuración del cifrado de datos](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-create-security-configuration.html#emr-security-configuration-encryption). Las instrucciones de la consola que se describen en esta sección están disponibles para las versiones anteriores a la 4.8.0. Si lo utiliza AWS CLI para configurar el cifrado de Amazon S3 tanto en la configuración del clúster como en una configuración de seguridad en versiones posteriores, la configuración de seguridad anula la configuración del clúster.

Al crear un clúster, puede especificar el cifrado del lado del servidor (SSE) o el cifrado del lado del cliente (CSE) para los datos de EMRFS en Amazon S3 mediante la consola o `emrfs-site` mediante las propiedades de clasificación a través del SDK de EMR. AWS CLI SSE y de CSE de Amazon S3 son mutuamente excluyentes, puede elegir uno de ellos, pero no ambos.

Para obtener AWS CLI instrucciones, consulte la sección correspondiente a su tipo de cifrado a continuación.

**Para especificar las opciones de cifrado EMRFS mediante el Consola de administración de AWS**

1. Vaya hasta la nueva consola de Amazon EMR y seleccione **Ir a la consola antigua** en el panel de navegación lateral. Para más información sobre lo que puede esperar al cambiar a la consola antigua, consulte [Uso de la consola antigua](https://docs.aws.amazon.com/emr/latest/ManagementGuide/whats-new-in-console.html#console-opt-in).

1. Elija **Crear clúster** e **Ir a las opciones avanzadas**.

1. Para **Release (Versión)**, elija 4.7.2 o anterior.

1. Elija otras opciones para **Software and Steps (Software y pasos)** adecuadas para su aplicación y, a continuación, elija **Next (Siguiente)**.

1. En los paneles **Hardware** y **General Cluster Settings (Configuración general del clúster)**, elija opciones adecuadas para su aplicación.

1. En el panel **Security (Seguridad)**, en **Authentication and encryption (Autenticación y cifrado)**, seleccione la opción **S3 Encryption (with EMRFS) (Cifrado de S3 (con EMRFS))**.
**nota**  
La opción **Cifrado del servidor de S3 con KMS Key Management** (SSE-KMS) no está disponible cuando se utiliza Amazon EMR versión 4.4 o anterior.
   + Si elige una opción que utiliza **AWS Key Management**, elija un identificador en el campo **ID de clave de AWS KMS**. Para obtener más información, consulte [Se utiliza AWS KMS keys para el cifrado EMRFS](#emr-emrfs-awskms).
   + Si elige **S3 client-side encryption with custom materials provider (Cifrado del lado del cliente de S3 con el proveedor de materiales de cifrado personalizado)**, rellene los campos **Class name (Nombre de la clase)** y **JAR location (Ubicación de JAR)**. Para obtener más información, consulte [Cifrado del cliente de Amazon S3](emr-emrfs-encryption-cse.md).

1. Elija las demás opciones que sean necesarias para su aplicación y, a continuación, elija **Create Cluster (Crear clúster)**.

## Se utiliza AWS KMS keys para el cifrado EMRFS
<a name="emr-emrfs-awskms"></a>

La clave de AWS KMS cifrado debe crearse en la misma región que la instancia de clúster de Amazon EMR y los buckets de Amazon S3 que se utilizan con EMRFS. Si la clave que especifica está en una cuenta diferente de la que usa para configurar un clúster, debe especificar la clave mediante su ARN.

El rol del perfil de instancia de Amazon EC2 debe tener permisos para usar la clave de KMS que especifique. El rol predeterminado del perfil de instancia en Amazon EMR es `EMR_EC2_DefaultRole`. Si usa un rol diferente para el perfil de instancia o usa roles de IAM para las solicitudes de EMRFS a Amazon S3, asegúrese de agregar cada rol como usuario clave, según corresponda. Esto proporciona al rol los permisos para utilizar la clave de KMS. Para obtener más información, consulte [Uso de políticas de claves](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-users) en la *Guía para desarrolladores de AWS Key Management Service * y [Configuración de roles de IAM para solicitudes de EMRFS a Amazon S3](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-emrfs-iam-roles.html).

Puede utilizarla Consola de administración de AWS para añadir su perfil de instancia o perfil de instancia EC2 a la lista de usuarios clave de la clave de KMS especificada, o puede utilizar la AWS CLI o un AWS SDK para adjuntar una política de claves adecuada.

Tenga en cuenta que Amazon EMR solo admite [claves de KMS simétricas](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks). No se puede utilizar una [clave KMS asimétrica](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html#asymmetric-cmks) para cifrar datos en reposo en un clúster de Amazon EMR. Para obtener ayuda para determinar si una clave de KMS es simétrica o asimétrica, consulte [Identificación de claves de KMS simétricas y asimétricas](https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html).

El siguiente procedimiento describe cómo agregar el perfil de instancia de Amazon EMR predeterminado, `EMR_EC2_DefaultRole` como un *usuario clave* con la Consola de administración de AWS. Se supone que ya ha creado una clave de KMS. Para crear una nueva clave de KMS, consulte [Creación de claves](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) en la *Guía para desarrolladores de AWS Key Management Service *.

**Para agregar el perfil de instancia de EC2 para Amazon EMR a la lista de usuarios de claves de cifrado**

1. Inicie sesión en la consola AWS Key Management Service (AWS KMS) Consola de administración de AWS y ábrala en [https://console.aws.amazon.com/kms.](https://console.aws.amazon.com/kms)

1. Para cambiarla Región de AWS, usa el selector de regiones en la esquina superior derecha de la página.

1. Seleccione el alias de la clave de KMS que desee modificar.

1. En la página de detalles de la clave, en **Key Users (Usuarios de claves)**, seleccione **Add (Añadir)**.

1. En el cuadro de diálogo **Add key users (Añadir usuarios clave)**, seleccione el rol adecuado. El nombre del rol predeterminado es `EMR_EC2_DefaultRole`.

1. Elija **Añadir**.

## Cifrado del servidor de Amazon S3
<a name="emr-emrfs-encryption-sse"></a>

Todos los buckets de Amazon S3 tienen el cifrado configurado de forma predeterminada, y todos los objetos nuevos que se cargan en un bucket de S3 se cifran automáticamente en reposo. Amazon S3 cifra los datos del objeto a medida que los escribe en el disco y los descifra cuando se accede a ellos. Para obtener más información sobre SSE, consulte [Protección de los datos con el cifrado del servidor](https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html) en la *Guía del usuario de Amazon Simple Storage Service*.

Puede elegir entre dos sistemas de administración de claves distintos al especificar SSE en Amazon EMR: 
+ **SSE-S3**: Amazon S3 administra las claves en su nombre.
+ **SSE-KMS**: se utiliza una AWS KMS key para configurar políticas adecuadas para Amazon EMR. Para obtener más información sobre los requisitos clave de Amazon EMR, consulte [Uso AWS KMS keys para cifrado](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-encryption-enable.html#emr-awskms-keys).

SSE con claves proporcionadas por el cliente (SSE-C) no está disponible para su uso con Amazon EMR.

**Para crear un clúster con el SSE-S3 habilitado mediante el AWS CLI**
+ Escriba el siguiente comando:

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

También puede habilitar SSE-S3 configurando fs.s3. enableServerSideLa propiedad de cifrado es verdadera en las propiedades. `emrfs-site` Consulte el ejemplo de SSE-KMS a continuación y omita la propiedad para el ID de clave.

**Para crear un clúster con el SSE-KMS habilitado mediante el AWS CLI**
**nota**  
SSE-KMS solo está disponible en la versión 4.5.0 y posteriores de Amazon EMR.
+ Escriba el siguiente AWS CLI comando para crear un clúster con SSE-KMS, donde *keyID* hay, por ejemplo AWS KMS key, un: *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]
  ```

  **--O BIEN--**

  Escriba el siguiente AWS CLI comando utilizando la `emrfs-site` clasificación y proporcione un archivo JSON de configuración con el contenido que se muestra de forma similar al `myConfig.json` del ejemplo siguiente:

  ```
  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
  ```

  Ejemplo de contenido de **myConfig.json**:

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

### Propiedades de configuración para SSE-S3 y SSE-KMS
<a name="emr-emrfs-encryption-site-sse-properties"></a>

Estas propiedades se pueden configurar mediante la clasificación de configuración `emrfs-site`. SSE-KMS solo está disponible en la versión 4.5.0 y posteriores de Amazon EMR.


| Propiedad  | Predeterminado | Description (Descripción)  | 
| --- | --- | --- | 
| fs.s3.enableServerSideEncryption | false |  Cuando se establecen en **true**, los objetos almacenados en Amazon S3 se cifran mediante el cifrado del servidor. Si no se especifica ninguna clave, se utiliza SSE-S3.  | 
| fs.s3.serverSideEncryption.kms.keyId | n/a |  Especifica un identificador AWS KMS clave o ARN. Si se especifica una clave, se utiliza SSE-KMS.  | 

# Cifrado del cliente de Amazon S3
<a name="emr-emrfs-encryption-cse"></a>

Con el cifrado del cliente de Amazon S3, el proceso de cifrado y descifrado de Amazon S3 se produce en el cliente de EMRFS en su clúster. Los objetos se cifran antes de cargarlos en Amazon S3 y se descifran después de que se descarguen. El proveedor que especifique proporciona la clave de cifrado que utiliza el cliente. El cliente puede usar claves proporcionadas por AWS KMS (CSE-KMS) o una clase de Java personalizada que proporciona la clave raíz del cliente (CSE-C). Los detalles de cifrado son ligeramente diferentes entre CSE-KMS y CSE-C, en función del proveedor especificado y de los metadatos del objeto que se descifra o se cifra. Para obtener más información sobre estas diferencias, consulte [Protección de los datos con el cifrado del cliente](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingClientSideEncryption.html) en la *Guía del usuario de Amazon Simple Storage Service*.

**nota**  
El CSE de Amazon S3 solo garantiza que los datos de EMRFS intercambiados con Amazon S3 se cifren; no se cifran todos los datos en volúmenes de instancias de clúster. Además, ya que Hue no utiliza EMRFS, los objetos que Hue S3 File Browser escribe en Amazon S3 no se cifran.

**Para especificar el CSE-KMS para los datos de EMRFS en Amazon S3 mediante el AWS CLI**
+ Escriba el siguiente comando y *MyKMSKeyID* sustitúyalo por el ID de clave o ARN de la clave KMS que se va a utilizar:

  ```
  aws emr create-cluster --release-label emr-4.7.2 or earlier
  --emrfs Encryption=ClientSide,ProviderType=KMS,KMSKeyId=MyKMSKeyId
  ```

## Creación de un proveedor de claves personalizadas
<a name="emr-emrfs-create-cse-key"></a>

Según el tipo de cifrado que utilice al crear un proveedor de claves personalizado, la aplicación también debe implementar diferentes EncryptionMaterialsProvider interfaces. Ambas interfaces están disponibles en la versión 1.11.0 y posteriores del AWS SDK for Java.
+ Para implementar el cifrado de Amazon S3, utilice [com.amazonaws.services.s3.model. EncryptionMaterialsProvider interfaz.](https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/s3/model/EncryptionMaterialsProvider.html)
+ Para implementar el cifrado del disco local, usa [com.amazonaws.services.elasticmapreduce.spi.security. EncryptionMaterialsProvider interfaz.](https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/elasticmapreduce/spi/security/EncryptionMaterialsProvider.html)

Puede utilizar cualquier estrategia para proporcionar materiales de cifrado para la implementación. Por ejemplo, podría elegir proporcionar materiales de cifrado estáticos o integrar con un sistema de administración de claves más complejo.

Si utiliza el cifrado de Amazon S3, debe utilizar los algoritmos de cifrado **AES/GCM/NoPadding**para los materiales de cifrado personalizados.

Si utiliza el cifrado de disco local, el algoritmo de cifrado que se utilizará para los materiales de cifrado personalizados varía según la versión del EMR. Para Amazon EMR 7.0.0 y versiones anteriores, debe usar. **AES/GCM/NoPadding** Para Amazon EMR 7.1.0 y versiones posteriores, debe usar **AES**.

La EncryptionMaterialsProvider clase obtiene los materiales de cifrado por contexto de cifrado. Amazon EMR rellena el contexto de cifrado en tiempo de ejecución para ayudar al intermediario a determinar qué materiales de cifrado debe devolver.

**Example Ejemplo: uso de un proveedor de claves de cifrado personalizadas para el cifrado de Amazon S3 con EMRFS**  
Cuando Amazon EMR obtiene los materiales de cifrado de la EncryptionMaterialsProvider clase para realizar el cifrado, EMRFS rellena opcionalmente el argumento MaterialsDescription con dos campos: el URI de Amazon S3 del objeto y JobFlowId el del clúster, que la clase puede utilizar para devolver materiales de cifrado de forma selectiva. EncryptionMaterialsProvider   
Por ejemplo, el proveedor podría devolver claves distintas para diferentes prefijos URI de Amazon S3. Se trata de la descripción de los materiales de cifrado devuelta que se almacena finalmente con el objeto de Amazon S3 en lugar del valor materialsDescription que genera EMRFS y se transfiere al proveedor. Al descifrar un objeto de Amazon S3, la descripción del material de cifrado se pasa a la EncryptionMaterialsProvider clase para que, una vez más, devuelva de forma selectiva la clave correspondiente para descifrar el objeto.  
A continuación se EncryptionMaterialsProvider proporciona una implementación de referencia. Otro proveedor personalizado, [EMRFSRSAEncryptionMaterialsProvider](https://github.com/awslabs/emr-sample-apps/tree/master/emrfs-plugins/EMRFSRSAEncryptionMaterialsProvider), está disponible en GitHub.   

```
import com.amazonaws.services.s3.model.EncryptionMaterials;
import com.amazonaws.services.s3.model.EncryptionMaterialsProvider;
import com.amazonaws.services.s3.model.KMSEncryptionMaterials;
import org.apache.hadoop.conf.Configurable;
import org.apache.hadoop.conf.Configuration;

import java.util.Map;

/**
 * Provides KMSEncryptionMaterials according to Configuration
 */
public class MyEncryptionMaterialsProviders implements EncryptionMaterialsProvider, Configurable{
  private Configuration conf;
  private String kmsKeyId;
  private EncryptionMaterials encryptionMaterials;

  private void init() {
    this.kmsKeyId = conf.get("my.kms.key.id");
    this.encryptionMaterials = new KMSEncryptionMaterials(kmsKeyId);
  }

  @Override
  public void setConf(Configuration conf) {
    this.conf = conf;
    init();
  }

  @Override
  public Configuration getConf() {
    return this.conf;
  }

  @Override
  public void refresh() {

  }

  @Override
  public EncryptionMaterials getEncryptionMaterials(Map<String, String> materialsDescription) {
    return this.encryptionMaterials;
  }

  @Override
  public EncryptionMaterials getEncryptionMaterials() {
    return this.encryptionMaterials;
  }
}
```

## Especificar un proveedor de materiales personalizados mediante el AWS CLI
<a name="emr-emrfs-encryption-cse-custom-cli"></a>

Para usar la AWS CLI, transfiera los argumentos `Encryption`, `ProviderType`, `CustomProviderClass` y `CustomProviderLocation` a la opción `emrfs`.

```
aws emr create-cluster --instance-type m5.xlarge --release-label emr-4.7.2 or earlier --emrfs Encryption=ClientSide,ProviderType=Custom,CustomProviderLocation=s3://amzn-s3-demo-bucket/myfolder/provider.jar,CustomProviderClass=classname
```

Al definir `Encryption` en `ClientSide`, se habilita el cifrado del cliente, `CustomProviderClass` es el nombre del objeto `EncryptionMaterialsProvider` y `CustomProviderLocation` es la ubicación local o de Amazon S3 desde la que Amazon EMR copia `CustomProviderClass` en cada nodo del clúster y lo coloca en el classpath.

## Especificación de un proveedor de materiales personalizado mediante un SDK
<a name="emr-emrfs-encryption-cse-custom-sdk"></a>

Para utilizar un SDK, puede establecer la propiedad `fs.s3.cse.encryptionMaterialsProvider.uri` para descargar en cada nodo del clúster la clase `EncryptionMaterialsProvider` personalizada que se almacena en Amazon S3. Esto se configura en el archivo `emrfs-site.xml` junto con CSE habilitado y la ubicación correcta del proveedor personalizado.

Por ejemplo, al AWS SDK para Java usarlo RunJobFlowRequest, el código podría tener el siguiente aspecto:

```
<snip>
		Map<String,String> emrfsProperties = new HashMap<String,String>();
	    	emrfsProperties.put("fs.s3.cse.encryptionMaterialsProvider.uri","s3://amzn-s3-demo-bucket/MyCustomEncryptionMaterialsProvider.jar");
	    	emrfsProperties.put("fs.s3.cse.enabled","true");
	    	emrfsProperties.put("fs.s3.consistent","true");
		    emrfsProperties.put("fs.s3.cse.encryptionMaterialsProvider","full.class.name.of.EncryptionMaterialsProvider");

		Configuration myEmrfsConfig = new Configuration()
	    	.withClassification("emrfs-site")
	    	.withProperties(emrfsProperties);

		RunJobFlowRequest request = new RunJobFlowRequest()
			.withName("Custom EncryptionMaterialsProvider")
			.withReleaseLabel("emr-7.12.0")
			.withApplications(myApp)
			.withConfigurations(myEmrfsConfig)
			.withServiceRole("EMR_DefaultRole_V2")
			.withJobFlowRole("EMR_EC2_DefaultRole")
			.withLogUri("s3://myLogUri/")
			.withInstances(new JobFlowInstancesConfig()
				.withEc2KeyName("myEc2Key")
				.withInstanceCount(2)
				.withKeepJobFlowAliveWhenNoSteps(true)
				.withMasterInstanceType("m5.xlarge")
				.withSlaveInstanceType("m5.xlarge")
			);						
					
		RunJobFlowResult result = emr.runJobFlow(request);
</snip>
```

## Personalización de EncryptionMaterialsProvider con argumentos
<a name="emr-emrfs-encryption-custommaterials"></a>

Es posible que necesite transferir argumentos directamente al proveedor. Para ello, puede utilizar la clasificación de configuración `emrfs-site` con argumentos personalizadas definidos como propiedades. A continuación se muestra un ejemplo de configuración que se guarda como un archivo, `myConfig.json`:

```
[
    {
      "Classification": "emrfs-site",
      "Properties": {
        "myProvider.arg1":"value1",
	    "myProvider.arg2":"value2"
      }
    }
 ]
```

Con el `create-cluster` comando de AWS CLI, puede usar la `--configurations` opción para especificar el archivo, tal como se muestra a continuación:

```
aws emr create-cluster --release-label emr-7.12.0 --instance-type m5.xlarge --instance-count 2 --configurations file://myConfig.json --emrfs Encryption=ClientSide,CustomProviderLocation=s3://amzn-s3-demo-bucket/myfolder/myprovider.jar,CustomProviderClass=classname
```

## Configuración del soporte para la versión 2 de EMRFS S3EC
<a name="emr-emrfs-encryption-cse-s3v2"></a>

Las versiones 1.11.837 y posteriores del SDK para Java de S3, se ha introducido la versión de soporte 2 del cliente de cifrado (S3EC V2) con varias mejoras de seguridad. Para obtener más información, consulte la publicación en el blog de S3: [Updates to the Amazon S3 encryption client](https://aws.amazon.com/blogs/developer/updates-to-the-amazon-s3-encryption-client/). Consulte también la [migración del cliente de cifrado de Amazon S3](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/s3-encryption-migration.html) en la Guía para AWS SDK para Java desarrolladores. 

La versión 1 del cliente de cifrado todavía está disponible en el SDK por motivos de compatibilidad con versiones anteriores. De forma predeterminada, EMRFS utilizará la versión 1 de S3EC para cifrar y descifrar los objetos de S3 si CSE está habilitado.

EMRFS no puede descifrar los objetos de S3 cifrados con la versión 2 de S3EC en un clúster de EMR cuya versión de lanzamiento sea anterior a emr-5.31.0 (emr-5.30.1 y anteriores, emr-6.1.0 y anteriores).

**Example Configuración de EMRFS para usar la versión 2 de S3EC**  
A fin de configurar EMRFS para que utilice la versión 2 de S3EC, agregue la siguiente configuración:  

```
{
  "Classification": "emrfs-site",
  "Properties": {
    "fs.s3.cse.encryptionV2.enabled": "true"
  }
}
```

## `emrfs-site.xml` Propiedades para el cifrado del cliente de Amazon S3
<a name="emr-emrfs-cse-config"></a>


| Propiedad  | Predeterminado | Description (Descripción)  | 
| --- | --- | --- | 
| fs.s3.cse.enabled | false |  Cuando se establece en **true**, los objetos de EMRFS almacenados en Amazon S3 se cifran mediante el cifrado del cliente.  | 
| fs.s3.cse.encryptionV2.enabled | false |  Cuando se establece en `true`, EMRFS utiliza la versión 2 del cliente de cifrado de S3 para cifrar y descifrar objetos en S3. Está disponible en la versión 5.31.0 y posteriores de EMR.  | 
| fs.s3.cse.encryptionMaterialsProvider.uri | N/A | Se aplica cuando se utilizan materiales de cifrado personalizados. URI de Amazon S3 en el que se encuentra el JAR con EncryptionMaterialsProvider. Al proporcionar este URI, Amazon EMR descarga automáticamente el JAR a todos los nodos del clúster. | 
| fs.s3.cse.encryptionMaterialsProvider | N/A |  La ruta de clases `EncryptionMaterialsProvider` utilizada con el cifrado del lado del cliente. Cuando utilice CSE-KMS, especifique `com.amazon.ws.emr.hadoop.fs.cse.KMSEncryptionMaterialsProvider`.  | 
| fs.s3.cse.materialsDescription.enabled | false |  Cuando se establece en`true`, rellena la MaterialsDescription de los objetos cifrados con el URI de Amazon S3 del objeto y el. JobFlowId Establézcalo en `true` cuando se utilicen materiales de cifrado personalizados.  | 
| fs.s3.cse.kms.keyId | N/A |  Se aplica cuando se utiliza CSE-KMS. El valor del ARN KeyId o el alias de la clave KMS utilizada para el cifrado.  | 
| fs.s3.cse.cryptoStorageMode | ObjectMetadata  |  Modo de almacenamiento de Amazon S3. De forma predeterminada, la descripción de la información de cifrado se almacena en los metadatos de objetos. También puede almacenar la descripción en un archivo de instrucciones. Los valores válidos son ObjectMetadata y. InstructionFile Para obtener más información, consulte [Cifrado de datos del lado del cliente con Amazon S3 AWS SDK para Java y Amazon S3](https://aws.amazon.com/articles/client-side-data-encryption-with-the-aws-sdk-for-java-and-amazon-s3/).  | 