

# Configuración de protocolos de seguridad y cifrados de SQL Server
<a name="SQLServer.Ciphers"></a>

Puede activar y desactivar determinados protocolos de seguridad y cifrados mediante parámetros de base de datos. Los parámetros de seguridad que se pueden configurar (excepto TLS versión 1.2) se muestran en la siguiente tabla. 


****  

| Parámetro de base de datos | Valores permitidos (valor predeterminado en negrita) | Descripción | 
| --- | --- | --- | 
| rds.tls10 | predeterminado, habilitado, desactivado | TLS 1.0. | 
| rds.tls11 | predeterminado, habilitado, desactivado | TLS 1.1. | 
| rds.tls12 | predeterminada | TLS 1.2. No se puede modificar este valor. | 
| rds.fips | 0, 1 |  Cuando establece el parámetro en 1, RDS obliga al uso de módulos que cumplen con el estándar federal de procesamiento de información (FIPS) 140-2. Para obtener más información, consulte [Uso de SQL Server 2016 en modo compatible con FIPS 140-2](https://docs.microsoft.com/en-us/troubleshoot/sql/security/sql-2016-fips-140-2-compliant-mode) en la documentación de Microsoft.  | 
| rds.rc4 | predeterminado, habilitado, desactivado | Cifrado de flujo RC4. | 
| rds.diffie-hellman | predeterminado, habilitado, desactivado | Cifrado de intercambio de claves Diffie-Hellman. | 
| rds.diffie-hellman-min-key-bit-length | predeterminado, 1024, 2048, 3072, 4096 | Longitud mínima de bit para las claves Diffie-Hellman. | 
| rds.curve25519 | predeterminado, habilitado, desactivado | Código de cifrado de curva elíptica Curve25519. Este parámetro no es compatible con todas las versiones del motor. | 
| rds.3des168 | predeterminado, habilitado, desactivado | Código de cifrado de estándar de cifrado de datos triple (DES) con una longitud de clave de 168 bits. | 

**nota**  
Para las versiones secundarias del motor posteriores a  16.00.4120.1, 15.00.4365.2, 14.00.3465.1, 13.00.6435.1 y 12.00.6449.1, la configuración predeterminada de los parámetros de base de datos `rds.tls10`, `rds.tls11`, `rds.rc4`, `rds.curve25519`, y `rds.3des168` está *deshabilitada*. De lo contrario, la configuración predeterminada está *habilitada*.  
Para las versiones secundarias del motor posteriores a  16.00.4120.1, 15.00.4365.2, 14.00.3465.1, 13.00.6435.1 y 12.00.6449.1, la configuración predeterminada de `rds.diffie-hellman-min-key-bit-length` es 3072. De lo contrario, la configuración predeterminada es 2048.

Utilice el siguiente proceso para configurar los protocolos de seguridad y los cifrados:

1. Cree un grupo de parámetros de base de datos personalizado.

1. Modifique los parámetros en el grupo de parámetros.

1. Asocie el nuevo grupo de parámetros de base de datos a la instancia de base de datos.

Para obtener más información acerca de los grupos de parámetros de base de datos, consulte [Grupos de parámetros para Amazon RDS](USER_WorkingWithParamGroups.md).

## Creación del grupo de parámetros relacionados con la seguridad
<a name="CreateParamGroup.Ciphers"></a>

Cree un grupo de parámetros para los parámetros relacionados con la seguridad que corresponda a la edición y versión de SQL Server de la instancia de base de datos.

### Consola
<a name="CreateParamGroup.Ciphers.Console"></a>

El procedimiento siguiente crea un grupo de parámetros para SQL Server Standard Edition 2016.

**Para crear el grupo de parámetros**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. En el panel de navegación, seleccione **Parameter groups** (Grupos de parámetros).

1. Elija **Create parameter group**.

1. En el panel **Create parameter group (Crear grupo de parámetros)**, haga lo siguiente:

   1. En **Familia de grupos de parámetros**, elija **sqlserver-se-13.0**.

   1. En **Nombre de grupo**, escriba un identificador para el grupo de parámetros, como **sqlserver-ciphers-se-13**.

   1. En **Descripción**, escriba **Parameter group for security protocols and ciphers**.

1. Elija **Create** (Crear).

### CLI
<a name="CreateParamGroup.Ciphers.CLI"></a>

El procedimiento siguiente crea un grupo de parámetros para SQL Server Standard Edition 2016.

**Para crear el grupo de parámetros**
+ Ejecute uno de los siguientes comandos.  
**Example**  

  Para Linux, macOS o:Unix

  ```
  aws rds create-db-parameter-group \
      --db-parameter-group-name sqlserver-ciphers-se-13 \
      --db-parameter-group-family "sqlserver-se-13.0" \
      --description "Parameter group for security protocols and ciphers"
  ```

  En:Windows

  ```
  aws rds create-db-parameter-group ^
      --db-parameter-group-name sqlserver-ciphers-se-13 ^
      --db-parameter-group-family "sqlserver-se-13.0" ^
      --description "Parameter group for security protocols and ciphers"
  ```

## Modificación de parámetros relacionados con la seguridad
<a name="ModifyParams.Ciphers"></a>

Modifique los parámetros relacionados con la seguridad en el grupo de parámetros que corresponde a la edición y versión de SQL Server de su instancia de base de datos.

### Consola
<a name="ModifyParams.Ciphers.Console"></a>

El procedimiento siguiente modifica el grupo de parámetros que ha creado para SQL Server Standard Edition 2016. Este ejemplo desactiva la versión 1.0 de TLS.

**Para modificar el grupo de parámetros**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. En el panel de navegación, seleccione **Parameter groups** (Grupos de parámetros).

1. Elija el grupo de parámetros, como **sqlserver-ciphers-se-13**.

1. En **Parámetros**, filtre la lista de parámetros para **rds**.

1. Elija **Edit parameters (Editar parámetros)**.

1. Elija **rds.tls10**.

1. En **Valores**, elija **desactivado**.

1. Elija **Guardar cambios**.

### CLI
<a name="ModifyParams.Ciphers.CLI"></a>

El procedimiento siguiente modifica el grupo de parámetros que ha creado para SQL Server Standard Edition 2016. Este ejemplo desactiva la versión 1.0 de TLS.

**Para modificar el grupo de parámetros**
+ Ejecute uno de los siguientes comandos.  
**Example**  

  Para Linux, macOS o:Unix

  ```
  aws rds modify-db-parameter-group \
      --db-parameter-group-name sqlserver-ciphers-se-13 \
      --parameters "ParameterName='rds.tls10',ParameterValue='disabled',ApplyMethod=pending-reboot"
  ```

  En:Windows

  ```
  aws rds modify-db-parameter-group ^
      --db-parameter-group-name sqlserver-ciphers-se-13 ^
      --parameters "ParameterName='rds.tls10',ParameterValue='disabled',ApplyMethod=pending-reboot"
  ```

## Asociación del grupo de parámetros relacionados con la seguridad con su instancia de base de datos
<a name="AssocParamGroup.Ciphers"></a>

Para asociar el grupo de parámetros a su instancia de base de datos, utilice la Consola de administración de AWS o la AWS CLI.

### Consola
<a name="AssocParamGroup.Ciphers.Console"></a>

Puede asociar el grupo de parámetros con una instancia de base de datos nueva o existente:
+ Para una nueva instancia de base de datos, asóciela cuando lance la instancia. Para obtener más información, consulte [Creación de una instancia de base de datos de Amazon RDS](USER_CreateDBInstance.md).
+ Para una instancia de base de datos existente, asóciela modificando la instancia. Para obtener más información, consulte [Modificación de una instancia de base de datos de Amazon RDS](Overview.DBInstance.Modifying.md).

### CLI
<a name="AssocParamGroup.Ciphers.CLI"></a>

Puede asociar el grupo de parámetros con una instancia de base de datos nueva o existente.

**Para crear una instancia de base de datos con el grupo de parámetros**
+ Especifique el mismo tipo de motor de base de datos y la misma versión principal que ha utilizado al crear el grupo de parámetros.  
**Example**  

  Para Linux, macOS o:Unix

  ```
  aws rds create-db-instance \
      --db-instance-identifier mydbinstance \
      --db-instance-class db.m5.2xlarge \
      --engine sqlserver-se \
      --engine-version 13.00.5426.0.v1 \
      --allocated-storage 100 \
      --master-user-password secret123 \
      --master-username admin \
      --storage-type gp2 \
      --license-model li \
      --db-parameter-group-name sqlserver-ciphers-se-13
  ```

  En:Windows

  ```
  aws rds create-db-instance ^
      --db-instance-identifier mydbinstance ^
      --db-instance-class db.m5.2xlarge ^
      --engine sqlserver-se ^
      --engine-version 13.00.5426.0.v1 ^
      --allocated-storage 100 ^
      --master-user-password secret123 ^
      --master-username admin ^
      --storage-type gp2 ^
      --license-model li ^
      --db-parameter-group-name sqlserver-ciphers-se-13
  ```
**nota**  
Especifique una contraseña distinta de la que se muestra aquí como práctica recomendada de seguridad.

**Para modificar una instancia de base de datos y asociar el grupo de parámetros**
+ Ejecute uno de los siguientes comandos.  
**Example**  

  Para Linux, macOS o:Unix

  ```
  aws rds modify-db-instance \
      --db-instance-identifier mydbinstance \
      --db-parameter-group-name sqlserver-ciphers-se-13 \
      --apply-immediately
  ```

  En:Windows

  ```
  aws rds modify-db-instance ^
      --db-instance-identifier mydbinstance ^
      --db-parameter-group-name sqlserver-ciphers-se-13 ^
      --apply-immediately
  ```