Visão geral
No mecanismo de autenticação X., o servidor e o cliente usam o509 protocoloTLS para trocar 509 certificados de chave pública X.. Você pode usar esse mecanismo para autenticar no MongoDB Atlas, Enterprise Advanced e MongoDB Community Edition.
Dica
X.509 Mecanismo
Para saber como usar TLS/SSL com o driver Ruby, consulte TLS/SSL.
Para obter mais informações sobre509 certificados X., consulte X. no manual do MongoDB Server .509
Espaços reservados de código
Os exemplos de código nesta página usam os seguintes espaços reservados:
+srv
: inclua essa opção no prefixo da string de conexão somente se estiver se conectando a um cluster MongoDB Atlas . Para saber mais sobre a+srv
opção, consulte Formatos de connection string no manual do MongoDB Server .<hostname>
: O endereço de rede da sua implantação MongoDB .<port>
: o número da porta da implantação do MongoDB . Se você omitir este parâmetro, o driver utilizará o número de porta padrão (27017
). Você não precisa de um número de porta ao se conectar a um cluster MongoDB Atlas .<username>
: o nome de usuário do usuário associado ao certificado X.509. O nome de usuário deve corresponder ao nome do assunto distinto do certificado. Se você omitir este parâmetro, a implantação MongoDB infere o nome de usuário do certificado X.509.<password>
: a senha do certificado X.509.
Para usar os exemplos de código nesta página, substitua esses espaços reservados por seus próprios valores.
Usando a autenticação X.509 em seu aplicativo
A autenticação X.509 requer o uso de criptografia TLS com validação do certificado. Para autenticar o cliente, você precisará de um certificado TLS válido e uma chave de criptografia privada. Eles podem ser armazenados em arquivos separados ou juntos em um arquivo .pem
.
Observação
Mesmo que o certificado e a chave privada estejam armazenados no mesmo arquivo, você deve especificar o caminho para esse arquivo nas opções ssl_cert
e ssl_key
.
Selecione a aba Connection String ou Client Options para ver a sintaxe correspondente :
client = Mongo::Client.new("mongodb[+srv]://<hostname>[:<port>]/?authSource=$external&authMechanism=MONGODB-X509")
client = Mongo::Client.new('<host>', auth_mech: :mongodb_x509, ssl: true, ssl_cert: '/path/to/client.pem', ssl_key: '/path/to/client.pem', ssl_ca_cert: '/path/to/ca.pem')
Documentação da API
Para saber mais sobre qualquer um dos métodos e tipos MongoDB usados nesta página, consulte a seguinte documentação da API: