Изменение URL-адреса с LDAP на LDAPS (.Net MVC)
Мое приложение использует аутентификацию AD для входа в систему с использованием URL-адреса LDAP. Все было хорошо, пока наш SA не сказал нам изменить URL-адрес на LDAPS. После того, как я добавил URL-адрес как LDAPS, он выдает исключение и не позволяет пользователям входить в систему. Пожалуйста, помогите мне в этом.
Working LDAP URL: LDAP://reg1.abc.com
LDAPS URL (NEW) : LDAPS://reg1.abc.com (Not working once changed)
Ниже приведен код для аутентификации пользователя через LDAP.
public static SearchResult AuthenticateUser(string userName, string password)
{
var directoryEntry = new DirectoryEntry(ConfigurationManager.AppSettings["ActiveDirectoryPath"], userName, password, AuthenticationTypes.Secure);
var directorySearcher = new DirectorySearcher(directoryEntry);
directorySearcher.Filter = "(samaccountname=" + userName + ")";
var result = directorySearcher.FindOne();
return result;
}
1 ответ
Решение
Это распространенный вопрос, на который уже можно получить ответ при неизвестной ошибке (0x80005000) с LDAPS Connection. Перейдите по этой ссылке и попробуйте добавить порт 636 и пользовательскую проверку сертификата:
LdapConnection con = new LdapConnection(new LdapDirectoryIdentifier("server", port));
con.SessionOptions.SecureSocketLayer = true;
con.SessionOptions.VerifyServerCertificate = new VerifyServerCertificateCallback(ServerCallback);
con.Credential = new NetworkCredential(String.Empty, String.Empty);
con.AuthType = AuthType.Basic;
con.Bind();
В данном примере Credential использует пустые строки, которые могут потребоваться при необходимости изменить реальный логин / пароль.