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
/ /

SCRAM

El mecanismo de autenticación SCRAM (Salted Challenge Response Authentication Mechanism) es una familia de mecanismos de autenticación que utilizan un nombre de usuario y una contraseña para autenticarse en un servidor.

El controlador Rust admite los siguientes mecanismos de autenticación basados ​​en SCRAM:

  • SCRAM-SHA-:256 Un mecanismo de autenticación que utiliza su nombre de usuario y contraseña de la base de datos, cifrados con el SHA-256 algoritmo. Este es el mecanismo de autenticación predeterminado.

  • SCRAM-SHA-:1 Un mecanismo de autenticación que utiliza su nombre de usuario y contraseña de la base de datos, encriptados con el SHA-1 algoritmo.

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, consulte RFC 5802 y Salted Challenge Response Authentication Mechanism en Wikipedia.

Para obtener más información sobre la implementación SCRAM de MongoDB, consulte SCRAM en el manual del servidor de MongoDB.

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

  • db_username: El nombre de usuario de tu base de datos

  • db_passwordSu contraseña de base de datos

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

Puesto que SCRAM-SHA-256 es el mecanismo de autenticación por defecto, puedes omitir el campo mechanism cuando instancias tu estructura Credential para utilizar este mecanismo.

El siguiente ejemplo especifica el mecanismo de autenticación predeterminado:

let uri = "<connection string>";
let mut client_options = ClientOptions::parse(uri).await?;
let default_cred = Credential::builder()
.username("<db_username>".to_string())
.password("<db_password>".to_string())
.source("<db>".to_string())
.build();
client_options.credential = Some(default_cred);
let client = Client::with_options(client_options)?;

Para especificar explícitamente el mecanismo de autenticación SCRAM-SHA-256, establezca el campo mechanism de su estructura Credential en AuthMechanism::ScramSha256:

let uri = "<connection string>";
let mut client_options = ClientOptions::parse(uri).await?;
let scram_sha_256_cred = Credential::builder()
.username("<db_username>".to_string())
.password("<db_password>".to_string())
.mechanism(AuthMechanism::ScramSha256)
.source("<db>".to_string())
.build();
client_options.credential = Some(scram_sha_256_cred);
let client = Client::with_options(client_options)?;

Para especificar el mecanismo de autenticación SCRAM-SHA-1, establezca el campo mechanism de su estructura Credential en AuthMechanism::ScramSha1:

let uri = "<connection string>";
let mut client_options = ClientOptions::parse(uri).await?;
let scram_sha_1_cred = Credential::builder()
.username("<db_username>".to_string())
.password("<db_password>".to_string())
.mechanism(AuthMechanism::ScramSha1)
.source("<db>".to_string())
.build();
client_options.credential = Some(scram_sha_1_cred);
let client = Client::with_options(client_options)?;

Para obtener más información sobre la autenticación en MongoDB, consulte 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

Autenticación

En esta página