diff --git a/login_providers.php b/login_providers.php
index 6adfe7ca2..1d35407b3 100644
--- a/login_providers.php
+++ b/login_providers.php
@@ -309,7 +309,7 @@ function provider_edit() : void {
],
'server' => [
'friendly_name' => __('Server(s)'),
- 'description' => __('A space delimited list of DNS hostnames or IP address of for valid LDAP servers. Cacti will attempt to use the LDAP servers from left to right to authenticate a user.'),
+ 'description' => __('A space delimited list of DNS hostnames or IP addresses for valid LDAP servers. Cacti will attempt to use the LDAP servers from left to right to authenticate a user.
For One-Time Password (OTP/MFA) logins, do not use a space delimited multi-server list. On a failed bind Cacti advances to the next server and re-binds with the same credentials, and the already-consumed one-time code will be rejected. Instead enter a single, resilient DNS name fronted by a DNS load balancer (VIP) so that server failover is handled below Cacti and only one authentication bind is ever performed.'),
'method' => 'textbox',
'value' => '|arg1:server|',
'default' => '',
@@ -384,7 +384,7 @@ function provider_edit() : void {
],
'mode' => [
'friendly_name' => __('Mode'),
- 'description' => __('Mode which cacti will attempt to authenticate against the LDAP server.
No Searching - No Distinguished Name (DN) searching occurs, just attempt to bind with the provided Distinguished Name (DN) format.
Anonymous Searching - Attempts to search for username against LDAP directory via anonymous binding to locate the users Distinguished Name (DN).
Specific Searching - Attempts search for username against LDAP directory via Specific Distinguished Name (DN) and Specific Password for binding to locate the users Distinguished Name (DN).'), + 'description' => __('Mode which cacti will attempt to authenticate against the LDAP server.No Searching - No Distinguished Name (DN) searching occurs, just attempt to bind with the provided Distinguished Name (DN) format.
Anonymous Searching - Attempts to search for username against LDAP directory via anonymous binding to locate the users Distinguished Name (DN).
Specific Searching - Attempts search for username against LDAP directory via Specific Distinguished Name (DN) and Specific Password for binding to locate the users Distinguished Name (DN).
One-Time Passwords (OTP/MFA) - Cacti binds the user password only once, during final authentication. No Searching performs no directory lookup and binds directly using the Distinguished Name (DN) template, so it is safe for OTP when the DN template alone identifies the user. When a directory lookup is required to resolve the DN, use Specific Searching with a dedicated service account (or Anonymous Searching where the directory permits it) so the lookup never consumes the single-use code. For resilient OTP deployments use a single DNS load balancer name in the Server(s) field rather than a space delimited multi-server list, which would re-attempt the bind with an already-consumed one-time password.'), 'method' => 'drop_array', 'value' => '|arg1:mode|', 'array' => $ldap_modes