> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-postgresql-tls-support.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Documentação sobre SSL X.509

# Autenticação por certificado SSL X.509

<CloudNotSupportedBadge />

<Note>
  Esta página não se aplica ao [ClickHouse Cloud](https://clickhouse.com/cloud). O recurso documentado aqui não está disponível nos serviços do ClickHouse Cloud.
  Consulte o guia [Compatibilidade com Cloud](/pt-BR/products/cloud/guides/cloud-compatibility) do ClickHouse para mais informações.
</Note>

A [opção SSL 'strict'](/pt-BR/reference/settings/server-settings/settings#openssl) habilita a validação obrigatória de certificados para conexões de entrada. Nesse caso, somente conexões com certificados confiáveis podem ser estabelecidas. Conexões com certificados não confiáveis serão rejeitadas. Assim, a validação de certificados permite autenticar de forma exclusiva uma conexão de entrada. O campo `Common Name` ou a extensão `subjectAltName` do certificado é usado para identificar o usuário conectado. A extensão `subjectAltName` oferece suporte ao uso de um caractere curinga '\*' na configuração do servidor. Isso permite associar vários certificados ao mesmo usuário. Além disso, a reemissão e a revogação dos certificados não afetam a configuração do ClickHouse.

Para habilitar a autenticação por certificado SSL, uma lista de `Common Name` ou `Subject Alt Name` para cada usuário do ClickHouse deve ser especificada no arquivo de configurações `users.xml `:

**Exemplo**

```xml theme={null}
<clickhouse>
    <!- ... -->
    <users>
        <user_name_1>
            <ssl_certificates>
                <common_name>host.domain.com:example_user</common_name>
                <common_name>host.domain.com:example_user_dev</common_name>
                <!-- Mais nomes -->
            </ssl_certificates>
            <!-- Outras configurações -->
        </user_name_1>
        <user_name_2>
            <ssl_certificates>
                <subject_alt_name>DNS:host.domain.com</subject_alt_name>
                <!-- Mais nomes -->
            </ssl_certificates>
            <!-- Outras configurações -->
        </user_name_2>
        <user_name_3>
            <ssl_certificates>
                <!-- Suporte a wildcard -->
                <subject_alt_name>URI:spiffe://foo.com/*/bar</subject_alt_name>
            </ssl_certificates>
        </user_name_3>
    </users>
</clickhouse>
```

Para que a [`cadeia de confiança`](https://en.wikipedia.org/wiki/Chain_of_trust) do SSL funcione corretamente, também é importante garantir que o parâmetro [`caConfig`](/pt-BR/reference/settings/server-settings/settings#openssl) esteja configurado adequadamente.
