[英]How to authenticate in LDAP with C#
我非常驚訝,因為我5年前建立了LDAP連接,但是突然之間我無法連接到ldap。 LDAP數據是:
LDAP: LDAP://172.16.0.181:390/dc=asmet,dc=local
Username: cn=zentyalro,dc=asmet,dc=local
Password: EBsmOpCoIytamGe=Yret
接下來是我用於身份驗證的代碼:
bool authentic = false;
try
{
DirectoryEntry entry = new DirectoryEntry("LDAP://172.16.0.181:390/dc=asmet,dc=local",
@"cn=zentyalro,dc=asmet,dc=local", "EBsmOpCoIytamGe=Yret");
object nativeObject = entry.NativeObject;
authentic = true;
}
catch (DirectoryServicesCOMException ex)
{
}
錯誤是:
指定的DN語法無效。
真的我不知道為什么會這樣。 更奇怪的是,使用任何LDAP資源管理器工具都可以進行身份驗證,但無法通過代碼進行身份驗證。 為什么?
我認為這是因為您的語法。 請嘗試以下代碼:
bool authentic = false;
using (var context = new PrincipalContext(ContextType.Domain, "172.16.0.181:390", username , password))
{
if (context.ValidateCredentials(username, password) == true)
{
authentic = true;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.