Я работаю над требованием, когда мне нужно проверить пользователя с активной учетной записью каталога. Для этого я использовал LdapConnection
с PrincipalContext
и во всех случаях я могу проверить пользователя без SSL. Но мне нужно использовать проверку пользователя с SSL. Я также использовал правильный порт, то есть 636 / TCP LDAP SSL
Но всякий раз, когда я пытался использовать порт 636 и устанавливал contextoption
на ContextOptions.Negotiate | ContextOptions.SecureSocketLayer
, получал ошибку «С сервером невозможно связаться».
Ниже приведен мой код
using (principalContext = new PrincipalContext(ContextType.Domain, ldapServerIp, null, ContextOptions.Negotiate | ContextOptions.SecureSocketLayer, userName, password))
{
bool isCredentialValid = principalContext.ValidateCredentials(userName, password);
}
Адрес моего Ldap-сервера abc.com:636
. Если я удалю порт 636 и использую значение по умолчанию ContextOption
, то это аутентифицирует пользователей. Кто-нибудь когда-нибудь решал этот тип проблемы? Любая помощь будет оценена.