Navigation

Configure MongoDB Authentication and Authorization

Your MongoDB deployments can use the access control mechanisms described on this page. You specify the authentication settings when adding the deployment. You can edit the security settings after adding a deployment.

If a deployment uses access control, Monitoring and Backup must authenticate to the deployment as MongoDB users with appropriate access. If you are using the MongoDB Agent with Automation enabled to manage your MongoDB deployments, you enable and configure authentication through the Ops Manager Application.

If you are not using the MongoDB Agent with Automation enabled to manage your MongoDB deployments, you must activate and configure Monitoring and Backups.

Considerations

With access control enabled, you must create MongoDB users so that clients can access your databases.

If you are using the MongoDB Agent with Automation enabled to manage your MongoDB deployments, Ops Manager automatically creates users for the agents when you enable access control. The user created for the MongoDB Agent has privileges to administrate and manage other users. As such, the first user you create can have any role.

When you select an Authentication Mechanism for your Ops Manager group, this enables access control for all the deployments in your Ops Manager group.

Recommendation

To avoid inconsistencies, use the Ops Manager interface to manage users and roles for MongoDB deployments.

See also

To learn more about MongoDB access control, see the Authentication and Authorization pages in the MongoDB manual.

Access Control Mechanisms

SCRAM-SHA-1 and SCRAM-SHA-256

MongoDB supports the following implementations of challenge-response mechanisms for authenticating users with passwords.

In the following table, the default authentication mechanism for the release series is marked with check square icon and acceptable authentication mechanisms are marked with check circle icon .

MongoDB Release Series MONGODB-CR SCRAM-SHA-1 SCRAM-SHA-256
4.0.x   check circle icon check square icon
3.6.x check circle icon check square icon  
3.4.x check circle icon check square icon  
3.2.x check circle icon check square icon  
3.0.x check circle icon check square icon  
Pre-3.0 check square icon    

To enable SCRAM-SHA-1 or SCRAM-SHA-256 when using:

  1. Enable Username and Password Authentication for your Ops Manager Project.
  2. Configure MongoDB Agent for Authentication.

LDAP

MongoDB Enterprise supports proxy authentication of users. This allows administrators to configure a MongoDB cluster to authenticate users by proxying authentication requests to a specified LDAP service.

To enable LDAP for your Ops Manager project:

  1. Enable LDAP Authentication for your Ops Manager Project.
  2. Configure MongoDB Agent for LDAP.

Kerberos

MongoDB Enterprise supports authentication using a Kerberos service. Kerberos is an IETF (RFC 4120) standard authentication protocol for large client/server systems.

To use MongoDB with Kerberos, you must have a properly configured Kerberos deployment, configure Kerberos service principals for MongoDB, and add the Kerberos user principal.

To enable Kerberos for your Ops Manager project:

  1. Enable Kerberos Authentication for your Ops Manager Project
  2. Configure the MongoDB Agent for Kerberos.

Specify Kerberos as the MongoDB process’s authentication mechanism when adding or editing the deployment.

X.509

MongoDB supports X.509 certificate authentication for use with a secure TLS connection. The X.509 client authentication allows clients to authenticate to servers with certificates rather than with a username and password.

To enable X.509 authentication for your Ops Manager project:

  1. Enable x.509 Authentication for your Ops Manager Project.
  2. Configure the MongoDB Agent for X.509 Authentication.

Note

At this time, Ops Manager doesn’t support using X.509 certificates for membership authentication.

Edit Host Credentials

You can configure the deployment to use the authentication mechanism from the Ops Manager interface. The Manage MongoDB Users and Roles tutorials describe how to configure an existing deployment to use each authentication mechanism.