Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

X.509

La MONGODB-X509 mecanismo de autenticación utiliza la Seguridad de Nivel de Transporte (TLS) con certificados X.509 para autenticar a tu usuario, que se identifica por los nombres distinguidos relativos (RDN) de tu certificado de cliente.

Puedes usar X.509 para autenticarte en MongoDB Atlas, MongoDB Enterprise Advanced y MongoDB Community Edition.

Tip

Para obtener más información sobre los certificados de X.509, consulte x.509 en el manual de MongoDB Server.

Los ejemplos de código en esta página utilizan los siguientes marcadores de posición:

  • path to CA certificate: La ruta del archivo su CA

  • path to private client keyRuta del archivo de la clave de tu certificado

  • password for client key: La contraseña utilizada para descifrar la clave del cliente

  • dbLa base de datos de autenticación asociada con el usuario

Al especificar este mecanismo de autenticación, debe proporcionar los siguientes archivos:

  • Un archivo de autoridad de certificación (CA), que contiene una o más autoridades de certificación en las que confiar al establecer una conexión TLS. Antes de conectarse al servidor, el controlador utiliza este archivo para verificar que el certificado del servidor provenga de una de las autoridades certificadoras especificadas.

  • Un archivo de clave de certificado que contiene el certificado del cliente y la clave privada. El controlador presenta este archivo al servidor para verificar al cliente.

Para especificar el mecanismo de autenticación MONGODB-X509, configure el campo mechanism de su estructura Credential a AuthMechanism::MongoDbX509.

El siguiente código muestra cómo hacer referencia a tus certificados en tu cadena de conexión, especificar el mecanismo de autenticación MONGODB-X509 y conectarte a MongoDB:

let uri = format!(
"mongodb://<hostname>:<port>/?tlsCAFile={tlsCAFile}\
&tlsCertificateKeyFile={tlsCertificateKeyFile}\
&tlsCertificateKeyFilePassword={tlsCertificateKeyFilePassword}",
tlsCAFile = "<path to CA certificate>",
tlsCertificateKeyFile = "<path to private client key>",
tlsCertificateKeyFilePassword = "<password for client key>"
);
let mut client_options = ClientOptions::parse(uri).await?;
let x509_cred = Credential::builder().mechanism(AuthMechanism::MongoDbX509).build();
client_options.credential = Some(x509_cred);
let client = Client::with_options(client_options)?;

Tip

Para obtener más información sobre cómo habilitar TLS en una conexión, consulte el Guía Habilitar y configurar TLS.

Para aprender más sobre la autenticación en MongoDB, consulta Autenticación en el manual del servidor.

Para aprender más sobre cómo gestionar usuarios en tu implementación de MongoDB, consulta Usuarios en el manual del servidor.

Para obtener más información sobre los métodos y tipos mencionados en esta guía, vea la siguiente documentación de la API:

Volver

SCRAM

En esta página