Skip to content

LDAP Profiles – Configure Directory Server Connections

The LDAP Profiles page manages connections to directory servers (LDAP, Active Directory, eDirectory, and others) for user authentication. Each profile defines how MideyeServer connects to a directory, which attributes identify users and their phone numbers, how groups are resolved, and what authentication methods are used.

LDAP profiles are referenced by RADIUS Clients to enable directory-based user lookup during authentication. The list page displays real-time connection status indicators for each configured profile.

Required Role: ROOT, SUPER_ADMIN, or ADMIN (to create, edit, delete, clone, or test connections)

Navigation: Home → Directory Settings → LDAP Profiles

RoleViewCreate / Edit / DeleteCloneTest / Lookup
ROOT
SUPER_ADMIN
ADMIN
OPERATOR✅ (lookup only)
ColumnDescriptionVisibility
Server NameProfile name with live connection status indicator (green/red)Always
Host NameDirectory server hostname or IP addressDefault
PortConnection port (389 for LDAP, 636 for LDAPS)Default
NPS ServerAssociated Network Policy Server (clickable link)Hidden by default
ActionEdit, Delete, Search User, Clone buttonsAlways
ActionDescriptionRole Required
EditOpen the 7-tab edit formAdmin
DeleteDelete the profileAdmin
CloneCreate a duplicate profileAdmin
Search UserLook up a user in the directoryAny authenticated

The form has seven tabs and validates the LDAP connection on save.

Core connection settings for the directory server.

FieldTypeRequiredValidationDefaultDescription
Server NameTextYesMax 255, uniqueUnique name for this profile
Server ProductSelectYesACTIVE_DIRECTORYDirectory server type
Host NameTextYesMax 255; cannot be IP when SSL enabledServer hostname or IP
PortNumberYesMin: 1, Max: 65535389Connection port
DNTextYesMax 255Bind distinguished name
PasswordPasswordYesMax 255Bind password
Use SSLCheckboxNoOffEnable LDAPS (auto-changes port to 636)
Skip Certificate ValidationCheckboxNoOffSkip SSL certificate verification (shown when SSL enabled)
Search BaseMulti-tag inputYesMin: 1 entryBase DN(s) for user searches
NPS ServerSelectNoNoneAssociated Network Policy Server

Server Product Values:

ValueDescription
ACTIVE_DIRECTORYMicrosoft Active Directory
E_DIRECTORYNovell eDirectory
SUN_DIRECTORY_SERVEROracle/Sun Directory Server
LOTUS_DOMINOIBM Lotus Domino
OPEN_LDAPOpenLDAP
OTHEROther LDAP server

The Server Product selection controls two things: which LDAP connection class the backend uses for authentication, and which UI tabs are available in the editor. In practice, the codebase treats this as a binary choice — Active Directory versus everything else.

Backend connection handling:

BehaviorACTIVE_DIRECTORYAll Other Products
Connection classActiveDirectoryConnection (subclass)LdapConnection (base class)
Nested group searchAD-specific tokenGroups / objectSID binary attribute resolutionStandard DN-based memberOf matching
Remote access checkReads AD msNPAllowDialin attribute to deny/allow dial-in accessNo-op — the check never runs
Auth error handlingParses AD-specific LDAP error sub-codes (e.g., 0x773 password-must-reset, 0x532 password-expired). Optionally allows login despite these conditions.Simple exception — locks user (if locking enabled) and rejects authentication
Framed IP AddressReads msRADIUSFramedIPAddress (AD-specific attribute) and includes it in the RADIUS responseSame code runs but the attribute will not exist on non-AD servers

Recommended attribute defaults by directory type:

The default attribute values are optimized for Active Directory. When connecting to a different directory type, adjust the following fields on the User Attributes and Group Attributes tabs:

AttributeActive DirectoryeDirectorySun DirectoryLotus DominoOpenLDAP
Object ClasspersonPersonpersoninetOrgPersoninetOrgPerson
User ID AttributessAMAccountName; userPrincipalNameuiduiduiduid
Mobile Phone AttributesmobiletelephoneNumbertelephoneNumbermobilemobile
Group ClassgroupgroupOfNamesgroupofuniquenamesgroupOfNamesgroupOfNames
Group MembermemberuniqueMemberuniqueMembermembermember

Special Features:

  • Fetch Search Base — Tests the connection and auto-populates the search base from the directory
  • Lookup User — Opens a dialog to search for a user in the directory
  • Fetch Certificate — Retrieves and displays the SSL certificate from the server (SSL mode only), with option to save it

Defines which LDAP attributes map to MideyeServer user properties.

FieldTypeRequiredDefaultDescription
Object ClassTextYespersonLDAP object class for user entries
User ID AttributesMulti-tag inputYessAMAccountName, userPrincipalNameLDAP attributes containing the username
Mobile Phone AttributesMulti-tag inputYesmobileLDAP attributes containing the phone number
Token Number AttributeTextYesipPhoneLDAP attribute for hardware token serial numbers
TOTP Secret Cipher AttributeTextNoLDAP attribute storing encrypted TOTP secrets
Enable RADIUS TranslationCheckboxNoOffEnable attribute-to-RADIUS-attribute translation
Enable Log AttributesCheckboxNoOffLog LDAP attributes during authentication
Log Attributes ListTextNoComma-separated list of attributes to log (shown when logging enabled)
Log LevelSelectNoINFOLog level for attribute logging (TRACE, DEBUG, INFO, WARN, ERROR)
Write Attributes in DBCheckboxNoOffPersist logged attributes to the database

The Verify button next to the TOTP Secret Cipher field tests write access to the specified LDAP attribute.

Configures LDAP group membership resolution.

FieldTypeRequiredDefaultDescription
GroupsDynamic listNoLDAP group DNs to check for membership. Click “Add new group…” to add entries
Group ClassTextYesgroupLDAP object class for group entries
Group MemberTextYesmemberLDAP attribute identifying group members

Controls default authentication behavior for users in this directory.

FieldTypeRequiredDefaultDescription
Default Auth TypeSelectYesTOUCH_MOBILEDefault MFA method for directory users
Default Message TypeSelectYesFLASH_SMSOTP delivery method
Read Optional AttributesCheckboxNoOffRead per-user auth type from the directory
Auth Type AttributeTextNopagerLDAP attribute for per-user auth type (shown when Read Optional enabled)
Message Type AttributeTextNoLDAP attribute for per-user message type
Department AttributeTextNoLDAP attribute for department info
Password CompareTextNoLDAP attribute for local password comparison
Lock LDAP UsersCheckboxNoOnEnable account locking after failed attempts
Max Failed AttemptsNumberYes10Failed attempts before locking (Min: 1, Max: 100)
Minutes LockedNumberYes1Lock duration in minutes. -1 = permanent lock (Min: -1, Max: 1440)

Authentication Type Values:

ValueDescription
PASSWORDPassword only (single factor)
MOBILESMS OTP to mobile phone
TOKENHardware token OTP
CONCATPassword + OTP concatenated
PLUSMideye Plus app signing
TOUCHTouch approval notification
TOUCH_PLUSTouch with Plus fallback
TOUCH_MOBILETouch with SMS fallback

Active Directory–specific settings. This tab is disabled when Server Product is not ACTIVE_DIRECTORY or OTHER.

FieldTypeDefaultDescription
Check Remote Access FlagCheckboxOffCheck the AD “dial-in” remote access permission
Allow Password ResetCheckboxOffAllow password reset through RADIUS
Allow Password ExpiredCheckboxOffAllow authentication when AD password is expired
Search Nested GroupsCheckboxOffRecursively search nested group memberships
Use Framed IP AddressCheckboxOffInclude Framed-IP-Address attribute from AD

Automatic phone number formatting for directory-sourced numbers.

FieldTypeDefaultDescription
Auto CorrectionCheckboxOffEnable automatic phone number correction
International PrefixText+46Country code prefix to add (shown when auto-correction enabled)
Remove Leading ZeroCheckboxOnStrip leading zero from national numbers
Keep ParenthesesCheckboxOffPreserve parentheses in phone numbers

Connection timeout and performance settings.

FieldTypeRequiredValidationDefaultDescription
Connect TimeoutNumber (seconds)YesMin: 1, Max: 102Connection timeout in seconds
Read TimeoutNumber (seconds)YesMin: 1, Max: 1010Read operation timeout in seconds

Search for a user in the configured directory to verify connectivity and attribute mapping.

  1. Enter a username.
  2. Click Search.
  3. If found, the user’s LDAP attributes are displayed.

Available when SSL is enabled. Connects to the directory server and retrieves its SSL certificate.

  1. Certificate details are displayed (subject, issuer, validity).
  2. Enter a certificate alias.
  3. Click Save to store the certificate in MideyeServer’s trust store.

Tests that MideyeServer can write to the specified TOTP secret LDAP attribute.

  1. Enter a test username.
  2. Click Verify.
  3. Displays success or failure with error details.
  1. Click Add New.
  2. Set Server Product to ACTIVE_DIRECTORY.
  3. Enter the hostname and port (389 or 636 for SSL).
  4. Enter the bind DN (e.g., CN=svc-mideye,OU=Service,DC=corp,DC=local) and password.
  5. Click Fetch Search Base to auto-detect the base DN, or enter manually.
  6. On the User Attributes tab, verify the default AD attributes are correct.
  7. On the Authentication tab, set the default MFA method.
  8. Click Save (connection is tested automatically).
  1. Edit the LDAP profile.
  2. Go to the Authentication tab.
  3. Enable Lock LDAP Users.
  4. Set Max Failed Attempts (e.g., 5) and Minutes Locked (e.g., 15).
  5. Save.
  6. Locked users appear on the Locked Users page.
  1. Edit the LDAP profile.
  2. Go to the User Attributes tab.
  3. Enable Enable RADIUS Translation.
  4. Save.
  5. Configure translation rules on the RADIUS Translation page.
IssuePossible CauseResolution
Connection indicator redServer unreachable or wrong credentialsVerify hostname, port, bind DN, and password
SSL connection failsCertificate not trustedFetch and save the certificate, or enable Skip Certificate Validation for testing
Users not foundWrong search base or object classVerify search base and object class on the User Attributes tab
Cannot save — connection test failsServer unreachable during validationCheck network connectivity to the directory server
Phone numbers incorrectNumber format issuesConfigure auto-correction on the Number Correction tab
Group membership not resolvedWrong group class or member attributeVerify Group Class and Group Member attributes on the Group Attributes tab