Security :: DefaultCredentials Working On IIS6 But Not IIS7?
Dec 14, 2010
We are migrating an existing asp.net application from Windows Server 2003 with IIS6 to windows server 2008 with IIS7.
we use System.Net.CredentialCache.DefaultCredentials to pass the user credential to a web service. It is working fine with the old environment but with the new one we got "The request failed with HTTP status 401: Unauthorized." error.
Given the following code which is extremely generic, I was hoping someone could tell me a bit about what is going on behind the scenes...
[HttpPost] public ActionResult Load(Guid regionID, HttpPostedFileBase file) { if (file.ContentLength == 0) RedirectToAction("blablabla.....");
var fileBytes = new byte[file.ContentLength]; file.InputStream.Read(fileBytes, 0, file.ContentLength); }
Specifically, is the file completely uploaded to the server before my action method is invoked? Or is it the file.InputStream.Read() method call that causes or rather waits for the entire file to upload. Can I do partial reads on the stream and gain access to the "chunks" of the file as it is uploaded? (If the entire fire is uploaded before my method is invoked then it is all a moot point.) Is there any difference between IIS6 or II7 here?
I've done a very basic asp.net test page that populates dinamically (with items from 0 to 99) an asp:listbox on the onload event (only once, if not ispostback).
The asp:listbox is static, and there's an asp:button that I use only to produce a postback (it has no onclick server code)
When I execute it under II6 it works perfecty, but under IIS7 I get a strange behaviour: every now and then, when I push the asp:button, the page freezes and it's unable to postback.
I don't get a specific asp.net error as usual, just a blank page as if the website didn't exist!
The message is "Internet Explorer cannot display the webpage"
I've been bashing my head against this one for a few days, and haven't had any luck with it. I'm unable to get my VS2010 ASP.NET project to deploy to IIS. I receive the error"Unable to create the virtual directory. To access local IIS Web sites, you must install the following IIS ComponentsIIS 6 Metabase and IIS 6 Configuration CompatibilityASP.NETIn addition, you must run Visual Studio in the context of an Administrator Account"I've most certainly installed the metabase option, but it still shows up. I'm also not sure why it's telling me to install ASP.NET.Google is being entirely unhelpful, I was wondering if anyone here has any suggestions. I'm running Vista Ultimate 64Bit
I'm running a weird issue here. I have code that makes jquery ajax calls to a web service and dynamically adds controls using jquery. Everything works fine on my dev machine running IIS 5.1, but not when deployed to IIS 6. I'm using VS2010/ASP.Net 4.0, C#, jQuery 1.4.2 and jQuery UI 1.8.1. I'm using the same browser for each.
It partially works though. The code will add the controls to the page, but they aren't visible until I click them (they aren't visible though). I thought this was a css issue, but the styles are there too.
The ajax calls look like this:
[code]...
After checking everything in Fiddler and finding no differences, I tried it in Firefox, where it worked. Got me to thinking and sure enough, I was wrong, IE WAS going into compatibility mode. apparently by default it will use compatibility mode on the intranet, but not localhost (which happened to be the different versions of IIS). I tried IE7 and got the same thing. I need to change my code to make sure it works on IE7 as well.
i am using Intelligencia.UrlRewriter on my website and it works fine on my development machine, i tryed to deploy on IIS6 and i get this error:
The page cannot be found
The page you are looking for might have been removed, had its name changed, or is temporarily unavailable.Please try the following: Make sure that the Web site address displayed in the address bar of your browser is spelled and formatted correctly. If you reached this page by clicking a link, contact the Web site administrator to alert them that the link is incorrectly formatted. Click the Back button to try another link. HTTP Error 404 - File or directory not found.
Internet Information Services (IIS) Technical Information (for support personnel)
Go to Microsoft Product Support Services and perform a title search for the words HTTP and 404. Open IIS Help, which is accessible in IIS Manager (inetmgr), and search for topics titled Web Site Setup, Common Administrative Tasks, and About Custom Error Messages. this is the url that throws the error. [URL] this is the working url that is being rewriten to the above one. [URL]
Moved our web application from W2003 & IIS6 to W2008 R2 & IIS7.5 . One of the first things we discovered was to set the Application Pool in "Classic" mode. However we are still not out of the woods. We are having a AjaxControlToolKit error. I have attached a screenshot but in summary, the first line of code referring to the AjaxControlToolKit is flagged in error, Type.registerNamespace('AjaxControlToolkit'); The Debugger throws the error text below: 'Type' is undefined Default.aspx?
I am having an issue with IIS6 and intergrated windows authentication that is driving me nuts, and I am hoping one of you guys can point me in the right direction.
I have written an ASP.net 3.5 application, and have installed it on a Windows 2003 R2 SP2. I have turned on intergrated windows authentication on, turned off anonymous access. using local host on the server itself I have no problems, it works, picks up the NTlogin.
However when I go to a clients machine (logged in as one of the users of the domain) and try to access the website http://10.1.1.22/ I get asked for a username and password. If i enter a valid user name and password then I have no probelms. The NTlogin is picked up, application works.
But my issue is why does it come up with a username and password at all? shouldn't it just know this user is already in the domain, just go straight through to iis? how can i get rid of this? I have read multiple forums about server delegation etc... metabase.xml... nothing seems to work
When I run a site I built in Visual Web Developer, the default page is a login page with the asp.net login control, that redirects to another page. Works fine in the built in dev server. When I deploy to iis 6 and login, it doesnt redirect or anything. It just keeps saying the login was unsuccessful. I don't think its even checking the aspnetdb in the app data folder under iis. Both the dev page and the real page show under intranet in ie8, so I wouldn't think its treating the sites with different security settings. Doesnt the asp.net login control use javascript?
This is a really odd situation, so hopefully I can explain it well enough.
I am deploying an ASP.NET 4 webforms application to a Windows Server 2003 SP2 server running IIS6.
Here's the problem -- when the application pool recycles its worker process (w3wp.exe), about 80% of the time, I will get an ReflectionTypeLoadException error trying to access any page in the app that contains an EntityDataSoure every time I try to view it.
However (this is the interesting part) -- the other 20%, it works just fine. I've actually resorted to turning off recycling the worker process entirely for this application pool and just add/remove whitespace from web.config forcing the site to recompile until I get a "good" w3wp.exe.
If this isn't clear, what I'm saying is: the actual worker process doesn't work at all for pages containing an EntityDataSource for about 4/5 times it starts, but still manages to serve all other pages just fine. Once you get a worker process that manages to serve a page with an EntityDataSource, it works every time until that process gets recycled.
My question is, how can I debug this? It works fine on my dev machine, it works fine on the server as long as you get a good process running, but iisreset or a server restart or anything that kills the worker process is almost guaranteed to cause the site to not come back up and throw this ReflectionTypeLoadException.
I have an ASP.net 2.0 application on an IIS6 server with a second server running SQL.
The problem I have is that I can't use Integrated Windows Authentication to authenticate against the SQL server, instead the IIS passes its machine name (DOMAINMachineName$) to the SQL server. Of course I can add the necessary permissions to the machine name account on SQL, but I want to use the local user credentials in Integrated Windows Authentication to authenticate against SQL.
I have tried to find some reading/articles online but apart from a basic understanding I can't find the details I need to implement into my application. All I have found is that IIS doesn't pass the credentials onto a remote machine when using Integrated Windows Authentication, and Kerberos should be used instead. I have no experience of Kerberos or how to use it in ASP.net so I am hoping it can be done using Integrated Windows Authentication or be pointed to some good easy to understand articles on using/implementing Kerberos.
We're developping an application that uses forms authentication and URL rewriting (www.urlrewriter.net). In order to make extension-less URL rewriting possible we had to add a default application mapping for the asp.net aspnet_isapi.dll.
The problem we're experiencing now is that when the website is accessed by http://www.myapp.com/ then the aspnet_isapi.dll gets the request and forms authentication forwards it to our login site, so the user gets redirected to http://www.myapp.com/login.aspx?ReturnUrl=%2f instead of having default.aspx displayed (which is allowed to anyone).
Here's the part of web.config dealing with forms auth:
I did quite some research on this problem but didn't find any solution. Is this scenario possible at all, or does default application mapping and forms auth using <deny users="?"/> interfere by design?
P.S. the problems only manifest when running on IIS 6, the ASP.net Development Server handles it without any problems
public class LowerCaseRequest : IHttpModule { public void Init(HttpApplication context) { context.BeginRequest += new EventHandler(this.OnBeginRequest);
[Code]....
It works grate on my PC running XP and IIS 5.1
but on my webserver running IIS7 and WS 2008 dosn't works.
I have some code that I tweaked for a contact form that I have been using for years with no trouble. I recently upgraded my hosting account to IIS7 and upgraded the Framework and now my code isn't working. I don't know how to fix my code so that it works. Could someone look at it and tell me what I need to fix? I know it's a lot of code and the person that originally wrote it for me many years ago was kind enough to comment everything so I knew what was going on but with the upgrade I have no idea what is incorrect. The error that I am getting when the form is filed out and submitted is...
A Problem prevented your request from being accepted: The "SendUsing" configuration value is invalid.
Code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <%@ Page Language="VB" ContentType="text/html" ResponseEncoding="utf-8" %>
[code]... 'The first thing we must do is declare or "Dimension" the variables we will use. We will declare variables for each form field,and we will insert those variables into the text of the email message.
Dim strName as String = txtName.Text 'This will assign the text of the "Name" textbox to this variable Dim strEmail as String = txtEmail.Text 'This will assign the text of the "Email" textbox to this variable Dim strCity as String = txtCity.Text 'This will assign the text of the "City" textbox to this variable [code]...
I have been trying to read through a lot of suggestions from many forum about ASP.NET AJAX and IIS 7. I thought it was probably problem with my web.config. So, I created a brand new site to test the UpdatePanel and Ajax Control Tool Kits. Just one page which has oneTextBox + CalenderExtender and UpdatePanel with a Lable and a Button. It worked so well on the development server Cassini but when I published it to the II7 , it's not working at all.
So, What should I configure in the IIS 7 or should I do to my web site project / web.config ?
For example when a user enters www.homeforhire.com they should be redirected to default.aspx (for operational reasons the user is then redirected to www.homeforhire.com/home.aspx).
Instead an error is caught in the Rewrite module (which should not be activated). I am using an http module to perform URL rewriting.
It appears as if the default document setup is not working correctly, and the requested page ~/ is being sent to the Rewrite module, causing an error (which is then caught by my error handler and the user is redirected to the home page).
Entering www.homeforhire.com/default.aspx works correctly.
Can anyone tell me why the default document settings in the web.config do not appear to be working?
I have an application that ran fine on a Win 2003 box using windows authentication. After installing the app on a 32-bit Windows Server 2008 box the users are now prompted for domain credentials every time they call the site. I went into IIS manager for IIS7 and disabled anonymous authentication and enabled windows authentication. What do I need to do here for the user to not be prompted for the credentials?
I'm having a tough time implementing mixed-mode authentication (windows & forms based) for my application using IIS 7. Doing it in IIS6 is easy, but the process doesn't translate to 7/7.5 - and my research has led to me to conflicting answers, none of which.
I have redirect page called WindowsLogin.aspx, and a forms-based one called Login.aspx. I'm having difficulty enabling Windows authentication for just WindowsLogin.aspx.