向交换发送电子邮件时的ASP.NET应用程序双跳问题

时间:2012-06-15 16:20:54

标签: asp.net delegation

我为内部目的创建了一个ASP.NET应用程序,域用户访问一个简单的Web表单,填写表单并提交。该应用程序模拟用户并将登录域用户的电子邮件发送到我们的票务系统,其中从填写表单的用户生成票证。现在,当我通过登录到IIS(7.5)所在的同一服务器进行测试并提交表单时,一切正常,但是当我尝试从我的桌面(打开浏览器并指向Web服务器)执行相同操作时,它不起作用。在调查了这个问题之后,我发现这可能是一个双跳问题(我确认当交换管理员在几次尝试失败后检查日志并发现该网站试图以NTAuthority / Anonymous发送电子邮件时确认。)

我已经梳理了网页并发现了很多关于这个问题的信息,但我能看到的所有文章都详细说明了与早期版本的IIS(IIS 5或6)有关的问题。我正在使用7.5所以我不确定解决这个问题的过程会有什么不同。在IIS 7.5上遇到此问题的人是否可以发布解决双跳的基本步骤说明,因为它与IIS 7.5相关并将模拟的电子邮件发送到Exchange服务器?第一步 - 第二步 - 执行此操作等等......

我的另一个问题如下:我读过的很多文章指定为委派设置服务帐户,然后创建SPN ...但是使用IIS 7.5,我可以选择使用应用程序池标识。应用程序池标识是否适用于委派模拟,或者是否需要服务帐户来解决问题?

全部谢谢!

1 个答案:

答案 0 :(得分:0)

根据您的描述,听起来您的ASP.NET应用程序正试图通过其Windows网络登录凭据来确定登录用户?

如果是这样,您需要做的就是关闭IIS站点中的“启用匿名访问”,并确保“Authenticated Access”已启用​​“集成Windows身份验证”。然后,IIS应该正确地向浏览器查询其登录信息,并且会话应该使用用户的凭据。这假设了一些关于所使用的客户端浏览器的事情,如果使用了除Internet Explorer之外的其他内容,那么您可能还需要启用其他一种身份验证方法,以便其他浏览器能够正确地提示用户输入其网络登录凭据。抱歉,我目前没有正在运行的IIS 7.5服务器,以便为您提供确切的站点属性和说明。因此,如果你无法从我的描述中确定它,希望其他人可以添加,或者如果你需要我可以尝试跟进。