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

Autenticación SCRAM

El Mecanismo de Autenticación por Desafío-Respuesta con Sal (SCRAM) es una familia de mecanismos de autenticación que utilizan un mecanismo de desafío-respuesta para autenticar al usuario. SCRAM-SHA-,256 que utiliza el256 algoritmo SHA- para cifrar la contraseña, es el mecanismo de autenticación predeterminado en MongoDB Server versión 4.0 y posteriores. SCRAM-SHA-,1 que utiliza el1 algoritmo SHA-, es el mecanismo de autenticación predeterminado en MongoDB Server versiones anteriores 4.0 a.

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

SCRAM-SHA-,256 según lo define RFC, es el mecanismo de autenticación predeterminado para las implementaciones de 7677MongoDB.

Para autenticarte con este mecanismo, establece las siguientes opciones de conexión:

  • usernameNombre de usuario para autenticar. Codifique este valor porcentualmente antes de incluirlo en una URI de conexión.

  • passwordContraseña para la autenticación. Codifique este valor porcentualmente antes de incluirlo en una URI de conexión.

  • authSourceLa base de datos MongoDB contra la que se debe autenticar. Por defecto, la MongoDB PHP librería se autentica contra la base de datos en la URI de conexión, si se incluye una. Si no lo hace, se autentica contra la base de datos de admin.

Puedes establecer estas opciones de dos maneras: pasando un arreglo de opciones al constructor MongoDB\Client o a través de parámetros en tu URI de conexión. Selecciona el MongoDB\Client o la pestaña Connection URI para ver el código correspondiente:

$uriOptions = [
'username' => '<username>',
'password' => '<password>',
'authSource' => '<authentication database>',
];
$client = new MongoDB\Client(
'mongodb://<hostname>:<port>',
$uriOptions,
);
$uri = 'mongodb://<username>:<password>@<hostname>:<port>/?authSource=admin';
$client = new MongoDB\Client($uri);

También puedes especificar explícitamente el mecanismo de autenticación SCRAM-SHA-256 configurando la opción de conexión authMechanism en 'SCRAM-SHA-256', como se muestra en el siguiente ejemplo:

$uriOptions = [
'username' => '<username>',
'password' => '<password>',
'authSource' => '<authentication database>',
'authMechanism' => 'SCRAM-SHA-256',
];
$client = new MongoDB\Client(
'mongodb://<hostname>:<port>',
$uriOptions,
);
$uri = 'mongodb://<username>:<password>@<hostname>:<port>/?authSource=admin&authMechanism=SCRAM-SHA-256';
$client = new MongoDB\Client($uri);

SCRAM-SHA-1, según lo define RFC, es un mecanismo de autenticación de desafío y respuesta salado (SCRAM) que utiliza su nombre de usuario y contraseña, cifrados con 5802el SHA-1 algoritmo, para autenticar a su usuario.

Para autenticarte con este mecanismo, establece las siguientes opciones de conexión:

  • usernameNombre de usuario para autenticar. Codifique este valor porcentualmente antes de incluirlo en una URI de conexión.

  • passwordContraseña para la autenticación. Codifique este valor porcentualmente antes de incluirlo en una URI de conexión.

  • authSourceLa base de datos MongoDB contra la que se debe autenticar. Por defecto, la MongoDB PHP librería se autentica contra la base de datos en la URI de conexión, si se incluye una. Si no lo hace, se autentica contra la base de datos de admin.

  • authMechanism:Establecer en 'SCRAM-SHA-1'.

Puede configurar estas opciones de dos maneras: pasando una matriz de opciones al constructor MongoDB\Client o mediante parámetros en la URI de su conexión. Seleccione la pestaña MongoDB\Client o Connection URI para ver el código correspondiente:

$uriOptions = [
'username' => '<username>',
'password' => '<password>',
'authSource' => '<authentication database>',
'authMechanism' => 'SCRAM-SHA-1',
];
$client = new MongoDB\Client(
'mongodb://<hostname>:<port>',
$uriOptions,
);
$uri = 'mongodb://<username>:<password>@<hostname>:<port>/?authSource=admin&authMechanism=SCRAM-SHA-1';
$client = new MongoDB\Client($uri);

Para obtener más información sobre cómo crear un MongoDB\Client objeto en la librería PHP de MongoDB, consulte el Cree una guía del cliente MongoDB.

Para obtener más información sobre las opciones de conexión, consulta la guía Especificar opciones de conexión.

Volver

Autenticación

En esta página