Я сделал по настройке Enterprise CA первый а затем с помощью указания на этой странице
http://social.technet.microsoft.com/wiki/contents/articles/2980.ldap-over-ssl-ldaps-certificate.aspx#Reasons
в следующем порядке
Публикация сертификата, который поддерживает проверку подлинности сервера
В пункте 5 этого шага, который
«5. В диалоговом окне Duplicate Template оставьте выбранный по умолчанию выбранный Windows Server 2003 Enterprise и нажмите «OK».
Осторожно выберите соответствующую ОС, руководство по умолчанию оставьте его по умолчанию, но я использовал Windows Server 2012 r2, поэтому я выбираю один я использую. Выберите соответствующую операционную систему.
Экспорт сертификата LDAPS и импорт для использования с AD DS
- Проверка соединения
в LDAPS Зачем мне ADLDS соединение через SSL?
Поскольку я хочу, чтобы пользователь изменил свой пароль ADSL, соединение без SSL, использующее PrincipalContext, не позволяло мне это делать. Итак, теперь я использую следующий код, он работает как шарм.
PrincipalContext pc = new PrincipalContext(
ContextType.ApplicationDirectory,
"YourServerUrl:YourSSLPort",
"CN=YourPartitionName,DC=partition,DC=com",
ContextOptions.SimpleBind | ContextOptions.SecureSocketLayer,
"FullDistinguisedNameOfUser",
"PasswordOfUser");
bool IsUserValidated = pc.ValidateCredentials(
"FullDistinguisedNameOfUser",
"PasswordOfUser",
ContextOptions.SimpleBind | ContextOptions.SecureSocketLayer);
if (IsUserValidated)
{
UserPrincipal up = UserPrincipal.FindByIdentity(
"FullDistinguisedNameOfUser",
"PasswordOfUser");
up.ChangePassword("UserOldPassword", "UserNewPassword");
}