Overview
El Salted Challenge Response Authentication Mechanism (SCRAM) es una familia de mecanismos de autenticación que utiliza un mecanismo de desafío-respuesta para autenticar al usuario. SCRAM-SHA-256, que utiliza el algoritmo SHA-256 para crear hash de tu contraseña, es el mecanismo de autenticación por defecto en MongoDB Server versión 4.0 y posteriores. SCRAM-SHA-1, que utiliza el algoritmo SHA-1 en su lugar, es el mecanismo de autenticación por defecto en las versiones de MongoDB Server anteriores a la 4.0.
Puede utilizar SCRAM para autenticarse en MongoDB Atlas, MongoDB Enterprise Advanced y MongoDB Community Edition.
Tip
Mecanismos SCRAM
Para obtener más información sobre la familia de mecanismos de autenticación SCRAM, consulta RFC 5802 y Mecanismo de Autenticación por Desafío con Sal en Wikipedia.
Para obtener más información sobre la implementación SCRAM de MongoDB, consulte SCRAM en el manual del servidor de MongoDB.
Marcadores de posición de código
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.<db_username>: El nombre de usuario de MongoDB del usuario que se va a autenticar.<db_password>La contraseña MongoDB del usuario para autenticarse.<hostname>: La dirección de red de tu implementación de MongoDB.<port>: El número de puerto de tu implementación de MongoDB. Si omites este parámetro, el controlador utilizará el número de puerto por defecto (27017). No necesitas un número de puerto al conectarte a un clúster de MongoDB Atlas.<authenticationDb>La base de datos de MongoDB que contiene los datos de autenticación del usuario. Si omite este parámetro, el driver utiliza el valor por defecto,admin.
Para usar los ejemplos de código en esta página, reemplaza estos marcadores de posición con tus propios valores.
Uso de la autenticación SCRAM en tu aplicación
Para utilizar SCRAM para autenticar a tu usuario de MongoDB, especifica tus credenciales de MongoDB, pero no especifiques ningún mecanismo de autenticación. Puedes especificar tus credenciales de MongoDB, bien sea en tu cadena de conexión o usando un objeto MongoCredential. Selecciona el Connection String o MongoCredential pestaña para ver la sintaxis correspondiente:
var mongoClient = new MongoClient( "mongodb[+srv]://<db_username>:<db_password>@<hostname>[:<port>]/?" + "authSource=<authenticationDb>");
var credential = MongoCredential .CreateCredential("<authenticationDb>", "<db_username>", "<db_password>"); var settings = MongoClientSettings.FromConnectionString("<connection string>"); settings.Credential = credential; var mongoClient = new MongoClient(settings);
Documentación de la API
Para aprender más sobre cualquiera de los métodos o tipos tratados en esta página, consulta la siguiente documentación de la API: