Overview
El mecanismo de autenticación PLAIN le permite usar su nombre de usuario y contraseña del Protocolo ligero de acceso a directorios (LDAP) para autenticarse en MongoDB. La autenticación LDAP utiliza la Capa de seguridad y autenticación simple (SASL) PLAIN definida en RFC-4616.
Puede utilizar este mecanismo solo al autenticarse en MongoDB Atlas o MongoDB Enterprise Advanced.
Importante
PLAIN SASL es un mecanismo de autenticación de texto sin cifrar. Recomendamos encarecidamente usar TLS/SSL con validación de certificados al usar PLAIN SASL para autenticarse en MongoDB.
Para obtener más información sobre cómo habilitar TLS para su conexión, consulte Configurar la seguridad de la capa de transporte (TLS).
Marcadores de posición de código
Los ejemplos de código de esta página utilizan los siguientes marcadores de posición:
+srvIncluya esta opción en el prefijo de la cadena de conexión solo si se conecta a un clúster de MongoDB Atlas. Para obtener más información sobre la+srvopción, consulte "Formatos de cadena de conexión" en el manual de MongoDB Server.<username>:Su nombre de usuario LDAP.<password>:Su contraseña LDAP.<hostname>: La dirección de red de tu implementación de MongoDB.<port>El número de puerto de su implementación de MongoDB. Si omite este parámetro, el controlador usa el número de puerto predeterminado (27017). No es necesario especificar un puerto al conectarse a un clúster de MongoDB Atlas.<authenticationDb>La base de datos MongoDB que contiene las credenciales LDAP del usuario. Si se omite este parámetro, el controlador utiliza la base de datos predeterminada (admin).
Para utilizar los ejemplos de código en esta página, reemplace estos marcadores de posición con sus propios valores.
Importante
Codificación porcentual
Debes codificar porcentualmente un nombre de usuario y contraseña antes de incluirlos en una URI de MongoDB. El método quote_plus(), disponible en el urllib.parse módulo, es una forma de realizar esta tarea. Por ejemplo, al llamar a quote_plus("and / or") se devuelve la string and+%2F+or.
No codifique en porcentaje el nombre de usuario ni la contraseña al pasarlos como argumentos a MongoClient.
Usar autenticación PLAIN en tu aplicación
Para usar PLAIN para la autenticación, configure la opción de conexión authMechanism en PLAIN. Puede configurar esta opción de dos maneras: pasando un argumento al constructor MongoClient o mediante un parámetro en su cadena de conexión.
Nota
Si sus valores authMechanismProperties incluyen una coma, debe utilizar el constructor MongoClient para configurar sus opciones de autenticación.
client = pymongo.MongoClient("mongodb[+srv]://<hostname>:<port>", username="<username>", password="<password>", authSource="<authenticationDb>", authMechanism="PLAIN", tls=True)
uri = ("mongodb[+srv]://<username>:<password>@<hostname>:<port>/?" "authSource=<authenticationDb>" "&authMechanism=PLAIN" "&tls=true") client = pymongo.MongoClient(uri)
client = pymongo.AsyncMongoClient("mongodb[+srv]://<hostname>:<port>", username="<username>", password="<password>", authSource="<authenticationDb>", authMechanism="PLAIN", tls=True)
uri = ("mongodb[+srv]://<username>: <password>@<hostname>:<port>/?" "authSource=<authenticationDb>" "&authMechanism=PLAIN" "&tls=true") client = pymongo.AsyncMongoClient(uri)
Documentación de la API
Para obtener más información sobre el uso de los mecanismos de autenticación PLAIN SASL con PyMongo, consulte la siguiente documentación de API: