最近リリースされた Visual Studio 2013 Developer Preview に含まれる ASP.NET MVC 5 を使用すると、開発者は認証フィルターを適用できるようになり、さまざまなサードパーティ ベンダーやカスタム認証プロバイダーを使用してユーザーを認証できるようになります。ただし、これらのフィルターは、承認フィルターを呼び出す前に適用されます。
認証フィルターを作成するには、開発者は新しい C# ASP.NET プロジェクトを作成し、リストされたプロジェクト タイプから MVC を選択する必要があります。 Kunz, Leigh & Associates のシニア ソフトウェア開発エンジニアである Eric Vogel は、認証フィルターの使用をテストしました。彼は、ユーザーが認証されていない場合にログイン ページにリダイレクトするカスタム フィルターを作成しました。
Eric は、CustomAttributes ディレクトリと、
ActionFilterAttribute和IAuthenticationFilter: public class BasicAuthAttribute: ActionFilterAttribute,IAuthenticationFilter
public void OnAuthenticationChallenge(AuthenticationChallengeContext filterContext) { var user = filterContext.HttpContext.User; if (user == null || !user.Identity.IsAuthenticated) { filterContext.Result = new HttpUnauthorizedResult(); } }
using VSMMvc5AuthFilterDemo.CustomAttributes;