[英]LDAP authentication in C# in asp.net
在我的網絡應用程序中,我有一個login.aspx
頁面。 當我輸入用戶名和密碼時,我需要在遠程服務器上驗證它。 它們只向我提供服務器名稱(路徑)和域名(不知道密碼和用戶名)。 如何做呢?
我的web.config
<authentication mode="Forms">
<forms loginUrl="Login.aspx" timeout="10"/>
</authentication>
我在ASP.Net MVC中讀過LDAP身份驗證,但在成員資格提供程序中,他們用連接,密碼和用戶名寫了。
我該怎么辦?
就像答案那樣:
連接保護,用戶名和密碼適用於有權代表系統查詢AD的帳戶。 根據網絡的安全性,可能必須進行設置,否則您將無法查詢AD以對用戶進行身份驗證。
這取決於服務器的配置如何進行身份驗證。
如果您需要做的只是驗證用戶是否存在且密碼是否有效,您可以使用以下內容:參數是域名,USER ID和USER密碼。 由於我們沒有查詢任何內容,因此非管理員權限就可以了。
public static bool LogonValid(string ldapDomain, string userName, string password) {
DirectoryEntry de = new DirectoryEntry(@"LDAP://" + ldapDomain, userName, password);
try {
object o = de.NativeObject;
return true;
}
catch (Exception ex) {
logger.Error(ex.ToString());
return false;
}
}
可能的原因是這不適用於所有情況,但到目前為止它對我有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.