2009-08-20 43 views
1

我有一个要求将网站作为服务帐户出于IP原因运行,我也希望能够使用AzMan进行用户的Auth/Auth验证。出于某种原因,我似乎无法让这些工作在一起。我已经设置了一个示例应用程序来测试基本吐出一些用户凭证的水域。除Azman和Web配置设置应用程序没有集成代码(无记录/数据库/ Webserice交互),它是一个传呼机。作为服务运行IIS的AzMan帐户

运行与匿名访问的网络服务帐户下的应用程序池否认我得到:

Windows Identity Check - Name: 'NT AUTHORITY\NETWORK SERVICE' 
Request.LogonUserIdentity.Name = 'CT\rhyc' 
HttpContext.User.Identity.Name = 'CT\rhyc' 
User.Identity.Name = 'CT\rhyc' 
Is in UserRole = 'True' 

..这是一切都很好,一切正常,但是服务帐户是网络服务不服务帐户我应该使用。 如果我将帐户切换到服务帐户,我会弹出一个窗口询问用户凭据(我不希望它应该是单一登录)。然而我得到这些凭据传递在前面的设置(ct/rhyc)

已经有一个setspn命令运行的网站(显然),但我真的不知道什么spn做,更不用说了知道如何检查它。 另外,如果我允许与运行该服务的应用程序池匿名访问帐户的我得到:

Windows Identity Check - Name: 'CT\SVC-PERAT2-T2DEV' 
Request.LogonUserIdentity.Name = 'PERAT2NTAH3WD1\CVX_IUSR' 
HttpContext.User.Identity.Name = '' 
User.Identity.Name = '' 
Is in UserRole = 'False' 

对不起球员,我和IIS的n00b,这是不正常的东西我会做,但我们的管理员不要”不像是会知道很多有关IIS,所以它留给我.. :(

回答

1

与您正在进入的Kerberos世界SPN,这通常是未知的领域。

有一个伟大的白皮书说通过解决安全问题来解决这个问题: http://www.microsoft.com/DOWNLOADS/details.aspx?FamilyID=7dfeb015-6043-47db-8238-dc7af89c93f1&displaylang=en

它解释了如何打开更多日志记录以获取身份验证问题的根。通常这是与代表团做在Exchange不是安装转嫁等

这里更多的用户的凭据: http://support.microsoft.com/kb/262177

0

OK,所以它看起来就像我们找错了树。克尔布罗斯从来没有被要求,有些如何通过中国人的耳语溜走。我们已经改变为NTLM,一切都很好。

CMD下面
CSCRIPT adsutil.vbs设置W3SVC/1152622725 /根/的NTAuthenticationProviders “NTLM”

,其中1152622725是网站ID

感谢所有帮助家伙,我们的教训:不要与kerbros,因为它咬了!

相关问题