簡體   English   中英

IIS中的WCF:WCF執行的基本授權

[英]WCF in IIS: basic authorization performed by WCF

我在IIS中托管WCF服務,並且正在使用基本授權。 當IIS執行授權時,我的WCF服務無法判斷是否允許特定用戶。 不幸的是,我必須支持已啟用用戶名的列表。 該服務和元數據必須僅對列表中的用戶可用,而對其他用戶不可用。 僅使用基本授權怎么辦? 消息授權不是一種選擇,因為我無法控制服務使用者。

澄清:我可以將Windows用戶分配給該服務,從而限制對特定組的訪問。 我要實現的是允許該服務以編程方式限制對特定用戶的訪問。 由於IIS自行執行身份驗證,因此無法使用使用UserNamePasswordValidator的幼稚方法。

在我看來,您可能會混淆兩個獨立的問題:

在您的情況下將傳輸安全性與WCF一起使用時,IIS將執行Authentication 這僅驗證指定的用戶名/密碼在身份驗證上下文(本地計算機或域)中是否為有效組合。

但是,您要做的是使用“ 授權”來控制通過身份驗證的用戶是否有權訪問您的服務。 這是一個單獨的關注,其中WCF 確實有在這個控制。 您要做的是設置一個授權策略,該策略僅向您想要的用戶授予對服務的訪問權限。

默認情況下,這將基於Windows組成員身份來完成,但是如果這不太適合您的方案,則可以自定義在WCF級別的發生方式,例如使用ASP.NET角色成員資格提供程序,甚至使用自定義角色提供者。

以下兩篇文章應為您指明正確的方向:

暫無
暫無

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

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