2017-10-17 249 views
0

注:以下问题只发生在IE 11,并且工作正常使用ChromeIIS Windows身份验证 - 更改用户 - 问题与IIS 8.5

在我们的内联网,我们建立单纯使用Windows身份验证为我们所有的web应用程序。该设置包含主页Web应用程序,以及从主页链接的少数其他Web应用程序,每个应用程序和主页都位于不同的应用程序池中。我们已实施更改用户功能使用标准401重定向如'Login as another user' MVC 4 Windows Authentication所述。

当前的托管服务器是Windows Server 2008 R2,我们正在尽我们的努力来迁移到Windows Server 2012 R2。

在测试过程中,我们发现更改用户功能在主页上正常工作,但在访问任何其他应用程序时,登录用户返回到原始登录用户。通过在主页中使用_target ='blank',可以在新选项卡中打开链接。

在Windows 2008 R2上托管的相同应用程序功能与预期相同,并且更改用户也反映在其他Web应用程序中。

我试过Google没有任何匹配的经验,这是一个已知的问题,是否有任何解决方法来解决相同的问题?

样品设置和输出:

的Windows Server 2008 R2(IIS 7.5)

╔═══════════╦══════════════════════╦═══════════════════════╗ 
║ Time-Step ║  Url-Location  ║  Current-User  ║ 
╠═══════════╬══════════════════════╬═══════════════════════╣ 
║   1 ║ /HomePage   ║ MyDomain\OriginalUser ║ 
║   2 ║ /HomePage/ChangeUser ║ MyDomain\NewUser  ║ 
║   3 ║ /MyApp    ║ MyDomain\NewUser  ║ 
╚═══════════╩══════════════════════╩═══════════════════════╝ 

的Windows Server 2012 R2(IIS 8.5)

╔═══════════╦══════════════════════╦═══════════════════════╗ 
║ Time-Step ║  Url-Location  ║  Current-User  ║ 
╠═══════════╬══════════════════════╬═══════════════════════╣ 
║   1 ║ /HomePage   ║ MyDomain\OriginalUser ║ 
║   2 ║ /HomePage/ChangeUser ║ MyDomain\NewUser  ║ 
║   3 ║ /MyApp    ║ MyDomain\OriginalUser ║ 
╚═══════════╩══════════════════════╩═══════════════════════╝ 

的当前用户信息使用访问

回答

0

解决:Windows认证中提供者的顺序很重要。一旦我们将NTLM提交到提供商列表中的协商之上,问题就解决了。