SimpleMembershipProvider
可以与ApiController
一起使用,还是只用于经典网页?尝试使用它时,我收到错误“Membership.Provider”属性必须是ExtendedMembershipProvider
的实例。
如果兼容,如何在不创建类似WebSecurity.Login的cookie的情况下调用。ValidateUser
方法?
更新
我在以下更改后在Web API脚手架中运行它:
Web.config
:取消默认会员资格& {API}脚本中插入的system.web
标记中的角色提供程序。
将模板InitializeSimpleMebershipAttribute
从Mvc属性更改为System.Web.Http.Filters
。属性直接挂钩到控制器中,Mvc不适用于ApiController
。
但是,WebSecurity
类与表单身份验证混合,.Login
方法将cookie附加到http-header。 WebMatrix.WebData
公开了SimpleMembershipProvider
,但没有.ValidateUser
以中立的方式使用它来进行身份验证。
SimpleMembership
实际上是否打算与表单身份验证一起使用?我无法在网上找到明确的答案。
谢谢!
答案 0 :(得分:1)
我想我得到了答案。 See the remarks section at the end of this page
使用SimpleMembershipProvider
方法初始化WebMatrix.WebData
后,System.Web.Security.Membership
类可用,就像旧版MembershipProvider
一样。而不是使用WebSecurity
类进行验证,Membership.ValidateUser
可用,并且没有cookie附加到http标头。