Skip to main content

Authentication

Authentication Backends

ModeDescription
Default User StoreBuilt-in user management with JWT tokens. Credentials stored in the credentials database.
LDAPEnterprise directory integration (Active Directory or OpenLDAP). Enable with ldapUserStoreEnabled = true.
SSO / OIDCExternal identity provider via OpenID Connect.
Custom BackendImplement a custom HTTP-based auth backend pointed to by authBackendUrl.

LDAP Configuration

Set ldapUserStoreEnabled = true to activate. Most LDAP keys have sensible defaults, but the following keys have no default (marked in the tables) and must be provided for a functional LDAP setup:

  • ldapConnectionName — bind DN used to connect to the LDAP server
  • ldapConnectionPassword — password for the bind DN
  • ldapUserSearchBase — base DN under which users are searched

All remaining keys are optional.

Connection

KeyTypeDefaultDescription
ldapUserStoreEnabledbooleanfalseActivate LDAP user store
ldapHostNamestring"localhost"LDAP server hostname
ldapPortint10389LDAP port (636 for LDAPS)
ldapConnectionNamestringBind DN, e.g. "uid=admin,ou=system"
ldapConnectionPasswordstringBind DN password
ldapSslEnabledbooleanfalseEnable TLS (LDAPS)
ldapTrustStorePathstringPath to JKS truststore for LDAP CA certificate
ldapTrustStorePasswordstringTruststore password
KeyTypeDefaultDescription
ldapUserSearchBasestringBase DN for user search, e.g. "ou=Users,dc=wso2,dc=org"
ldapUserNameAttributestring"uid"User attribute for login ("sAMAccountName" for Active Directory)
ldapUserSearchFilterstring"(&(objectClass=person)(uid=?))"Search filter; ? is replaced with the username
ldapUserDNPatternstring""Construct DN directly without a search, e.g. "uid={0},ou=Users,dc=wso2,dc=org"
ldapDisplayNameAttributestring""LDAP attribute used as the display name; empty = username

Group / Role Lookup

KeyTypeDefaultDescription
ldapReadGroupsbooleantrueEnable group lookup
ldapMemberOfAttributestring""Active Directory memberOf attribute (takes precedence when set)
ldapGroupNameAttributestring"cn"Attribute holding the group name
ldapGroupSearchBasestringBase DN for group search (used when ldapMemberOfAttribute is empty)
ldapGroupSearchFilterstring"(objectClass=groupOfNames)"Group search filter
ldapMembershipAttributestring"member"Membership attribute ("uniqueMember" or "memberUid" for posixGroup)
ldapAdminRolesstring[]["admin"]LDAP groups whose members are granted ICP super-admin on first login