I've got SL application where i should implement file managment subsystem. I've got hierarchical structure of filesfolders(just description). Also each filefolder has its own permissions to usersgroups. I would like implement that one user who has permission to download file couldn't give it to another user, who hasn't this permission. So if user has download permission he get link [URL] and download it. But he could give this link to another person without permission.
I am interested in finding out how I would go about displaying a website wiithout forms authentication but to utilise forms authentication when the user makes a request by clicking in the signin button, and then the user will view other pages that are private and secure,
I have a site in development with several web services (ASMX) that post important data to my database. When I navigate to the ASMX file in my browser, I can fill in the form with the parameters and post to the DB. If someone finds the URL to my WS, they can severely alter my database. I want to prevent people from being able to post to my WS publicly. So far, I've thought of two things that may but I'd like to know if there are any other ways:
Check to see if the HTTP Referrer to the WS method is the domain the WS is on Add an additional parameter called Key to all important WS methods and have this be an encrypted "password." Then encrypt my stored password on the WS side and compare if the keys match.
I know there is a server software named media server protects video link to direct accessing.But adobe's.
Is there a way to protect video link? or progressive video stream loading and preventing video direct link.in aspnet ? so no jdownloader or any link gather programme can detect it.
I have a question about C Sharp ASP.NET:Is there a difference (in code speed, resources) between:public static variable declared in public static class MyGlobals in a 'Code File' template;and the variable declared in a normal 'Class File' template;I use this variable in 2 different Class Files and also in _Default Page codebehind cs file.In fact in my case I need about 20 global variables of type List<string>.
I need to provide downloads of large files (upwards of 2 GB) on an ASP.net website. It has been some time since I've done something like this (I've been in the thick-client world for awhile now), and was wondering on current best practices for this I would like:
To be able to track download statistics: # of downloads is essential; actual bytes sent would be nice.
To provide downloads in a way that "plays nice" with third-party download managers. Many of our users have unreliable internet connections, and being able to resume a download is a must. To allow multiple users to download the same file simultaneously.
My download files are not security-sensitive, so providing a direct link ("right-click to download...") is a possibility. Is just providing a direct link sufficient, letting IIS handle it, and then using some log analyzer service (any recommendations?) to compile and report the statistics? Or do I need to intercept the download request, store some info in a database, then send a custom Response? Or is there an ASP.net user control (built-in or third party) that does this?
I have a few ideas on how to accomplish this, but before I make a big mess perhaps there's an obviously easy solution I'm not seeing.
So I have on my site software (.NET 2, C#) a calendar, and I've recently added some code to generate a temporary iCalendar file from an event, and e-mail it to the logged in user. That part works great; the temp file is created, a MailMessage is created with teh attachment, it's sent, and then the temp file is deleted.
I want to change this into a "download" as opposed to an e-mail. So I generate the temp file, but present it to the user as a download instead (so they can open/save it immediately). That's all fine, but where I'm stuck is how to "know" the download has been completed, so I can then delete the tempoary file.
I have "hacky" options like timers and whatnot to do cleanup, but I'm wondering if I'm missing a better solution.
This is my first time coding with ASP.NET!I've created a simple webpage and I need to know how to count the number of downloads of a file from my webpage.The download will be started through a button.And the other question is:Where should I store this information?
want to download the individual files from weburl. There are images listed on the website along with the check box for each image. User can select one or more images by checking the checkbox. When user click on Download button it should start downloading the files sequentially one after the other. File size is between 20mb to 200mb each.
I guess what im really saying is if i put a link to an mp3 file on a page, and i wanted that file to be able to be downloaded by the user is there a way to count the number of times that link has been pressed by a page user?
We are providing downloads of our application setups through an ASHX handler in ASP.NET.
A customer told us he uses some third party download manager application and that our way of providing the files currently does not support the "resume" feature of his download manager application.
My questions are:
What are the basic behind resuming a download? Is there a certain HTTP GET request that tells me the offset to start at?
i have a few calls however when i type in the URI into the address bar in internet explorer it prompts me to save the file. However google chrome displays it automatically in the browser page. Does anyone know why this would occur, here is an example of one of my calls;
I have been struggling to get file downloads working for some time now. Files that are a few Mb or less don't seem to cause a problem but larger files stop after a minute or so. I have tried two methods so far and neither seems to work any better than the other.
First Method:
[Code]....
Second Method:
[Code]....
I am well aware that the default timeout for a script is 90 seconds, so in the page load event I alter this to 10000 seconds for both the above examples.
[Code]....
[Code]....
This makes absolutely no difference - and besides this the download does not necessarily stop after 90 seconds - it is usually somewhere around 90 seconds but I have witnessed it stopping after 120 seconds. I don't have anything set up in my web.config file for this as I don't want to set large timeout values for the rest of my site. Does anyone have what I need to do to get my files to download and not stop after a minute or two?
At my place of work, we have an ASP.NET page that uses the following code to perform a file download. We use this rather than Request.TransmitFile() because the file is coming directly from a zip archive.
private void DownloadStream(Stream stream) { int bytesRead; int chunkSize = 1048576; //1MB byte[] readBuffer = new byte[chunkSize]; while ( (bytesRead = stream.Read(readBuffer, 0, readBuffer.Length)) > 0) { if (!Response.IsClientConnected) break; Response.OutputStream.Write(readBuffer, 0, bytesRead); Response.Flush(); } }
I'm trying to determine a reasonable value for the httpRuntime executionTimeout setting. The files being sent range up to 1GB in size, and some of our users have very slow pipes* to the webserver (think 64K lines). We don't want these users to experience connection resets. However, we want to keep a reasonable timeout value for the rest of the site.
Is there a way to define an executionTimeout setting only for this specific page (or even make it unlimited for that page specifically)? What's the recommended approach? I know we'd probably be better off using a totally different method to serve the files (e.g. FTP), but we don't have the freedom to make that choice. All we can do is modify the code for the site.
Also, I do think these downloads should be compressed before sending, but that's another matter.
*Off-topic question: Is "slow pipe" an annoyingly mixed metaphor? I should probably say "small pipe" instead, but that sounds strange to me in this context. Opinions?
I am using Microsoft's MVC design pattern and I have a method in my controller, which sets the data source of a gridview. Whilst I can bind all the other values in the gridview, I am stuck setting 4 hyperlinks. The hyperlinks need to work in the explanation given in the link below: [URL]for forcing downloads to keep the location of where files are saved to private, which I want set in the controller.
To fully explain what I am doing, in my controller for the gridview, I am setting the gridview's data source using ICollection, which is an object containing results from a query. From this collection, I extract a value which has the name of a folder which contains a number files. So, what I have done is to cast my collection to a object, to get folder name and then use a foreach loop to get each folder name. Then to get the files inside each folder, I use Directory.GetFiles, which returns a string array - I wrote string[] files = Directory.GetFiles(ConfigurationManager.appsettings["filepath"]+folderName); . I have set 4 properties for each Hyperlink I want to set.
It is at this point where I am stuck, because even though I can get to the files, I am unable to set the Hyperlinks to these files. Each time I try an set the NavigateUrl property, I get the error message Object not set to an instance of an object. Plus, I have two other issues to resolve:1) Even though there are 4 hyperlinks, not every hyperlink will be set. In other words, if there are only two files in the folder, I only want to set the appropriate hyperlinks. So, how can I iterate through the string array, and get each value inside the array to do a check?2) When I set my Hyperlinks in my controller, how do I simply pass the file and keep the file's actual storage location hidden as given in the link [URL]
Create a report to show the number of downloads per category. Order it by the number of downloads. Group it by category. The group header should contain total no. of downloads, which should be expandable to show actual no. of downloads sub category wise. The sub categories should also show the total no. of downloads for that subcategory. Each subcategory should be expandable and show the download numbers per product..
i have imlemented matrix for it so no need to insert group additionaly.i am facing problem in 'Order it by the number of downloads' when ever i use aggregate funtion for sorting it gives error like sort expression out of matrix
web pages running on the localhost, if i copy the web page link (address link), then copy to the another tab or browser, it should not open, it should display a Login Page.
For example, web pages are
Login.aspx Account.aspx
Once Login, account page will open, then copy the address link, then try to open in another tab or browser. It is directly account page is display.
Account page directly should not open without login page.
I am new at asp sites, and just started to use visual studio...
So every page i make, there is another one (source file) linked to it.
Example...default.aspx and with that the default.aspx.vb or default.aspv.cs. I know what those files are for, but how do i protect them from being downloaded from users... Anyone can just type the url, and get my hard work :-/
I'm going to publish an asp.net pre-compiled web site on shared hosting account but I don't want my code to be copied and able to run on another domain. I need to check domain and if not example.com or www.example.com redirect to error page or show error as response.
EDIT: Here is my solution based on given answers
void Application_BeginRequest(object sender, EventArgs e) { string[] safeDomains = new string[] { "localhost", "example.com", "www.example.com" }; if (!((IList)safeDomains).Contains(Request.ServerVariables["SERVER_NAME"])) { Response.Write("Domain not allowed!"); Response.End(); } }