Hanzo
PlatformHanzo KMSIntegrationsApp Connections

MongoDB Connection

Learn how to configure a MongoDB Connection for Hanzo KMS.

Hanzo KMS supports the use of Username & Password authentication to connect with MongoDB databases.

Configure a MongoDB user for Hanzo KMS

Hanzo KMS recommends creating a designated user in your MongoDB database for your connection.

use [TARGET-DATABASE]
db.createUser({
  user: "kms_manager",
  pwd: "[ENTER-YOUR-USER-PASSWORD]",
  roles: []
})

Depending on how you intend to use your MongoDB connection, you'll need to grant one or more of the following permissions.

To learn more about MongoDB's permission system, please visit their documentation.

For Secret Rotations, your Hanzo KMS user will require the ability to create, update, and delete users in the target database:

use [TARGET-DATABASE]
db.grantRolesToUser("kms_manager", [
  { role: "userAdmin", db: "[TARGET-DATABASE]" }
])

The userAdmin role allows managing users (create, update passwords, delete) within the specified database.

Create MongoDB Connection in Hanzo KMS

In your Hanzo KMS dashboard, navigate to the Integrations tab in the desired project, then select App Connections.

App Connections Tab

Click the + Add Connection button and select the MongoDB Connection option from the available integrations.

Select MongoDB Connection

Complete the MongoDB Connection form by entering:

  • A descriptive name for the connection
  • An optional description for future reference
  • The MongoDB host URL for your database
  • The MongoDB port for your database
  • The MongoDB username for your database
  • The MongoDB password for your database
  • The MongoDB database name to connect to

You can optionally configure SSL/TLS for your MongoDB connection in the SSL section.

MongoDB Connection Modal

After clicking Create, your MongoDB Connection is established and ready to use with your Hanzo KMS project.

MongoDB Connection Created

To create a MongoDB Connection, make an API request to the Create MongoDB Connection API endpoint.

Sample request

curl    --request POST \
        --url https://app.kms.hanzo.ai/api/v1/app-connections/mongodb \
        --header 'Content-Type: application/json' \
        --data '{
            "name": "my-mongodb-connection",
            "method": "username-and-password",
            "projectId": "7ffbb072-2575-495a-b5b0-127f88caef78",
            "credentials": {
                "host": "[MONGODB HOST]",
                "port": 27017,
                "username": "[MONGODB USERNAME]",
                "password": "[MONGODB PASSWORD]",
                "database": "[MONGODB DATABASE]"
            }
        }'

Sample response

{
  "appConnection": {
      "id": "e5d18aca-86f7-4026-a95e-efb8aeb0d8e6",
      "name": "my-mongodb-connection",
      "projectId": "7ffbb072-2575-495a-b5b0-127f88caef78",
      "description": null,
      "version": 1,
      "orgId": "6f03caa1-a5de-43ce-b127-95a145d3464c",
      "createdAt": "2025-04-23T19:46:34.831Z",
      "updatedAt": "2025-04-23T19:46:34.831Z",
      "isPlatformManagedCredentials": false,
      "credentialsHash": "d41d8cd98f00b204e9800998ecf8427e",
      "app": "mongodb",
      "method": "username-and-password",
      "credentials": {
        "host": "[MONGODB HOST]",
        "port": 27017,
        "username": "[MONGODB USERNAME]",
        "database": "[MONGODB DATABASE]",
        "sslEnabled": false,
        "sslRejectUnauthorized": false,
        "sslCertificate": ""
      }
  }
}

How is this guide?

Last updated on

On this page