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

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 PyMongo, consulta TLS/SSL.

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

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

  • +srv: Incluir esta opción en el prefijo de su cadena de conexión solamente si está conectando a un clúster de MongoDB Atlas. Para obtener más información sobre la opción +srv, consulte Formatos de cadena de conexión en el manual del servidor de MongoDB.

  • <hostname>: La dirección de red de tu implementación de MongoDB.

  • <port>Número de puerto de la implementación de MongoDB. Si omites este parámetro, el driver usará el puerto por defecto (27017). No necesitas un número de puerto al conectar a un clúster de MongoDB Atlas.

  • <path to X.509 certificate>: La ruta al archivo del certificado X.509.

  • <X.509 certificate password>:La contraseña para el certificado X.509.

Para utilizar los ejemplos de código en esta página, reemplace estos marcadores de posición con sus propios valores.

Importante

Codificación porcentaje

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 codifiques en porcentaje el nombre de usuario o la contraseña al pasarlos como argumentos a MongoClient.

Puedes establecer estas opciones de dos maneras: pasando argumentos al constructor de MongoClient o a través de parámetros en tu cadena de conexión.

client = pymongo.MongoClient("mongodb[+srv]://<hostname>:<port>",
tls=True,
tlsCertificateKeyFile="<path to X.509 certificate>",
tlsCertificateKeyFilePassword="<X.509 certificate password>",
authMechanism="MONGODB-X509")
uri = ("mongodb[+srv]://<hostname>:<port>/?"
"tls=true"
"&tlsCertificateKeyFile=<path to X.509 certificate>"
"&tlsCertificateKeyFilePassword=<X.509 certificate password>"
"&authMechanism=MONGODB-X509")
client = pymongo.MongoClient(uri)
client = pymongo.AsyncMongoClient("mongodb[+srv]://<hostname>:<port>",
tls=True,
tlsCertificateKeyFile="<path to X.509 certificate>",
tlsCertificateKeyFilePassword="<X.509 certificate password>",
authMechanism="MONGODB-X509")
uri = ("mongodb[+srv]://<hostname>:<port>/?"
"tls=true"
"&tlsCertificateKeyFile=<path to X.509 certificate>"
"&tlsCertificateKeyFilePassword=<X.509 certificate password>"
"&authMechanism=MONGODB-X509")
client = pymongo.AsyncMongoClient(uri)

Para obtener más información sobre cómo autenticar tu aplicación en PyMongo, consulta la siguiente documentación de la API:

Volver

SCRAM

En esta página