Visão geral
No mecanismo de autenticação X.509, o servidor e o cliente usam o TLS protocolo para trocar certificados de chave pública X.509. 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+srvopçã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: