Проверка входа с Active Directory + SSL - PullRequest
0 голосов
/ 07 февраля 2020

Я работаю над требованием, когда мне нужно проверить пользователя с активной учетной записью каталога. Для этого я использовал LdapConnection с NetworkCredential и PrincipalContext , и во всех случаях я могу проверить пользователя без SSL . Но мне нужно использовать проверку пользователя с SSL. Я также использовал правильный порт, т.е. 636 / TCP LDAP SSL

Ниже приведен код, который я сделал с PrincipalContext

using (principalContext = new PrincipalContext(ContextType.Domain, ldapServerIp, null, ContextOptions.Negotiate | ContextOptions.SecureSocketLayer, userName, password))
                { bool isCredentialValid = principalContext.ValidateCredentials(userName, password);}

Ниже приводится код, который я сделал с

using (ldapConnection = new LdapConnection(ldapServerIp))
                {
                    var networkCredential = new NetworkCredential(_username, _password, ldapServerIp);
                    ldapConnection.SessionOptions.SecureSocketLayer = true;
                    ldapConnection.AuthType = AuthType.Negotiate;
                    ldapConnection.Bind(networkCredential);

                }

Кто-нибудь сделал это ранее успешно. Если есть какое-то решение, которое будет очень полезно.

1 Ответ

0 голосов
/ 07 февраля 2020

Оба из них должны работать очень хорошо, если вы указали порт LDAPS (обычно 636). Таким образом, ваша переменная ldapServerIp должна быть установлена ​​на что-то вроде example.com:636.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...