在配置IIS的时候,如果安全稍微做的好一些。就会出现各式各样的问题。比如,常见的访问网页会弹出用户名密码的登陆界面,或者是访问某种页面比如html,asp没事情,但是访问jsp或者php就有问题,显示401.3 ACL 禁止访问资源等。
通常的解决办法是。
第一,看iis中(不管iis5 还是iis6) ,网站或者目录,包括虚拟目录的属性,看目录安全性选项卡中的 编辑匿名访问和身份验证控制,看看是用的哪个帐号,如果是用的iis匿名帐号(一般是IUSR_机器名),或者由系统管理员设置了其他帐号,这个帐号很重要,下面成IIS匿名帐号 察看帐号的密码是否是正确的系统设置的密码,实在不行就在计算机管理里面的用户管理,重新把帐号设置一个密码,然后在编辑匿名访问和身份验证控制选项中把密码重新设置一下。
第二。在资源管理器里面看放置网站或者目录的安全选项。是否IIS匿名帐号有权限访问,一般来说,NT系统中的IUSR_机器名这个帐号都会是在user组里面,有时候禁用了user组,也会引起这个问题,让刚才设置的IIS匿名帐号或者帐号所在的系统组有对目录的访问权限,至少要有读权限。
第三,在你放置的程序中,看是否含有其他类型的动态语言写的程序,IIS会默认对asp进行解释,对于ASPX来说,要看net执行文件目录是否让IIS匿名帐号有读权限? cgi程序就是perl目录,jsp看是用resin还是用tomcat做的解释,php就是php目录,要保证这些目录都让IIS匿名帐号有读权限才行。
http://hi.baidu.com/davidw3000/b ... 4988160ef477eb.html
IIS 匿名访问不可以的解决办法
公司的内网服务器设置网络服务以后,发现IIS无法匿名访问,检查IIS的匿名访问设置以及操作系统的匿名帐号同步性都没有问题,查了好长时间,后来才发现:网站文件夹所在的分区是NTFS格式的,而这个分区以前为了安全方面的问题,把everyone帐户删掉了,自然也没有了网络匿名用户IUSR的访问权限,网站文件夹是直接继承来的权限,所以无法访问,解决办法当然简单了,只需要在网站文件夹属性里的权限添加“everyone”或者“IUSR_电脑名”的帐户,就解决了
2、首先,在WEB服务器加一个用户,然后在iis的站点发布目录中加入该用户的读写修改权限,最后在iis你的站点中目录安全性设成使用该用户(用户密码都得要设)就不会弹出输入用户密码和密码
3、IIS中设置允许匿名访问 作者:白桦 现在有不少宽带用户,特别是那些拥有静态固定IP的,都喜欢使用Windows 2000+IIS在自己家中做一个Web服务器。但其中有些朋友发现,从自己的电脑上打开网站一切正常,但从外网访问时却提示要输入用户名和密码。怎样设置才能让外网不用输入用户名和密码即可访问呢?
其实服务器运行正常,就说明IIS设置正确,外网访问需要登录用户名及密码是不小心勾选了“集成Windows验证”造成的,具体可在IIS中做相应设置。
在“我的电脑”上点击右键,选中“管理”,进入计算机管理界面,依次选取“服务和应用程序→Internet信息服务”,在所建立的网站站点上点击右键,打开属性窗口,点击“目录安全性”子项(见图),在其中的匿名访问和验证控制中编辑,勾选第一项“匿名访问”,并取消“集成Windows验证”前的钩,按“确定”后即可。
4、
解析 IIS 匿名访问设置
默认情况下,Internet 信息服务 (IIS) 模拟特殊的 IIS 本地用户帐户。由于此帐户对于 IIS 计算机而言是本地帐户(除非该计算机是域控制器),因此网络中的其他计算机无法对其进行验证,而且该帐户将被视为匿名用户。
Active Server Page (ASP) 应用程序和脚本在 IIS 下运行,默认情况下它将模拟 IIS 本地用户进行任何消息队列操作,包括对 Active Directory 的查询。由于匿名用户不再属于 Windows Server 2003 家族中的 Everyone 组,因此这些查询将失败,而且 ASP 应用程序和脚本无法定位、创建和删除队列。另外,匿名用户无法打开要远程读取的队列,而且不能使用 ASP 从不属于 IIS 计算机的队列中读取消息。
可通过下面两种方法解决此问题:
? 使用域用户帐户而不使用 IIS 本地用户帐户进行匿名访问。该帐户必须具有进行消息队列操作所要求的权限,例如对 Active Directory 的访问权限。
? 禁用匿名访问。信任 IIS 计算机进行委派,以允许在与域控制器进行通讯时具有多个跃点。请注意,此选项无法解决远程读取限制问题。
5、
分为两种:
第一种,访问任何文件都需要密码。
原因:IIS没有访问网站目录的权限。
解决如下:
打开网站所在目录属性,选择权限选项卡,删除所有的权限,添加ISUR_XXX和ADMINISTRATORS完全访问,完成,退出。如果您有ASP.NET还需要添加network services组。
第二种,访问HTML正常 ,访问ASP需要密码。
原因:IIS没有访问C盘公用DLL的权限。
解决如下:
这个问题解决起来也比较简单,把C盘设成EVERYONE 完全访问,重启电脑或重启IIS后就可以正常访问了。
6、在IIS信息管理器上---->“默认网站”点右键---“属性”-------》“目录安全性”-----》编辑“匿名访问和身份验证方法”,把它的‘匿名访问’和‘允许IIS控制密码’和‘集成WINDOWS验证’勾上…………
现在还在研究中,之所以把它们粘上来,是怕东搞西搞不小心弄好后还真不知道是什么原因,以后遇到又得重新整理了。
NewWebServer.ServerBindings = NewBindings
NewWebServer.ServerComment= WebSiteInfo
NewWebServer.AnonymousUserName= GuestUserName
NewWebServer.AnonymousUserPass= GuestUserPass
NewWebServer.KeyType = "IIsWebServer"
NewWebServer.FrontPageWeb = True
NewWebServer.EnableDefaultDoc = True
NewWebServer.DefaultDoc = "Default.htm, Default.asp, Index.htm, Index.asp"
NewWebServer.LogFileDirectory= LogDirectory
终于查到AuthFlags这个值是有关的,设为5就是允许匿名访问,我想知道其他1,2,3,4等值代表的意思,最重要的是微软的哪个地方可以查到它的这些资料
希望知道的朋友多指教
在配置IIS的时候,如果安全稍微做的好一些。就会出现各式各样的问题。比如,常见的访问网页会弹出用户名密码的登陆界面,或者是访问某种页面比如html,asp没事情,但是访问jsp或者php就有问题,显示401.3 ACL 禁止访问资源等
通常的解决办法是。
第一,看iis中(不管iis5 还是iis6) ,网站或者目录,包括虚拟目录的属性,看目录安全性选项卡中的 编辑匿名访问和身份验证控制,看看是用的哪个帐号,如果是用的iis匿名帐号(一般是IUSR_机器名),或者由系统管理员设置了其他帐号,这个帐号很重要,下面成IIS匿名帐号 察看帐号的密码是否是正确的系统设置的密码,实在不行就在计算机管理里面的用户管理,重新把帐号设置一个密码,然后在编辑匿名访问和身份验证控制选项中把密码重新设置一下。
第二。在资源管理器里面看放置网站或者目录的安全选项。是否IIS匿名帐号有权限访问,一般来说,NT系统中的IUSR_机器名这个帐号都会是在user组里面,有时候禁用了user组,也会引起这个问题,让刚才设置的IIS匿名帐号或者帐号所在的系统组有对目录的访问权限,至少要有读权限。
第三,在你放置的程序中,看是否含有其他类型的动态语言写的程序,IIS会默认对asp进行解释,对于ASPX来说,要看net执行文件目录是否让IIS匿名帐号有读权限? cgi程序就是perl目录,jsp看是用resin还是用tomcat做的解释,php就是php目录,要保证这些目录都让IIS匿名帐号有读权限才行。
通过以上设置,基本上没有什么问题了,遇到这样的问题,重新安装IIS也没有用,慢慢查原因吧。在NT环境下的web server出问题,大部分是因为权限 还有组策略的影响。只要确定这两个部分没问题。那基本上就不会出现问题了。
经验:以上是我在网络上查的,我不管怎么设置都不可以,后来我就重新设置了我自己新加的用户作为匿名用户,后来就可以了!
关于win2003中访问被拒绝的权限问题
前几天,在我校专题网站教育技术在线 http://202.192.143.137 )碰到一个辣手的问题,打开网站时弹出一个登陆的窗口,要求输入用户名、密码和所在域,但包知尝试过使用超级用户在内的用户登陆都无法访问该网站,最后提示是:
ASP.NET,HTTP HTTP 错误 401.1 - 未经授权:访问由于凭据无效被...
未经授权:访问由于凭据无效被拒绝
通常,这类问题通常都出在win2003 Server版的操作系统上,因为win2003对用户的权限,对文件夹的权限都有着严格的要求,一小心,权限过小,就给自己的使用带来不便。对于这个问题,最后的解决方法就是上baidu找答案,还是就是查看本机的IIS,看是否允许匿名访问,最后再查看web文件夹的权限等,这就是一般的处理思路,以下我个人总结的一点经验,希望大家在部署网站时碰到这类问题能顺利解决。
(1)查看IIS管理器中站点安全设置的匿名帐户是否被禁用,如果是,请尝试用以下办法启用:
控制面板->管理工具->计算机管理->本地用户和组,将IUSR_机器名账号启用。如果还没有解决,请继续下一步。
(2)查看本地安全策略中,IIS管理器中站点的默认匿名访问帐号或者其所属的组是否有通过网络访问服务器的权限,如果没有尝试用以下步骤赋予权限:
开始->程序->管理工具->本地安全策略->安全策略->本地策略->用户权限分配,双击“从网络访问此计算机”,添加IIS默认用户或者其所属的组。
注意:一般自定义 IIS默认匿名访问帐号都属于组,为了安全,没有特殊需要,请遵循此规则。
这有其他原因,但重要的还是检查一下自己的文件是否有everyone权限
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/dotnet90/archive/2007/03/15/1529948.aspx
|