Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs Menu
Docs Home
/ / /
Kotlin Sync Driver
/ /

LDAP (PLAIN) Authentication

You can authenticate to a Lightweight Directory Access Protocol (LDAP) server by using your directory server username and password.

Tip

PLAIN Authentication

The authentication mechanism is named PLAIN instead of LDAP because the driver authenticates by using the PLAIN Simple Authentication and Security Layer (SASL) defined in RFC-4616.

The examples in this section show how to specify LDAP authentication by using either a connection string or the MongoCredential class. Replace the following placeholder values:

  • <LDAP username>: Your LDAP username.

  • <password>: Your LDAP password.

  • <hostname>: The network address of your MongoDB deployment, accessible by your client.

  • <port>: The port number of your MongoDB deployment. If you omit this parameter, the driver uses the default port number (27017).

Select the Connection String or the MongoCredential tab below for instructions and sample code for specifying this authentication mechanism:

To specify the LDAP authentication mechanism by using a connection string:

  • Assign the authMechanism URL parameter to the value PLAIN

  • (Optional) Assign the authSource URL parameter to the value $external

Note

If you specify the PLAIN mechanism, you cannot assign authSource to any value other than $external.

The following code specifies the authentication mechanism in a connection string:

val connectionString = ConnectionString("<LDAP username>:<password>@<hostname>:<port>/?authSource=$external&authMechanism=PLAIN")
val mongoClient = MongoClient.create(connectionString)

To specify the LDAP authentication mechanism by using the MongoCredential class, use the createPlainCredential() method as shown in the following example:

val credential = MongoCredential.createPlainCredential("<LDAP username>", "$external", "<password>".toCharArray())
val settings = MongoClientSettings.builder()
.applyToClusterSettings { builder ->
builder.hosts(listOf(ServerAddress("<hostname>", <port>)))
}
.credential(credential)
.build()
val mongoClient = MongoClient.create(settings)

To learn more about authenticating to MongoDB, see Authentication in the MongoDB Server manual.

To learn more about creating a MongoClient object by using the Kotlin Sync driver, see the Create a MongoClient guide.

To learn more about the classes and methods for authenticating your application with Kotlin Sync driver, see the following API documentation:

Back

OIDC

On this page