I am working with a DNN 5.4.1 installation that is set up as an intranet. It currenrly uses the ADSI provider with Windows Authentication set up in IIS. Users access this intranet site from domain machines within the domain and from non-domain machines through a VPN connection.
I have developed a module that impersonates the logged in user and the displays files from a directory on another machine on the domain. The basic gist of how I am doing impersonation is:
impersonationContext = Request.LogonUserIdentity.Impersonate
If I make the following settings in IIS here are the results I get:
- Windows Authentication: The FileList module works fine for users who have a domain computer and run Internet Explorer, even if they are connected through a VPN. Non-domain machines or FireFox users cannot see any directories.
- Basic Authentication: The FileList module works fine for everyone. However, each user, even those on a domain machine, will receive a challenge prompt and will have to enter credentials before they can access the intranet.
- Mixed Windows and Basic Authentication: Same results as Windows Authentication.
I know that IIS processes Windows Authentication requests before it processes Basic Requests. In our test, IIS appears to think that it has correctly processed a Windows Authentication Request with ADSI when it has not. Because of this I think that the IIS never attempts Basic Authentication when it is set to accept both Windows and Basic Authentication.
I can live with the requirement to only support IE. However, I can't have all of the domain machines receving the challenge prompt.
I've been round and round with this one and am not at a pretty dead end. Does anyone have any trails that I might prusue to better understand what is going on and what can be done to correct it?
Thanks in advance for the help!