none
群集环境,IIS主目录中配置“连接到另一台计算机上的共享”引起的身份问 RRS feed

  • 常规讨论

  • 问题描述:

    因有多台Web前端,我将程序放到一台性能可靠的文件服务器上,将程序目录共享出来,然后配置各个前端Web服务器将IIS目录指定到网络路径,如\\{服务器}\{共享名}。如果我不采用这种方式,则需要将各台前端网站中的上传文件同步,使文件保持一致。而且一旦代码有更新,需要多台拷贝,很不便于维护。但却发现无论我如何切换访问账户,当前登录人始终显示为“domain\administrator”。

    关键环境配置:

    1、共享文件夹的共享权限为:Everyone完全控制,Users完全控制。

    2、共享文件夹的NTFS访问权限为:Everyone完全控制,Users完全控制。

    3、IIS中“连接为”对话框中,指定为"domain\administrator"访问文件。

    4、IIS验证为:集成Windows身份验证。

    5、网站Web.config中未添加<identity impersonate="false" />模拟身份节点。

    解决过程:

    1、我将“连接为”改为"test"账号,网站就始终显示登陆人为"test"。

    2、在“连接为”弹出框中,我将“在验证到网络目录的访问时,总是使用已经过身份验证的用户的凭据”钩上。再次访问网站会不停弹出用户名和密码输入框,输入正确也同样不停弹出提示,并且网站不能正常显示。

    3、我将集成Windows身份验证改为“基本身份验证”问题解决,当前登录身份可以随着账户切换而改变,但是切换后的身份不能传递给其它子站点,因为其它站点的身份验证方式都是集成Windows。

    TIP:

    我翻遍msdn找不到解决方法,我感觉问题应该是由客户端访问NTFS共享文件无权限导致的,但是我找不到解决方法,恳请各位给予帮忙,非常感谢!

    如果您解决不了这个问题,能探讨一下你在多个web前端环境下是如何规避此类问题的吗?

    2010年3月25日 9:51