IIS7.5标识分析
应用到: Windows 7, Windows Server 2008, Windows Server 2008 R2, WindowsVista
应用程序池的标识是运行应用程序池的工作进程所使用的服务帐户名称。默认情况下,应用程序池以 Network Service用户帐户运行,该帐户拥有低级别的用户权限。您可以将应用程序池配置为以 Windows Server® 2008 操作系统中的内置用户帐户之一运行。例如,您可以指定Local System 用户帐户,此帐户与 Network Service 或 Local Service 内置用户帐户相比,具有更高级别的用户权限。但请注意,以具有高级别用户权限的帐户运行应用程序池存在严重的安全风险。
您还可以配置自定义帐户,使之用作应用程序池的标识。您选择的任何自定义帐户都应只具有应用程序需要的最基本的权限。自定义帐户在以下情况下很有用:
1、当您希望提高安全性并且使跟踪相应应用程序的安全事件更加容易。
当您在单个 Web 服务器上承载多个客户的网站时。如果您为多个客户使用同一进程帐户,2、则一个客户的应用程序源代码可能能够访问另一客户的应用程序源代码。在这种情况下,您还应为匿名用户帐户配置自定义帐户。
3、当应用程序不仅需要应用程序池的默认权限,而且还需要其他权限时。在这种情况下,您可以创建一个应用程序池,然后为新的应用程序池分配自定义标识。
除此之外,在这些系统中,还添加了一个新的标识那就是ApplicationPoolIdentify 标识,ApplicationPoolIdentity–默认情况下,选择“应用程序池标识”帐户。启动应用程序池时动态创建“应用程序池标识”帐户,因此,此帐户对于您的应用程序来说是最安全的。
下面我来介绍他们的使用方法:
Local System标识
这个标识是内置的这几个账户里面的级别最高的一个,那么说也就是风险最高的一个,并且也是配置起来最简单的一个了。
只需要将程序池中的标识符更改为LocalSystem,并且给文件夹权限分配一个Everyone用户权限就可以了。
Network Service 或 Local Service标识
首先配置IIS
右键打开应用程序池中该项目的高级设置,将设置中的标识选项打开,选择账户为NETWORK SERVICE,点击确定,这样iis设置就完成了
接着我们配置SQL企业管理器。
1)打开SQL管理器à选择数据库实例à【安全性】à【登录名】,查看是否存在NETWORK SERVICE,若不存在,则添加之
2)添加账户方法:右键【登录名】à选择【新建登录名】,在弹出的对话框中的右边有登录名输入框,点击右侧的【搜索】,在弹出的【选择用户或组】中点击【高级】,再点击【立即查找】,找到NETWORK SERVICE用户名,点击确定。
配置其他属性
左边导航à服务器角色勾选sysadmin
左边导航à用户映射à勾选要连接的数据库或者所有数据库
这样你会发现登录名中就有了NTAUTHORITY\NETWORK SERVICE这个用户,那么恭喜你,你的SQL企业管理器就业配置好了。那么就开始运行你的网站吧!
ApplicationPoolIdentify 标识
ApplicationPoolIdentify标识对于您的应用程序来说是最安全的。下面我们开始配置ApplicationPoolIdentify吧!
在配置中,我们要给网站文件夹分配一个ApplicationPoolIdentify账号,首先我们知道ApplicationPoolIdentify是一个虚拟账户我们是找不到的,那么我们怎样给他分配账号呢,如果直接添加一个NewsTest(NewsTest为我们配置的应用程序池的名称)用户的话,就会报错。“找不到名称”。
他们会提醒我们找不到名称,那么怎么办呐?那我们就需要手动配置了,手动输入 IISAppPool\NewsTest(即IIS AppPool\应用程序池名),再确定。是的通过了。
注:部分篇幅来自网上资源本人将其总结归纳。
本文转自HDDevTeam 51CTO博客,原文链接:http://blog.51cto.com/hddev/1218190,如需转载请自行联系原作者