Overview
En el mecanismo de autenticación X.509, el servidor y el cliente utilizan el TLS protocolo para intercambiar certificados de clave pública X.509. Puedes utilizar este mecanismo para autenticarte en MongoDB Atlas, MongoDB Enterprise Advanced y MongoDB Community Edition.
Tip
X.509 Mecanismo
Para aprender a usar TLS/SSL con el controlador Kotlin Sync, consulte la Habilitar TLS/SSL en una guía de conexión.
Para obtener más información sobre509 los certificados X.,509 consulte Usar certificados x. para autenticar clientes en implementaciones autoadministradas en el manual de MongoDB Server.
Especificar la autenticación X.509
Los ejemplos en esta sección muestran cómo especificar el X.509 mecanismo de autenticación y utilice los siguientes valores de marcador de posición:
hostname:La dirección de red de su implementación de MongoDB, abierta para su cliente.port:El número de puerto de su servidor MongoDB.authenticationDb: La base de datos MongoDB que contiene los datos de autenticación de su usuario. Si omite este parámetro, el driver utiliza el valor por defectoadmin.
Selecciona el Connection String o la pestaña MongoCredential a continuación para obtener instrucciones y un código de muestra para especificar este mecanismo de autenticación:
Para especificar el mecanismo de autenticación X.509 mediante una cadena de conexión, establezca el parámetro authMechanism en MONGODB-X509 y el parámetro tls en true como se muestra en el siguiente ejemplo:
val mongoClient = MongoClient.create("mongodb://<db_username>:<db_password>@<hostname>:<port>/?authSource=<authenticationDb>&authMechanism=MONGODB-X509&tls=true")
Para especificar el mecanismo de autenticación de X.509 mediante la clase MongoCredential, utiliza los métodos del builder createMongoX509Credential() y applyToSslSettings(), como se muestra en el siguiente ejemplo:
val credential = MongoCredential.createMongoX509Credential() val settings = MongoClientSettings.builder() .applyToClusterSettings { builder -> builder.hosts(listOf( ServerAddress("<hostname>", <port>)) ) } .applyToSslSettings { builder -> builder.enabled(true) } .credential(credential) .build() val mongoClient = MongoClient.create(settings)
Información Adicional
Para obtener más información sobre la autenticación en MongoDB, consulta Autenticación en el manual del servidor de MongoDB.
Para obtener más información sobre cómo crear un MongoClient objeto mediante el controlador Kotlin Sync, consulte la guía Crear un MongoClient.