2012-06-23 63 views
3

目的:ASP.NET成員身份驗證通過服務

我想創建一個Web服務,它允許我連接到它(通過ASP.NET Web應用程序),然後驗證用戶身份,就像成員提供者/角色提供請問。

我不想通過在ASP.NET Web應用程序的Web.config上進行配置來使用Membership/Role Provider。相反,我想要的是進行某種配置,將我的Asp.net Web應用程序指向web服務(我想創建的那個),而不是對用戶進行身份驗證。

預期的解決方案:

什麼,我經過一番研究谷歌發現,該解決方案可能是:WCF身份驗證服務。但我無法得到它的工作。我創造了這個服務,做了所有的配置,因爲在這篇文章中說:

http://msdn.microsoft.com/en-us/library/bb398990.aspx

,但我不知道,我現在該如何配置我的Asp.Net Web應用程序,使用該服務爲會員/角色提供者。

我可能會走完全錯誤的方向,這個服務可能不是我的問題的解決方案。你能幫我解決嗎?

感謝, 你開發大哥... :)

回答

2

你會在正確的方向。

ClientFormsAuthenticationMembershipProvider是您正在查找的會員供應商。

下面是樣品web.config配置使用它:

<appSettings> 
    <add key="ClientSettingsProvider.ServiceUri" value="" /> 
</appSettings> 

<system.web> 
    <compilation debug="true" targetFramework="4.0" /> 

    <membership defaultProvider="ClientAuthenticationMembershipProvider"> 
    <providers> 
     <clear/> 
     <add name="ClientAuthenticationMembershipProvider" 
    type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
    serviceUri="http://localhost:49712/Authentication_JSON_AppService.axd" /> 
    </providers> 
    </membership> 
</system.web> 

配置可能是棘手的。我花了幾個小時才知道應該添加ClientSettingsProvider.ServiceUri。

您可以將臨時WinForms或WPF項目添加到您的解決方案以構建配置。這些類型的項目在提供GUI配置的項目設置中有特殊的選項卡 - 服務選項卡。下面的示例適用於.NET 3.5,但4.0的理念相同。

http://www.codeproject.com/Articles/27670/Implementing-Application-Security-with-Client-Appl