2

IPrinciple のカスタム実装を使用しようとしています。メンバーシップとロール プロバイダーを作成し、それらを web.config に登録しました。どちらも機能します。

ただし、コントローラーの User プロパティにアクセスすると、まだSystem.Web.Security.RolePrinciple. User プロパティを実装に設定する場所はどこですか?

ASP.NET が web.config で指定した MembershipProvider を自動的に使用し、現在のユーザーを設定してくれることを期待していました。ただし、https: //stackoverflow.com/a/2126070/784908 は、HttpContext の現在のユーザーを Application_BeginRequest のカスタム原則に設定する必要があることを示唆しています。これは正しい場所ですか?役割のチェック/モデルのバインドには十分な早さですか? 他のものを壊す可能性があるリスクはありますか?

4

1 に答える 1

1

ただし、https: //stackoverflow.com/a/2126070/784908 は、HttpContext の現在のユーザーを Application_BeginRequest のカスタム原則に設定する必要があることを示唆しています。これは正しい場所ですか?

はい、それは可能な場所の 1 つです。もう 1 つのより MVC っぽい場所は、カスタムの AuthorizeAttribute を記述し、オーバーライドする AuthorizeCore メソッドでプリンシパルを設定することです。

于 2013-07-31T05:57:28.600 に答える