普通用户如何配置IIS?

以下操作请在管理员帐户下进行:
1.创建用户/用户组
为了方便以后添加类似用户,建议建一个用户组, 比如 IIS_Admin. 本地或者域用户组都可以.

2.文件系统权限修改,如果是 NTFS 分区的话
给IIS_Admin用户组授予在 wwwroot 目录以及其子目录的修改权限
还有 %SYSTEMDRIVE%\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys 也要赋予修改权限
这样用户能够自己更新网站的内容

3.组件服务权限 (不需要 COM+ 的可以跳过该步骤)
如果你要用到 COM+ 组件,那就需要将 IIS_Admin 用户组加为管理员
控制面板->管理工具->组件服务->电脑->我的电脑->COM+ 应用程序->系统应用程序->角色->管理员, 右键->新建->用户(手头没中文系统,根据英文版翻译来的,可能有些字眼不完全一致), 加入 IIS_Admin


4. IIS Metabase 数据库修改
推荐使用 IIS 6 Resource Kit 里面的 Metabase Explorer 来修改,在 Computername (Local) 和 W3SVC 节点,单击右键,加入 IIS_Admin,权限至少要有修改权限,最好赋予完全控制


5.服务权限修改
为了让普通用户能有权限停止,启动服务,我们需要修改服务的安全性. 有2个办法,1通过 sc.exe 来改,2用SCE (Security Configuration Editor)来改, 我这里用的第1个办法.
我们通过 sc.exe 工具添加 IIS_Admin 用户组对 IISAdmin 和 W3SVC 服务的控制权限,使用 sc 添加 SDDL 的时候需要用到 IIS_Admin 用户组的 SID
5.1 首先在 XP 的安装光盘里面找到 Support.Cab (CDROM:\SUPPORT\TOOLS),从里面解出 getsid.exe 文件,运行 getsid \\Server1 IIS_Admin \\Server2 IIS_Admin
这里 Server1 Server2 使服务器名称,可以是同一个服务器,也可以是不同的服务器,域环境的话就是DC的名称, 该文件需要输入2个参数才能运行,所以我这里就只要选择同样的服务器名称和帐户名称了,从输出结果中找到该用户组的 SID,我这里是
S-1-5-21-1844237615-1409082233-725345543-1006

5.2 在 cmd 模式下, 运行 sc sdshow IISAdmin, 会返回 IISAdmin 服务的SDDL,示例
D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC
;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
在这个返回值的基础上,稍作改动,即添加 IIS_Admin 用户组,并赋予相对应的权限,我这里是添加一个和内置管理员(标记为BA)具有同样权限的用户组,SID是S-1-5-21-1844237615-1409082233-725345543-1006,即表示 IIS_Admin 用户组。具体不多作解释,请自行上微软网站查找相关资料
sc sdset D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;S-1-5-
21-1844237615-1409082233-725345543-1006)
(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)


5.3 同样的,修改 W3SVC 的 SDDL

6. COM 权限
如果要注册 COM 组件,请打开注册表编辑器,赋予 IIS_Admin 对 HKLM\Software\Classes 的修改权限

7.其它
7.1 非管理员用户在 Visual Studio.NET 的开发调试,请参照 http://msdn2.microsoft.com/en-us/library/aa289173.aspx


全部修改完成后,重新启动计算机,用普通帐号进入,测试相关操作
注: 只能在命令行模式下使用 net stop/start 等重启 IISAdmin 和 W3SVC 服务,或者在 Services.msc 中来重启服务, IIS管理器和 iisreset 命令都无法使用
Windows XP Pro SP2 IIS5.1 测试通过.

Leave a comment

Recent Entries

  • Lync Server 2010 发布架构报错

    昨天想试试在现有的 OCS 2007 R2 的基础上部署 Lync Server 2010 试试看,装好 Topology Builder 之后,新建了一个拓扑,然后把该填的都填了,发布的时候老是报SQL错,很是郁闷,后来终于在log中找到了错误原因:  Script result: ERROR_VALIDATE_BAD_SQL_VERSION Error: Script failed (code "ERROR_VALIDATE_BAD_SQL_VERSION") when installing "CentralMgmtStore" on "LyncServer01.mail2any.local"....

  • 使用 URL Rewrite 重定向 Http 请求至 Https

    公司部署了个新的 IIS 站点,需要强制在 Https 下面访问,但是又不希望关掉80端口的 Http 请求,这样对用户体验来讲不好,最好是能强制所有的 Http 请求都会被重定向到 Https 上面去,显然, IIS 自带的 "HTTP Redirect" 已经不能满足这个需求,我们这里使用 IIS 7.0 下面的重定向扩展 URL Rewrite Module 来做。1. http://www.iis.net/download/URLRewrite 到这里下载,有分...

  • How to remember your OC and Outlook password

    How to make your computer remember your Microsoft Communicator 2007 R2 and Outlook 2007 password (如何让你的电脑在非域环境中记住 OC 2007 R2 和 Outlook 的密码)我们知道,在域的环境中,使用 OC 和 Outlook...

  • 微软 CRM 2011 Beta 快速安装图解

    微软在9月17日在网站上放出了 CRM 2011 (也就是CRM5.0)的 beta 版本,我就先来个简单的快读安装图解,一睹为快,下个月会写点新版 CRM 的使用感受。 下载: Microsoft Dynamics CRM 2011 Beta Microsoft Dynamics CRM 2011 Software Development Kit (SDK)Microsoft Dynamics CRM 2011...

  • 升级到 Exchange 2010 SP1 后出现的2个小问题

    今天有空把所有的 Exchange 服务器从 2010 RTM 升级到了 2010 SP1 了, 升级完了后发现了2个小问题: OWA打开正常,但是点到 ECP 的时候报 403 访问拒绝错误 某台 Exchange 打开 EMS 时报错如下: [server.mydomain.local] Connecting to remote server failed...

Close