2016-07-20 27 views
4

Windows認証を使用するASP.NET Core 1.0 Webサイトを作成しました。私は認可を実装しており、それは期待どおりに働いています。現在、特定のユーザーに対して認証が失敗すると、一般的な「HTTP 403」エラーページが表示されます。ASP.NETコアのカスタム "アクセス拒否"ページにリダイレクト

enter image description here

それは私自身のカスタムにリダイレクトするようにどのように私はASP.NETのコアを構成することができますページの「アクセスが拒否されましたか」?

(Iは、Windows認証の代わりに、フォーム認証を使用しているかもしれないので?)私はこの資料に記載されたアプローチを試みたが、それは私のために動作しませんでした How to redirect unauthorized users with ASP.NET MVC 6

任意の助けをいただければ幸いです。

答えて

8

the status code pages middlewareを使用してください。

app.UseStatusCodePages(async context => { 
    if (context.HttpContext.Response.StatusCode == 403)) 
    { 
    // your redirect 
    } 
}); 

以上app.UseStatusCodePagesWithRedirects経由の一般的なアプローチ。ミドルウェアは、URLの一部としてステータスコードを渡して、リダイレクト(相対URLパスまたは絶対URLパスのいずれか)を処理できます。たとえば、次のようにに転送され、403エラーが発生します。

app.UseStatusCodePagesWithRedirects("~/errors/{0}"); 
+0

多くの感謝しています。 –

関連する問題