Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
MongoDB Branding Shape
Click here >
Docs Menu

Mecanismos de autenticación de empresa

MongoDB Enterprise Edition incluye mecanismos de autenticación que no están disponibles en MongoDB Community Edition. En esta guía, puede aprender a autenticarse en MongoDB usando estos mecanismos de autenticación. Para obtener información sobre otros mecanismos de autenticación disponibles en MongoDB, consulta Mecanismos de autenticación.

La API de servicios de seguridad genéricos (GSSAPI) proporciona una interfaz para la autenticación Kerberos.

Nota

Para autenticarse con GSSAPI, debes compilar el controlador C de MongoDB con soporte para SASL. Si está construyendo el controlador desde la fuente, puede habilitar el soporte SASL con la opción ENABLE_SASL cmake.

Completé el siguiente paso para autenticarme con GSSAPI:

1

En entornos Unix, primero debes ejecutar el comando kinit para obtener y almacenar en caché un ticket inicial de concesión de tickets. Si trabajas en un entorno Windows, puedes pasar al siguiente paso.

El siguiente ejemplo usa el comando kinit para obtener un ticket de concesión de tickets para el principal mongodbuser@EXAMPLE.COM. A continuación, utiliza el comando klist para mostrar el usuario principal y el ticket en la caché de credenciales.

$ kinit mongodbuser@EXAMPLE.COM
mongodbuser@EXAMPLE.COM's Password:
$ klist
Credentials cache: FILE:/tmp/krb5cc_1000
Principal: mongodbuser@EXAMPLE.COM
Issued Expires Principal
Feb 9 13:48:51 2013 Feb 9 23:48:51 2013 krbtgt/mongodbuser@EXAMPLE.COM
2

A continuación, establezca las siguientes opciones de conexión:

  • Kerberos principal: El principal de Kerberos para autenticar.

  • authMechanism: Establecer en "GSSAPI".

  • authMechanismProperties: opcional. Por defecto, MongoDB utiliza mongodb como nombre del servicio de autenticación. Para especificar un nombre de servicio diferente, configure esta opción en "SERVICE_NAME:<authentication service name>".

Puedes establecer estas opciones mediante parámetros en tu URI de conexión, como se muestra en el siguiente ejemplo:

auto uri = mongocxx::uri("mongodb://<Kerberos principal>@<hostname>:<port>/?"
"authMechanism=GSSAPI"
"&authMechanismProperties=SERVICE_NAME:<authentication service name>");
auto client = mongocxx::client(uri);

Nota

Debe reemplazar el símbolo @ en el principal por %40, como se muestra en el ejemplo anterior.

El método PLAIN Simple Authentication and Security Layer (SASL), como se define en RFC 4616, es un mecanismo de autenticación de nombre de usuario y contraseña que se usa a menudo con TLS o alguna otra capa de cifrado.

Importante

PLAIN SASL es un mecanismo de autenticación en texto claro. Recomendamos encarecidamente utilizar TLS/SSL con validación de certificado al utilizar PLAIN SASL para autenticarse en MongoDB.

Para aprender cómo habilitar TLS para tu conexión, consulta Configurar seguridad de capa de transporte (TLS).

Para autenticarse con SASL, establezca la opción de conexión authMechanism en PLAIN. Puedes establecer esta opción mediante un parámetro en tu cadena de conexión, como se muestra en el siguiente ejemplo:

auto uri = mongocxx::uri("mongodb://<db_username>:<db_password>@<hostname>:<port>/?"
"authMechanism=PLAIN&tls=true");
auto client = mongocxx::client(uri);

Para obtener más información sobre cómo crear un objeto mongocxx::client en el driver de C++, consulte la siguiente documentación de la API: