簡體   English   中英

ASP.NET / IIS 7 - 使用Principal對Active Directory進行身份驗證

[英]ASP.NET / IIS 7 - Authenticate against an Active Directory using a Principal

我當前的應用程序使用PrincipalContext類來針對LDAP(更確切地說是Active Directory)驗證默認用戶(在Web.config專用部分中填寫):

ldapContext = new PrincipalContext(AdContextType, AdHost, AdContainer, 
                                   ContextOptions.SimpleBind,
                                   AdDefaultUser, AdDefaultPassword)

然后,此身份驗證允許搜索任何其他用戶(通過UserPrincipal.FindByIdentity(ldapContext, username) )。 但我必須改變這一點,因為在我的客戶端不能接受Web.config中的用戶。 好的,我能理解:-))

所以我有幾個解決方案:

  • 管理加密Web.config的相應部分( membership部分,提供providers等)

  • 使用部署了應用程序的IIS 7的應用程序池中的帳戶。 這意味着從IIS中檢索一個Principal(我想這一點不應該那么難),然后用它來對AD進行身份驗證; 但是我找不到任何方法,既不通過PrincipalContext類也不通過ActiveDirectoryMembershipProvider類。

您知道如何管理這兩種解決方案中的任何一種,還是您想到其他解決方案?

非常感謝 !!

我想不是用戶名是你的問題,更多的是密碼? 據我所知,第二個解決方案想要工作。 我不知道這樣做。

對於第一個解決方案,您可以加密用戶名和密碼,並將加密值存儲在字符串中。 加載后,您需要解密字符串。 但是你的解決方案對於反匯編是不安全的。

您還應該考慮是否需要高安全性實現,然后可以將加密密鑰存儲在安全存儲中。 然后你將成為反對拆解的保護者。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM