为web应用程序使用WCF身份验证服务

为web应用程序使用WCF身份验证服务,wcf,web-applications,asp.net-membership,Wcf,Web Applications,Asp.net Membership,我正在使用我在web应用程序中设置的WCF身份验证服务。我已成功设置并测试了AuthenticationService和RoleService。web应用程序可以通过WCF服务成功调用ValidateUser和GetRolesForCurrentUser等方法 我想将WCF身份验证服务与我的web.config和site.map集成。我是否需要编写自定义提供程序,或者是否有某种方法可以修改web应用程序的web.config以使用WCF身份验证服务作为其成员身份提供程序 通过这种方式,我可以根据

我正在使用我在web应用程序中设置的WCF身份验证服务。我已成功设置并测试了AuthenticationService和RoleService。web应用程序可以通过WCF服务成功调用ValidateUser和GetRolesForCurrentUser等方法

我想将WCF身份验证服务与我的web.config和site.map集成。我是否需要编写自定义提供程序,或者是否有某种方法可以修改web应用程序的web.config以使用WCF身份验证服务作为其成员身份提供程序


通过这种方式,我可以根据WCF身份验证服务设置哪些角色可以访问哪些目录。

应用程序服务不打算替代提供程序堆栈

它们旨在从.aspx以外的上下文扩展和启用使用

在大多数情况下,您可以简单地使用默认的提供程序堆栈(成员资格/角色/配置文件)

您只需在服务调用的上下文中传递通过应用程序服务调用“登录”时获得的cookie

有关向WCF调用添加Cookie的更多信息,请参阅


如果您使用AJAX调用服务,您无需做任何事情,只需通过AJAX进行身份验证,然后通过AJAX进行调用。

Sky的答案似乎没有回答这个问题

在我看来,确实需要从ASP.NET应用程序调用WCF AuthenticationService

考虑一个三层应用程序,其中所有数据库访问都必须由应用程序层执行。只有一个数据库(数据层)包含业务数据和成员数据

我编写了一个三层实现,其中表示层上的自定义MembershipProvider调用应用层上的AuthenticationService,应用层反过来运行我的自定义身份验证例程。 我可以很容易地创建一个自定义的WCF服务(例如不是AuthenticationService),它可以进行身份验证,但我会尽可能使用.NET对象。
如果我能告诉ASP.NET使用AutoTigation服务,而不需要自定义的成员资格提供者,那就太好了,但我不认为这是可能的。

我假设你是Windows通信基础,而不是旧的Windows基础类(与ASP.NET无关)。