2011-12-10 7 views
0

私はasp.netのセキュリティパターンと実践について学んでいます。 HttpForbiddenHandlerを使用して、特定の拡張子を持つ特定のファイルのダウンロードを拒否するコードがあります。それは問題ありませんが、今ではこの機能を拡張したいと考えています。私は、ユーザーがいくつかの禁止されたファイルにアクセスしようとすると404エラーコードを投げたい。HttpForbiddenHandlerと404

<system.web> 
<httpHandlers> 
    <add verb="*" path="*.mdb" type="System.Web.HttpForbiddenHandler" /> 
+0

理由説明書を読んでいませんか? http://support.microsoft.com/kb/815152 – Aristos

+0

ええ、私はすでに知っていましたが、この方法ではユーザーは禁止されたエラーメッセージを受け取るため、この動作を次の段階に上書きして、禁じられたファイルの禁じられたファイルについても404を送信してください。私は既存のディレクトリのためにこれを行う方法を知っていますが、禁止されたファイルのためにそれを行う方法を知らない... –

答えて

1
using System.Web; 

namespace HandlerExample 
{ 
    public class HttpNotFoundHandler : IHttpHandler 
    { 
     // Override the ProcessRequest method. 
     public void ProcessRequest(HttpContext context) 
     { 
     context.Response.StatusCode = 404; 
     } 

     // Override the IsReusable property. 
     public bool IsReusable 
     { 
     get { return true; } 
     } 
    } 
} 



<system.web> 
<httpHandlers> 
    <add verb="*" path="*.mdb" type="HandlerExample.HttpNotFoundHandler" />