Click here to Skip to main content
15,879,474 members
Articles / Web Development / ASP.NET
Tip/Trick

Limit Access Rights to download a file in ASP.NET

Rate me:
Please Sign up or sign in to vote.
4.29/5 (9 votes)
22 Feb 2010CPOL 17.3K   13   2
If you want to keep a downloadable file private to end users / customers with their username and password, everyone suggests not to put the file in the web root directory, and gives you a suggestion to change IIS settings and use Response.TransmitFile. When you are not having access to the...
If you want to keep a downloadable file private to end users / customers with their username and password, everyone suggests not to put the file in the web root directory, and gives you a suggestion to change IIS settings and use Response.TransmitFile. When you are not having access to the server, then it will be a difficult task for you.

Where you are not having access to the server and you are permitted to upload files under your web directory only, here are some simple steps for you to restrict access to files with username and password.

Say file myfile.zip is to be downloaded with a usersname/password validation.

Step 1: Rename myfile.zip with myfile.config.
Step 2: Create a page to enter username and password.
Step 3: If username and password are valid, then use the below code to transfer the file.

if (isValidUser)
{
    Response.Clear();
    Response.ContentType = @"application/setup";
    Response.AppendHeader(@"Content-Disposition", ("attachment; filename=myfile.zip"));
    Response.TransmitFile(@"myfile.config");
    Response.End();
}
else
{
    // prompt the web user with some message of access privileges
}



No server access is required to implement this trick. The only workaround in this is that ASP.NET will not allow access to files with extension .config.

You are done.
Any suggestions are highly appreciated.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
India India
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
QuestionAbsolute BOGUS / Rubish Pin
nahid47712-Jul-12 20:52
nahid47712-Jul-12 20:52 
GeneralMy vote of 5 Pin
NourBerro24-May-12 3:20
NourBerro24-May-12 3:20 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.