121,121...正在赶来!请不要走开哦...
Logo Background RSS

诉说 IIS 用户名和密码的残酷命运

  • Written by SUNJIANSUNJIAN 哇! 3 位骚人吟风起舞.3 条评论 Comments (464 views)

    [摘要]本文主要讲的是DANIEL在这次第一次使用 windows IIS 5.0 +  ASP.NET + MS SQL 2000 的曲折经历,问题主要在于正常完成IIS5.0的安装之后不能由默认的匿名用户在浏览器里面通过LOCALHOST访问IIS服务器。而是需要输入用户名和密码,另外就是当使用Administrator作为匿名登录用户之后不能执行脚本文件,只能执行静态文件。
    基本症状一:我安装完IIS5.0之后不能从HTTP://LOCALHOST直接进入,而是弹出一个WINDOWS登录框,需要输入用户名和密码。 但是IIS默认是允许匿名登录的,所以就郁闷了,服务器必然是有问题的。

    【解】解绝这个问题有三个思路

    一是在IIS设置里面集成windows的身份验证,我满以为这种小问题应该就这样迎刃而解的,但是,当简单的集成WINDOWS身份认证之后,出来的却是这么一个东西,失望之…

    技术信息(用于支持人员)

    • 错误类型:
      Microsoft VBScript
      运行时错误 (0×800A0046)
      没有权限: ‘GetObject’
      /localstart.asp,
      40
    • 浏览器类型:
      Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; CIBA; .NET CLR 2.0.50727)
    • 网页:
      GET /localstart.asp
    • 时间:
      2008
      年8月28, 16:15:20
    • 详细信息:
      Microsoft 支持

    二是在组策略里面修改IUSER_****的密码,以备他用,也就是不集成windows身份认证在打开localhost的时候用这个账户登录,但实践证明这个是不奏效的,应为权限问题,不能打开,提示GETOBJECT()错误!非常遗憾。

    我想到的第三个方法就是我使用了Administrator来作为IIS的匿名登录用户。因为通过前面的情况分析来看,就是一个用户权限不够的问题。OH!YEAH. 行了!。。。汗,高兴得太早,无语。使用VS调试的时候说服务器配置不正确,不能执行脚本,但是HTML就没有问题,于是乎,郁闷之。(PS: 有人通过我介绍的这个方法更改账户之后解决了所有问题,所有遇到类似问题的朋友可以试试这个方案)

    哎。。。回到IIS后台,仔细斟酌!发现在目录安全性里面,有这么一处说明:

    使用以下身份认证方法,并在下列条件下,需要用户名和密码:

    —禁用了匿名访问;

    —使用NTFS访问控制列表权限限制了访问权限。

    我不是很明白第二项“NTFS权限控制列表”是怎么实现或者需要怎么操作 (如果有哪位高手知道的话还请留言告诉我一声,我知道在WINDOWS的高级文件共享里面有相关选项,做了不奏效) ,大概可以理解为用户对磁盘的操作权限控制这么一个东西吧。于是乎,我这么做了一下,就是使用CACLS赋予IUSER_***用户更高的权限(一下是我经常写的工作日志一部分):

    使用cacls 修改目录权限, 尝试 给IIS匿名用户‘“IUSR_******” 赋予对文件夹
    C:\Inetpub\wwwroot 的读写权限, 效果不明显,似乎没有成功。
    语法:cacls Inetpub /T /G user_name:R/W/C/F
    Cacls 说明如下:
    CACLS filename [/T] [/E] [/C] [/G user:perm] [/R user [...]]
                   [/P user:perm [...]] [/D user [...]]
       filename      显示 ACL。
       /T            更改当前目录及其所有子目录中
                     指定文件的 ACL。
       /E            编辑 ACL 而不替换。
       /C            在出现拒绝访问错误时继续。
       /G user:perm  赋予指定用户访问权限。
                     Perm 可以是: R  读取
                                  W  写入
                                  C  更改(写入)
                                  F  完全控制
       /R user       撤销指定用户的访问权限(仅在与 /E 一起使用时合法)。
       /P user:perm  替换指定用户的访问权限。
                     Perm 可以是: N  无
                                  R  读取
                                  W  写入
                                  C  更改(写入)
                                  F  完全控制
       /D user       拒绝指定用户的访问。
    在命令中可以使用通配符指定多个文件。
    也可以在命令中指定多个用户。

    缩写:
       CI - 容器继承。
            ACE 会由目录继承。
       OI - 对象继承。
            ACE 会由文件继承。
       IO - 只继承。
            ACE 不适用于当前文件/目录。

     

    最后的结果仍然是:失败!

    没办法了,哎,反正我是没办法了。最后开是了GOOGLE 百度 , 没办法的办法啊。在我搜索过程中,逐渐发现一些问题,也就是我的IIS有可能是由于我是WINDOWS SP3导致的。呵呵 , 搜索一下”IIS XP SP3″这几个关键词你能找到一些东西的,我就不说了,但是最后还是不行。哎、、、狂晕死

    最后我重装系统了,并且把盘格式化为FAT32了….如果有高手知道该怎么办的话,麻烦知会我下,DANIEL感之不尽,下次我就好走了…THANKS

  • 我们的说明!

    欢迎转载,但请您以链接形式注明本文出处和本站原文链接,下面是链接形式,谢谢合作!
    出处链接:Allove of Paradise
    原文链接:http://blog.allove.org/archives/iis-password.html
3 条评论
  1. #1 Yacca
    9月 3rd, 2008 at 1:00 上午

    -.- 没配置过…所以,替你喊喊…

    [回复]

    Post ReplyPost Reply
  2. #2 Daniel
    9月 3rd, 2008 at 12:26 下午

    好,谢啦,呵呵呵,不搞明白心理不舒服,哈哈

    [回复]

    Post ReplyPost Reply
  3. #3 sanding
    9月 6th, 2008 at 9:06 下午

    只用过SQL Server的飘~

    [回复]

    Post ReplyPost Reply
Leave a Comment