

# Conectar-se ao Aurora MySQL com a autenticação Kerberos
<a name="aurora-mysql-kerberos-connecting"></a>

Para evitar erros, utilize um cliente MySQL com a versão 8.0.26 ou posterior em plataformas Unix, 8.0.27 ou posterior no Windows.

## Utilizar o login do Kerberos do Aurora MySQL para se conectar ao cluster de banco de dados
<a name="aurora-mysql-kerberos-connecting.login"></a>

Para se conectar ao Aurora MySQL com a autenticação Kerberos, você faz login como um usuário do banco de dados que você criou seguindo as instruções em [Etapa 6: Criar usuários do Aurora MySQL que usam a autenticação Kerberos](aurora-mysql-kerberos-setting-up.md#aurora-mysql-kerberos-setting-up.create-logins).

No prompt de comando, conecte-se a um dos endpoints associados ao cluster de banco de dados do Aurora MySQL. Quando a senha for solicitada, insira a senha do Kerberos associada a esse nome de usuário.

Quando você se autentica com o Kerberos, um *tíquete de concessão de tíquetes* (TGT) é gerado, caso ainda não exista. O plug-in da `authentication_kerberos` utiliza o TGT para obter um *tíquete de serviço*, que é então apresentado ao servidor de banco de dados do Aurora MySQL.

Você pode usar o cliente MySQL para se conectar ao Aurora MySQL com a autenticação Kerberos utilizando Windows ou Unix.

### Unix
<a name="aurora-mysql-kerberos-connecting.login.unix"></a>

Você pode se conectar utilizando um dos seguintes métodos:
+ Obtenha o TGT manualmente. Nesse caso, você não precisa fornecer a senha para o cliente MySQL.
+ Forneça a senha para o login do Active Directory diretamente ao cliente MySQL.

O plug-in do lado do cliente é compatível com as plataformas Unix para as versões 8.0.26 e versões posteriores do cliente MySQL.

**Como se conectar obtendo o TGT manualmente**

1. Na interface de linha de comando, utilize o comando a seguir para obter o TGT.

   ```
   kinit {{user_name}}
   ```

1. Utilize o comando `mysql` a seguir para fazer login no endpoint de instância de banco de dados de seu cluster de banco de dados.

   ```
   mysql -h {{DB_instance_endpoint}} -P 3306 -u {{user_name}} -p
   ```
**nota**  
A autenticação poderá falhar se o keytab for alternado na instância de banco de dados. Nesse caso, obtenha um novo TGT executando novamente `kinit`.

**Como se conectar diretamente**

1. Na interface de linha de comando, utilize o comando `mysql` a seguir para fazer login no endpoint de instância de banco de dados de seu cluster de banco de dados.

   ```
   mysql -h {{DB_instance_endpoint}} -P 3306 -u {{user_name}} -p
   ```

1. Insira a senha do usuário do Active Directory.

### Windows
<a name="aurora-mysql-kerberos-connecting.login.win"></a>

No Windows, a autenticação geralmente é feita no momento do login; portanto, você não precisa obter o TGT manualmente para se conectar ao cluster de banco de dados do Aurora MySQL. A capitalização das letras do nome de usuário do banco de dados deve corresponder à capitalização das letras do usuário no Active Directory. Por exemplo, se o usuário no Active Directory for exibido como `Admin`, o nome de usuário do banco de dados deverá ser `Admin`.

O plug-in do lado do cliente é compatível com o Windows para as versões 8.0.27 e posteriores do cliente MySQL.

**Como se conectar diretamente**
+ Na interface de linha de comando, utilize o comando `mysql` a seguir para fazer login no endpoint de instância de banco de dados de seu cluster de banco de dados.

  ```
  mysql -h {{DB_instance_endpoint}} -P 3306 -u {{user_name}}
  ```

## Autenticação Kerberos com bancos de dados globais Aurora
<a name="aurora-mysql-kerberos-connecting.global"></a>

A autenticação Kerberos para o Aurora MySQL é compatível com bancos de dados globais do Aurora. Para autenticar usuários no cluster de banco de dados secundário utilizando o Active Directory do cluster de banco de dados primário, replique o Active Directory para a Região da AWS secundária. Você ativa a autenticação Kerberos no cluster secundário utilizando o mesmo ID de domínio do cluster primário. A replicação AWS Managed Microsoft AD é compatível somente com a versão Enterprise do Active Directory. Para ter mais informações, consulte [Replicação em várias regiões](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_configure_multi_region_replication.html) no *Guia de administração do AWS Directory Service*.

## Migração do RDS para MySQL para o Aurora MySQL
<a name="aurora-mysql-kerberos-connecting.rds"></a>

Depois de migrar do RDS para MySQL com a autenticação Kerberos habilitada para o Aurora MySQL, modifique os usuários criados com o plug-in `auth_pam` para usar o plug-in `authentication_kerberos`. Por exemplo:

```
ALTER USER {{user_name}} IDENTIFIED WITH 'authentication_kerberos' BY '{{realm_name}}';
```

## Evitar o armazenamento em cache de tíquetes
<a name="aurora-mysql-kerberos.destroy-tickets"></a>

Se um TGT válido não existir quando a aplicação cliente MySQL for iniciada, a aplicação poderá obter o TGT e armazená-lo em cache. Se você quiser evitar que o TGT seja armazenado em cache, defina um parâmetro de configuração no arquivo `/etc/krb5.conf`.

**nota**  
Essa configuração só se aplica a hosts de clientes que executam Unix, não Windows.

**Para evitar o armazenamento em cache do TGT**
+ Adicione uma seção `[appdefaults]` a `/etc/krb5.conf` da seguinte forma:

  ```
  [appdefaults]
    mysql = {
      destroy_tickets = true
    }
  ```

## Registro em log da autenticação Kerberos
<a name="aurora-mysql-kerberos.logging"></a>

A variável de ambiente `AUTHENTICATION_KERBEROS_CLIENT_LOG` define o nível de registro em log para a autenticação Kerberos. Você pode usar os logs para depuração do lado do cliente.

Os valores permitidos são 1 a 5. As mensagens de log são gravadas na saída de erro padrão. A tabela a seguir descreve cada nível de registro em log.


| Nível de registro | Descrição | 
| --- | --- | 
| 1 ou não definido | Sem registro em log | 
| 2 | Mensagens de erro | 
| 3 | Mensagens de erro e aviso | 
| 4 | Mensagens de erro, aviso e informação | 
| 5 | Mensagens de erro, aviso, informação e depuração | 