2009-07-23 109 views
4

我有一個ASP.NET Web應用程序,它是爲使用默認ASP.NET窗體身份驗證的客戶端構建的。他們現在正在請求與Web應用程序「合作」的桌面(WinForms)應用程序。我已經創建了Web服務,以便從Web應用程序訪問他們想要的數據並將其放入桌面應用程序中。這很好..但是需要基於已存儲在asp.net應用程序中的角色來進行相同級別的安全性和數據訪問。.net和winforms的.Net身份驗證

因此,現在是時候在兩個應用程序之間進行身份驗證了。 我想通過在用戶首次打開WinForms應用程序時提示登錄,並調用Web服務來驗證用戶,獲取用戶角色和配置文件來利用asp.net身份驗證。

我敢肯定,這已經完成和或問了..我只是沒有找到問題/答案在SO。

回答

1

第一:爲您的Web服務使用WCF。這是比舊的ASMX服務更好的框架。

第二:WCF可以使用ASP.NET應用程序使用的相同的RoleProvider和MembershipProvider類。這是一個簡單的配置開關。同時使用它們,您的Web服務需要與Web應用程序相同的憑據。

而且這就是它。

欲瞭解更多信息,請參見:

Implementing a Role Provider

Implementing a Membership Provider

How to: Use the ASP.NET Membership Provider

0

爲了增加Randolpho的回答是:另一功能的用戶可能會喜歡的是保存他們的憑據,而不是進入的能力他們每次開始你的申請。如in this answer所述,您可以使用Credential Management API進行此操作。