2011-07-23 7 views
-1

ファイルへの正確なパスを知っていても、Webサイトにログインしていない限り、ダウンロードを防止する必要があります。私はセッションを使用してユーザーを追跡しています。 App_Codeでクラスを作成しましたが、ダウンロードを防ぐためにMSDN Webサイトからこれらのコンテンツを変更する方法がわかりません。助けてください。ありがとうございました。未ログインのユーザーのダウンロードを防止するASP.NET

C#でお願いします。


using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 

/// <summary> 
/// Summary description for secure 
/// </summary> 
public class secure :IHttpModule 
{ 
    public String ModuleName 
    { 
     get { return "HelloWorldModule"; } 
    } 

    // In the Init function, register for HttpApplication 
    // events by adding your handlers. 
    public void Init(HttpApplication application) 
    { 
     application.BeginRequest += (new EventHandler(this.Application_BeginRequest)); 
     application.EndRequest += (new EventHandler(this.Application_EndRequest)); 
    } 

    // Your BeginRequest event handler. 
    private void Application_BeginRequest(Object source, EventArgs e) 
    { 
     HttpApplication application = (HttpApplication)source; 
     HttpContext context = application.Context; 
     context.Response.Write("<h1><font color=red>HelloWorldModule: Beginning of Request</font></h1><hr>"); 
    } 

    // Your EndRequest event handler. 
    private void Application_EndRequest(Object source, EventArgs e) 
    { 
     HttpApplication application = (HttpApplication)source; 
     HttpContext context = application.Context; 
     context.Response.Write("<hr><h1><font color=red>HelloWorldModule: End of Request</font></h1>"); 
    } 

    public void Dispose() 
    { 
    } 
} 

答えて

0

これを行う最も簡単な方法は、membership providerを使用し、単にリソースのパスに特定のロールアクセス内でのみ許可するユーザーにweb.configファイルを構成することにより、次のとおりです。

<configuration> 
    <location path="[path to secure]"> 
    <system.web> 
     <authorization> 
     <allow roles="Admin" /> 
     <deny users="*" /> 
     </authorization> 
    </system.web> 
    </location> 
</configuration> 
関連する問題