Я использую C # для аутентификации пользователей в моем приложении следующим образом:
LdapConnection connection = null;
try
{
using (connection = new LdapConnection(Configuration.JonahLdapServer))
{
connection.Credential = new NetworkCredential(userName, password, Configuration.JonahDomain);
connection.AuthType = AuthType.Basic;
connection.SessionOptions.SecureSocketLayer = true;
connection.SessionOptions.VerifyServerCertificate =
new VerifyServerCertificateCallback(AlwaysTrustCertificateDelegate);
connection.Bind();
return true;
}
}
Когда я запускаю это в VS 2008, оно работает просто отлично. Однако при развертывании приложения в IIS 5.1 оно дает мне следующую трассировку стека:
System.DirectoryServices.Protocols.LdapException: сервер LDAP недоступен.
System.DirectoryServices.Protocols.LdapConnection.Connect ()
в System.DirectoryServices.Protocols.LdapConnection.BindHelper (NetworkCredential newCredential, Boolean needSetCredential)
в System.DirectoryServices.Protocols.LdapConnection.Bind ()
в Jonahgroup.Lychee.Presentation.Security.SecurityManager.AuthenticateUser (String userName, String password)
Следует отметить, что если я запускаю код без SSL, он отлично работает как на IIS, так и на VS.
Любая помощь будет оценена.