4

SimpleMembershipProviderで使用できますか、ApiControllerそれとも従来のWebページでのみ使用できますか?これを使用しようとすると、「Membership.Provider」プロパティはのインスタンスである必要があるというエラーが表示されますExtendedMembershipProvider

互換性がある場合、どのように呼び出すことができますか。ValidateUserWebSecurity.LoginのようにCookieを作成せずにメソッドを実行しますか?

アップデート

次の変更を行った後、WebAPIスキャフォールディング内で実行しました。

  1. Web.configsystem.web: Web APIスキャフォールディングによって挿入された、タグ内のデフォルトのメンバーシップおよびロールプロバイダーをコメントアウトします。

  2. テンプレートInitializeSimpleMebershipAttributeをMvc属性からに変更しますSystem.Web.Http.Filters。属性はコントローラーに直接フックし、Mvcは。に対しては機能しませんApiController

ただし、WebSecurityクラスはフォーム認証と混ざり合っており、.LoginメソッドはCookieをhttpヘッダーに添付します。WebMatrix.WebDataを公​​開しますが、認証に関して中立的な方法で使用することSimpleMembershipProviderはできません。.ValidateUser

実際にはSimpleMembership、フォーム認証以外で使用することを目的としていますか?ウェブ上でそれに対する明確な答えを見つけることができません。

ありがとう!

4

1 に答える 1

1

私は答えを得たと思います。このページの最後にある備考のセクションを参照してください

メソッドを使用SimpleMembershipProviderしてaを初期化すると、古いと同じようにクラスが使用可能になります。検証にクラスを使用する代わりに、が利用可能であり、httpヘッダーにCookieが添付されていません。WebMatrix.WebDataSystem.Web.Security.MembershipMembershipProviderWebSecurityMembership.ValidateUser

于 2012-12-14T06:34:40.153 に答える