2012-07-29 113 views
0

我有一個WCF服務,負責認證用戶。與WCF身份驗證服務不同,我希望所有身份驗證(包括來自asp.net Web應用程序的身份驗證)在WCF服務層進行。Asp.Net使用WCF服務的Web應用程序認證

現在,我的查詢應該定義用於Web應用程序層的身份驗證的成員資格提供程序。例如,我定義了一個自定義的WCF Memebership提供程序,它調用WCF服務來執行身份驗證。 或者如果應用程序使用表單身份驗證來針對活動目錄對用戶進行身份驗證,那麼我會在Web層使用Active Directory成員資格提供程序。

根據我的邏輯,由於我希望WCF服務能夠對來自不同應用程序的用戶進行身份驗證,所以我會在服務層定義成員提供者。

但是,關於哪一層負責實施成員資格提供者存在意見分歧。

Thansk &問候 吉里賈·

回答

0

你不能(也不應該)執行,比方說,在WCF asp.net應用程序Windows身份驗證。你也不應該讓你的服務負責確定哪個認證使用asp.net。

總之,你應該定義應用程序級別您的身份驗證機制(儘管你可以在任何你想要的級別執行它)。

順便說一下,我會建議您使用已建立的聯邦協議(即WIF)來處理多個應用程序之間的身份驗證。

+0

如果我使用WIF,是不是所有身份驗證調用(包括用於asp.net的Windows身份驗證)都定向到聯合提供程序,然後聯合提供程序決定使用哪個身份提供程序來對用戶進行身份驗證。因此,在WIF缺席的情況下,我的應用程序不是扮演聯邦提供商角色的服務。 – 2012-07-31 01:21:24

+0

它會扮演這個角色,但爲什麼要創建自己的協議呢? – 2012-07-31 06:47:21

相關問題