Create an integration to manage access to a MongoDB Atlas instance
MongoDB Atlas is a fully managed and scalable cloud database service. It provides a flexible and secure platform for storing and managing data across various applications.
Developers can easily deploy, manage, and scale MongoDB databases in the cloud. Features like automated backups, global clusters, and real-time monitoring simplify database management.
Through this integration, Apono helps you discover and securely manage access to the resources in your MongoDB Atlas instance.
A project owner API key enables Apono to control Atlas user access across a or projects.
If you have a single MongoDB Atlas project, you can use a project owner API key to manage it through Apono.
Follow these steps to create a project owner API key:
At the Atlas CLI prompt, run the following command. Be sure to replace #PROJECT_ID with the project ID that contains the cluster you want to integrate.
Copy the public and private API key in the response.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the tab, click MongoDB Atlas. The Connect Integration page appears.
Under Discovery, select one or multiple resource types.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (, , , ).
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Now that you have completed this integration, you can that grant permission to your MongoDB Atlas instance.
Please note: due to , only 100 custom roles can be created per tenant. This may cause access requests to fail if the limit is exceeded.
#PUBLIC_KEY and #PRIVATE_KEY with actual values.You can also input the user credentials directly into the Apono UI during the integration process.
You can now integrate MongoDB Atlas.
If you have multiple MongoDB Atlas projects, you can use a single project owner API key to manage them all through Apono.
Follow these steps to create and associate a project owner API key:
At the Atlas CLI prompt, run the following command. Be sure to replace #PROJECT_ID with the project ID that contains the cluster you want to integrate.
atlas projects apiKeys create --desc cli-created --projectId "#PROJECT_ID" --role GROUP_OWNERCopy the public and private API key in the response.
List all your Atlas projects and their IDs.
For each additional project ID, assign the public API key. Be sure to replace #API_KEY_ID with your public API key from step 2 and #PROJECT_ID with the project ID of the additional project to associate with the API key.
with the credentials from step 2. Use the following key-value pair structure when generating the secret. Be sure to replace #PUBLIC_KEY and #PRIVATE_KEY with actual values.
You can also input the user credentials directly into the Apono UI during the .
You can now .
Cluster Name
Name for a database cluster in MongoDB Atlas, serving as an identifier within a project
Cluster Type
Configuration of a MongoDB Atlas cluster
Private Endpoint Id
(Optional) Unique identifier for a private endpoint in MongoDB Atlas
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Credential rotation period (in days)
(Optional) Number of days after which the database credentials must be rotated
Learn more about the .
User cleanup after access is revoked (in days)
(Optional) Defines the number of days after access has been revoked that the user should be deleted
Learn more about .
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Click Confirm.
Make any additional edits.
Deploy the code in your Terraform.
Refer to Integration Config Metadata for more details about the schema definition.
Apono Connector
On-prem connection serving as a bridge between a MongoDB Atlas instance and Apono:
Atlas CLI
Command-line interface used to manage Atlas resources
MongoDB Atlas Information
Information for the database instance to be integrated:
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Project Id

atlas projects apiKeys create --desc cli-created --projectId "#PROJECT_ID" --role GROUP_OWNERUnique identifier assigned to each project within MongoDB Atlas
"public_key": "#PUBLIC_KEY",
"private_key": "#PRIVATE_KEY"Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
atlas projects listatlas projects apiKeys assign #API_KEY_ID --role GROUP_OWNER --projectId #PROJECT_ID"public_key": "#PUBLIC_KEY",
"private_key": "#PRIVATE_KEY"