IIS 6 integrated authentication still prompts for credentials

I have an existing intranet website that uses anonymous authentication in IIS and handles user authentication via ASP.  Each page checks for the existence of a session variable that is populated when the user successfully logs in.  If that variable is null, the user is redirected to login.asp where they can login.

I want to use integrated authentication so users aren't prompted to enter a password.  What I've done is changed the authentication settings on login.asp in IIS Manager.  I disabled anonymous access for this page and set the only enabled authentication method to integrated windows authentication.  The idea being, that when the user is redirected to login.asp, I can grab their windows username, set the session variable for them, and thus automatically log them in.

Here's the problem.  When I browse to login.asp, I still get a authentication dialog box popup in the browser.  I'm using Firefox and have added the sites URL to the "network.automatic-ntlm-auth.trusted-uris" parameter under about:config.  I've checked the NTFS permissions on the file and verified that integrated windows authentication is selected for it in IIS Manager - but it still prompts me for authentication.

I created a new website in IIS for testing purposes.  I created a new webroot folder and copied the login.asp file into it.  I set the directory security options for this new test website to allow anonymous access and then manually set the authentication options on the login.asp file to only permit integrated windows auth.  I added the test site's URL to firefox's list of NTLM sites and when I browse to login.asp on the test site, I am logged in automatically.

Here's the kicker - in IIS Manager, I changed the directory for the test website to the same directory as the existing intranet.  Now when I browse to the test site, everything works perfectly, I am automatically logged in.

So, something about the configuration of the intranet site in IIS is screwy.  Essentially, I've set up a duplicate website in IIS, pointing to the same webroot, with the same auth settings, and that one works but the original site doesn't.

I could just create a new site in IIS and disable the old one, but there are tons of virtual directories, and special settings on subfolders that I'd have to duplicate, which would be a lot of work.

Very frustrating...what am I missing?
Who is Participating?
cj_1969Connect With a Mentor Commented:
Try looking at the metabase.xml file and see if there is a section specifically for the site in question and if it has an authentication section in it.

Check out this page for info on editing the metabase ... http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/1d1e5de4-fd63-40cd-bc5d-c20521548eed.mspx?mfr=true
This sounds like some additional settings have been enabled, or not, in the original site configuration.
Check the properties tab for the site and then check the Home tab then the Configuration button then the Options tab ... check the Enable parents path to start with.
FWestonAuthor Commented:
I've gone through the IIS properties for both sites side by side and they're identical.  Neither had the enable parents path option selected.  Enabling this didn't change affect the problem.
Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Check in the site and see if there is web.config file.
Look for the authentication section, see if this is set to forms ...
<!-- Web.config file -->
   <authentication mode="Forms">
      <forms forms="401kApp" loginUrl="/login.aspx" />

if it is, change it to
   <!-- mode=[Windows|Forms|Passport|None] -->
   <authentication mode="Windows" />

Well, change the authentication mode ="" portion in your file.
FWestonAuthor Commented:
There is not a web.config file.
FWestonAuthor Commented:
I ended up just disabling the existing site and setting up all the virtual directory settings on the test site and everything is working.  It ended up being less work, and I needed to get it done so I could proceed with the project.  I'll give you points for the assistance though.
If I had known you were going that route I would have tried to help you out with that.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.