3

客观的:

我想创建一个 Web 服务,允许我连接到它(通过 ASP.NET Web 应用程序),然后像成员资格提供者/角色提供者一样对用户进行身份验证。

我不想通过在 ASP.NET Web 应用程序的 Web.config 中进行配置来使用成员资格/角色提供程序。相反,我想要的是进行某种配置,将我的 Asp.net Web 应用程序指向一个 Web 服务(我想要创建的那个),而不是对用户进行身份验证。

预期解决方案:

我在一些谷歌研究后发现,解决方案可能是:WCF 身份验证服务。但我无法让它工作。我创建了此服务,并按照本文中的说明进行了所有配置:

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

但我不确定,我现在如何配置我的 Asp.Net Web 应用程序,以将此服务用作成员资格/角色提供程序。

我可能走错了方向,这项服务可能无法解决我的问题。你能帮帮我吗?

谢谢,你的开发兄弟... :)

4

1 回答 1

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

于 2012-06-25T12:40:07.003 回答