在IIS7以前的IIS版本中有一个本地帐号,是在安装时创建的,叫做 IUSR_MachineName。一旦启用匿名身份认证,这个IUSR_MachineName帐号就是IIS默认使用的身份(identity),它 同时在FTP和HTTP服务中使用。另外还有一个叫做IIS_WPG的组,它是所有应用程序池帐号的容器。在IIS安装期间,必须保证所有的系统可用资源 已经为IIS_WPG设置了适当的权限,当管理员创建一个新的应用程序池帐号时,只需要把新帐号(身份)加入这个组即可。

这个模型运转 得很好,但是和其他任何设计一样,它们有他们的缺点,主要的缺点是IUSR_MachineName帐号和IIS_WPG组对于创建它们的系统来说都是本 地的。 Windows中的每个帐号或组都有一个唯一的号码叫做SID(安全识别号Security Identifiers),这样就可以区别于其它的帐号或组。

而在IIS 7.0中:

1. IUSR内建帐号替代了IUSR_MachineName帐号
2. IIS_IUSRS内建组替代了IIS_WPG组

因为IUSR是一个内建帐号,它不再需要密码。逻辑上你可以认为它就是NETWORKSERVICE或LOCALSERVICE帐号。


用程序池(w3wp.exe工作进程)是以我们指定的用户身份运行的,IIS需要使用这个用户身份访问各种系统资源和网络资源,如访问磁盘资源、执行某些
系统功能、访问寄存器,以及访问网络资源等。IIS默认的用户身份是Network
Service账号,这个账号对Web服务器和网络只有有限的访问权限,但是在运行标准Web网站时具有完全的权限。

IIS 7.0为用户提供了3种内置的账号,此外,我们还可以创建自定义账号。内置的账号包括:Network Service,Local Service ,Local System

  1. 应用程序池的默认用户是内置的Network Service账号。Network Service账号对本地计算机和网络资源只拥有最小访问权限。
  2. 内置的Local Service账号无法像Network Service账号那样访问网络资源,但是具有与Network Service账号类似的本地资源访问权限。

  3. 置的Local System账号具有对本地系统的完全访问权限。但是,当我们使用Local
    System账号时,务必加以小心,尽可能地避免使用这个账号。当一个未授权的用户浏览服务器中的某个网站时,或者当这个未授权的用户上传自己的内容时,
    如果应用程序池以Local System账号身份运行,那么这个用户可以在Web服务器中执行任何操作。

需要使用应用程序池身份访问一个网络资源--如果需要访问一个网络资源,那么可以创建一个自定义的域用户,并将应用程序池的用户标识指派为这个自定义用户。这样一来,如果以这个应用程序池的用户标识运行的程序需要访问一个网络资源,那么,程序将使用这个自定义用户身份访问网络资源。

为每个网站新建一个应用程序池是一种合理的部署方式,特别是如果需要在一台服务器中运行多个Web网站时,这种做法尤其有益。这样可以确保每个Web应用程序仅在自己的进程中运行,这样,如果一个应用程序发生失效,那么也不会对其他网站造成影响。
应用程序池必须能够时常地回收使用,这样才能够解决应用程序挂起的问题,此外,这样还可以在添加新的文件、同时IIS无法知道已经添加了新文件的情况下,重新加载一个网站。

IIS7内建账号,应用程序池的更多相关文章

  1. Python3 内建模块 hashlib、itertools、HTMLParser、urllib

    Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制 ...

  2. mongodb内建角色

    MongoDB内建角色 数据库用户角色:read.readWrite; 数据库管理角色:dbAdmin.dbOwner.userAdmin: 集群管理角色:clusterAdmin.clusterMa ...

  3. (73)zabbix用户认证方式 内建、HTTP Basic、LDAP

    公司大大小小众多系统,不同系统不同的账号密码,管理上相当复杂,后来慢慢出现了SSO等账号统一验证,其他zabbix也提供了类似的方法,或许有些公司便可以使用公司提供的账号来登录zabbix了. zab ...

  4. Bash shell的内建命令:type

    type指令是用来观察指令时来自于外部指令还是内建在bash中的指令. type  [-tpa]  name 选项与参数: :不加任何选项与参数时,type会显示出name是外部指令还是bash内建指 ...

  5. Bash Shell内建命令和保留字

    Bash Shell内建命令和保留字命令含义!保留字,逻辑非:不做任何事,只做参数展开.读取文件并在shell中执行它alias设置命令或命令行别名bg将作业置于后台运行bind将关键字序列与read ...

  6. Python内建的对象列表

    Python内建的对象列表 刚写Python肯定会遇到这样的情况,想写些什么,但又不知从何写起... 在我看来问题在于我们不知道有什么东东可以拿来玩,这里列出Python的内建对象,稍微归类了一下,多 ...

  7. javascript 对象初探 (四)--- 内建对象之旅之Array

     我们不要去纠结神马是内建对象,神马是內建构造器.到后来你们便会发现其实她们都是对象. Array()是一个构建数组的內建构造器函数: var arr = new Array(); 与下面的是等效的: ...

  8. javascript内建对象

    内建对象等价于内建构造器内建对象大致分为三类:数据封装类对象--Object.Array.Boolean.Number和String工具类对象--Math.Date.RegExp等用于提供遍历的对象错 ...

  9. RealtekRTL8111内建网卡-黑苹果之路

    真是服了这神一样的黑苹果.好不容易配好显卡,登陆appstore却报“无法验证您的设备或电脑”,查了一圈,又说要配网卡为en0的,有说要在clover中配FIXLAN的,最准确的是网卡必须是内建(Bu ...

随机推荐

  1. 使用meaven打包过程中遇到的一些问题

    开始使用如下代码进行打包 <build> <!-- mvn assembly:assembly -Dmaven.test.skip=true --> <plugins&g ...

  2. Mysql联合查询UNION和UNION ALL的使用介绍

    UNION和UNION ALL的作用和语法 UNION 用于合并两个或多个 SELECT 语句的结果集,并消去表中任何重复行.UNION 内部的 SELECT 语句必须拥有相同数量的列,列也必须拥有相 ...

  3. JAVA 堆设置

    JAVA 堆设置 第四节 堆已经讲得差不多啦,这章我们以一个例子来说说如何设置以及当发生堆溢出的时候怎么排查问题.先看一小段代码:         代码中使用了一个无限循环来为list添加对象,如果采 ...

  4. leetcode LRU Cache python

    class Node(object): def __init__(self,k,x): self.key=k self.val=x self.prev=None self.next=None clas ...

  5. python----设置默认编码

    问题:python的默认编码是ascii.在处理中文的时候可能会出现乱码的情况:这个时候我们就需要把编码设置为对应的编码了. 解决方案: 对python文件的头部做如下修改 import sys re ...

  6. Linux宕机最安全的重启方法(你肯定不知道)

    Linux 内核虽然号称“不死族”,几乎不会崩溃或者死机,但是特殊情况下,还是有一定几率会宕机的.因为 Linux 广泛用于生产环境,所以每一次宕机都会引起相当大的损失.本文介绍在它死机至后,一种温柔 ...

  7. erlang supervisor说明

    Supervisor Behaviour是一个用来实现一个supervisor进程来监控其他子进程的模块 子进程可以是另一个supervisor,也可以是一个worker进程. worker进程一般使 ...

  8. Linux的正常关机

    Azure上的 IaaS 虚拟机可使用多种方式关闭,例如通过 Azure 管理门户.Azure Powershell cmdlet 或 CLI 工具,甚至还可以由交互式登录的用户关闭.Azure 平台 ...

  9. poj2000---和1969一样的模板

    #include <stdio.h> #include <stdlib.h> int main() { int d; while(scanf("%d",&a ...

  10. JAVA实现字符串反转,借助字符数组实现

    public static String reverseStr(String str) { int len = str.length(); char ch[] = str.toCharArray(); ...