

# Configurar cifras e protocolos de segurança do SQL Server
<a name="SQLServer.Ciphers"></a>

É possível ativar e desativar determinadas cifras e protocolos de segurança usando parâmetros de banco de dados. Os parâmetros de segurança que podem ser configurados (exceto para TLS versão 1.2) são mostrados na tabela a seguir. 


****  

| Parâmetro de banco de dados | Valores permitidos (padrão em negrito) | Descrição | 
| --- | --- | --- | 
| rds.tls10 | padrão, habilitado, desabilitado | TLS 1.0. | 
| rds.tls11 | padrão, habilitado, desabilitado | TLS 1.1. | 
| rds.tls12 | padrão | TLS 1.2. Não é possível modificar esse valor. | 
| rds.fips | 0, 1 |  Quando você define o parâmetro como 1, o RDS força o uso de módulos compatíveis com o padrão Federal Information Processing Standard (FIPS) 140-2. Para obter mais informações, consulte [Use SQL Server 2016 in FIPS 140-2-compliant mode (Usar o SQL Server 2016 no modo compatível com FIPS 140-2)](https://docs.microsoft.com/en-us/troubleshoot/sql/security/sql-2016-fips-140-2-compliant-mode) na documentação da Microsoft.  | 
| rds.rc4 | padrão, habilitado, desabilitado | Cifra de stream RC4. | 
| rds.diffie-hellman | padrão, habilitado, desabilitado | Criptografia de troca de chaves de Diffie-Hellman. | 
| rds.diffie-hellman-min-key-bit-length | padrão, 1024, 2048, 3072, 4096 | Tamanho mínimo de bits para chaves de Diffie-Hellman. | 
| rds.curve25519 | padrão, habilitado, desabilitado | Cifra de criptografia de curva elíptica Curve25519. Este parâmetro é compatível com todas as versões do mecanismo. | 
| rds.3des168 | padrão, habilitado, desabilitado | Cifra de criptografia de Triplo DES (Triple Data Encryption Standard) com um tamanho de chave de 168 bits. | 

**nota**  
Em relação a versões secundárias do mecanismo após 16.00.4120.1, 15.00.4365.2, 14.00.3465.1, 13.00.6435.1 e 12.00.6449.1, a configuração padrão para os parâmetros de banco de dados `rds.tls10`, `rds.tls11`, `rds.rc4`, `rds.curve25519` e `rds.3des168` é *desabilitado*. Caso contrário, a configuração padrão será *habilitado*.  
Em relação a versões secundárias do mecanismo após 16.00.4120.1, 15.00.4365.2, 14.00.3465.1, 13.00.6435.1 e 12.00.6449.1, a configuração padrão para `rds.diffie-hellman-min-key-bit-length` é 3072. Caso contrário, a configuração padrão será 2048.

Use o seguinte processo para configurar as cifras e os protocolos de segurança:

1. Crie um grupo de parâmetros de banco de dados personalizado.

1. Modifique os parâmetros no grupo de parâmetros.

1. Associe o novo grupo de parâmetros de banco de dados à sua instância de banco de dados.

Para obter mais informações sobre parameter groups de banco de dados, consulte [Grupos de parâmetros para Amazon RDS](USER_WorkingWithParamGroups.md).

## Criar o grupo de parâmetros relacionados à segurança
<a name="CreateParamGroup.Ciphers"></a>

Crie um grupo de parâmetros para parâmetros relacionados à segurança que corresponde à edição e à versão do SQL Server da instância de banco de dados.

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

O procedimento a seguir cria um grupo de parâmetros para o SQL Server Standard Edition 2016.

**Como criar o grupo de parâmetros**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon RDS em [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. No painel de navegação, escolha **Parameter groups** (Grupos de parâmetros).

1. Escolha **Create parameter group (Criar parameter group)**.

1. No painel**Create parameter group (Criar parameter group)**, faça o seguinte:

   1. Em **Família de grupos de parâmetros**, escolha **sqlserver-se-13.0**.

   1. Em **Nome do grupo**, insira um identificador para o grupo de parâmetros, como **sqlserver-ciphers-se-13**.

   1. Em **Descrição**, insira **Parameter group for security protocols and ciphers**.

1. Escolha **Criar**.

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

O procedimento a seguir cria um grupo de parâmetros para o SQL Server Standard Edition 2016.

**Como criar o grupo de parâmetros**
+ Execute um dos seguintes comandos:  
**Example**  

  Para Linux, macOS ou 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"
  ```

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

## Modificar parâmetros relacionados à segurança
<a name="ModifyParams.Ciphers"></a>

Modifique os parâmetros relacionados à segurança no grupo de parâmetros que corresponde à edição e à versão do SQL Server da instância de banco de dados.

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

O procedimento a seguir modifica o grupo de parâmetros que você criou para o SQL Server Standard Edition 2016. Este exemplo desativa o TLS versão 1.0.

**Como modificar o grupo de parâmetros**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon RDS em [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. No painel de navegação, selecione **Parameter groups**.

1. Escolha o grupo de parâmetros, como **sqlserver-ciphers-se-13**.

1. Em **Parâmetros**, filtre a lista de parâmetros para **rds**.

1. Escolha **Edit parameters**.

1. Escolha **rds.tls10**.

1. Em **Valores**, escolha **desativado**.

1. Escolha **Salvar alterações**.

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

O procedimento a seguir modifica o grupo de parâmetros que você criou para o SQL Server Standard Edition 2016. Este exemplo desativa o TLS versão 1.0.

**Como modificar o grupo de parâmetros**
+ Execute um dos seguintes comandos:  
**Example**  

  Para Linux, macOS ou Unix:

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

  Para Windows:

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

## Associar o grupo de parâmetros relacionados à segurança à sua instância de banco de dados
<a name="AssocParamGroup.Ciphers"></a>

Para associar o grupo de parâmetros à sua instância de banco de dados, use o Console de gerenciamento da AWS ou a AWS CLI.

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

É possível associar o grupo de parâmetros a uma instância de banco de dados nova ou existente:
+ Para uma nova instância de banco de dados, associe-o ao executar a instância. Para ter mais informações, consulte [Criar uma instância de banco de dados do Amazon RDS](USER_CreateDBInstance.md).
+ Para uma instância de banco de dados existente, associe-o modificando a instância. Para ter mais informações, consulte [Modificar uma instância de banco de dados do Amazon RDS](Overview.DBInstance.Modifying.md).

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

É possível associar o grupo de parâmetros a uma instância de banco de dados nova ou existente.

**Como criar uma instância de banco de dados com o grupo de parâmetros**
+ Especifique o mesmo tipo de mecanismo de banco de dados e a versão principal que você usou ao criar o grupo de parâmetros.  
**Example**  

  Para Linux, macOS ou 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
  ```

  Para 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 uma senha diferente do prompt mostrado aqui como prática recomendada de segurança.

**Como modificar uma instância de banco de dados e associar o grupo de parâmetros**
+ Execute um dos seguintes comandos:  
**Example**  

  Para Linux, macOS ou Unix:

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

  Para Windows:

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