我在网上找到了很多关于将 ASP.NET Membership Provider 与 wsHttpBindings 一起使用的资料,但我没有看到任何关于将其与 webHttpBindings 一起使用的参考资料。
我正在寻找一个可以在两种情况下工作的系统:
- 用户登录到一个 asp.net 网站,该网站正在调用该服务。
- 用户通过 REST 直接访问服务。
这是否可以使用内置框架(即仅通过配置)?如果是这样,我该如何配置服务?用户如何将凭据传递给 REST 服务?
我在网上找到了很多关于将 ASP.NET Membership Provider 与 wsHttpBindings 一起使用的资料,但我没有看到任何关于将其与 webHttpBindings 一起使用的参考资料。
我正在寻找一个可以在两种情况下工作的系统:
这是否可以使用内置框架(即仅通过配置)?如果是这样,我该如何配置服务?用户如何将凭据传递给 REST 服务?
我找到的最好的来源是:http: //www.leastprivilege.com/FinallyUsernamesOverTransportAuthenticationInWCF.aspx
该站点还有大量关于设置 HTTP 模块以处理基本身份验证的其他信息(我猜你会使用它,因为它是一种标准)。
HTTP 模块身份验证方法位于 Codeplex 上,其中包含示例代码和此处的所有内容:http: //www.codeplex.com/CustomBasicAuth
你的意思是ADO.NET 数据服务?
您可以为实体构建 QueryInterceptor 并限制对它的访问。例如:
[QueryInterceptor("foo_entity")]
public Expression<Func<foo_entity, bool>> FilterMembership()
{
MembershipUser user = Membership.GetUser();
Guid userGuid = (Guid)user.ProviderUserKey;
return c => c.UserId == userGuid;
}