国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > IIS > 正文

IIS7權(quán)限簡述

2024-08-29 03:09:28
字體:
供稿:網(wǎng)友

IIS7對(duì)于以往是革命性的改變, 不再是以前縫縫補(bǔ)補(bǔ)的破衣裳, 全部重寫的代碼帶來了更為優(yōu)秀的性能與擴(kuò)展能力. 他不再是一個(gè)Web Server了而變成了一個(gè)Application Server能夠承載一切以通訊為基礎(chǔ)的應(yīng)用. 新的變革也帶來了新的知識(shí), 想更好的駕馭IIS7權(quán)限則是最基礎(chǔ)的一部分也是最先需要了解的一部分. 本文讓你初步了解IIS7的權(quán)限應(yīng)用的基本相關(guān)知識(shí), 了解來龍去脈不會(huì)再因應(yīng)用程序突然多出一個(gè)莫名其妙權(quán)限而感到困惑. 雖然下面的內(nèi)容均以Web服務(wù)為例, 但道理同樣適用于以IIS7宿主的其他應(yīng)用如FTP等等.

工作進(jìn)程(Worker Process)

Worker Process是IIS應(yīng)用程序的宿主, 在任務(wù)管理器中可以看到每一個(gè)Worker Process就是一個(gè)w3wp.exe.

WindowsLiveWriter-429641856/supfiles195C5D69/image7.png" target="_blank">image_thumb3

工作進(jìn)程標(biāo)識(shí)(Worker Process Identity - WPI)

是Worker Process運(yùn)行時(shí)的身份:

  • 在IIS6, Windows 2008 IIS7下, 默認(rèn)關(guān)聯(lián)權(quán)限是NetworkService.
  • 在Windows 2008 R2 IIS7.5下, 默認(rèn)是關(guān)聯(lián)權(quán)限是Application Pool Identity.

這里并沒有提供一個(gè)直接的手段來設(shè)置Worker Process在什么身份標(biāo)識(shí)下運(yùn)行, 而是通過Application Pool的身份標(biāo)識(shí)設(shè)定來實(shí)現(xiàn)的.

應(yīng)用程序池(Application Pool)

Application Pool包含至少一個(gè)或多個(gè)Worker Process(Web Garden模式). 在運(yùn)行時(shí)會(huì)將Application Pool的身份注入到Worker Process中, 就會(huì)以Application Pool的身份運(yùn)行. 可以認(rèn)為Application Pool與其包含的Worker Process的運(yùn)行身份是一致的.

應(yīng)用程序池標(biāo)識(shí)(Application Pool Identity)

是Application Pool運(yùn)行時(shí)的身份:

  • 在IIS6, Windows 2008 IIS7下, 默認(rèn)關(guān)聯(lián)權(quán)限是NetworkService.
  • 在Windows 2008 SP2 IIS7下, 運(yùn)行身份設(shè)置時(shí)除了LocalService, NetworkService, LocalSystem外增加了Application Pool Identity一個(gè)選項(xiàng), 而這個(gè)則是一個(gè)可以設(shè)置權(quán)限的虛擬標(biāo)識(shí).
  • 在Windows 2008 R2 IIS7.5下, 默認(rèn)是關(guān)聯(lián)權(quán)限是Application Pool Identity.

image_thumb1

虛擬帳戶 Application Pool Identity

上面提到的身份標(biāo)識(shí)選項(xiàng)中你可以選擇他, 但他只是一個(gè)統(tǒng)稱, 并不存在實(shí)際的這個(gè)命名. 他依賴你的Application Pool的名稱, 例如我的Application Pool名字叫做: SimonwAppPool, 那么這個(gè)虛擬標(biāo)識(shí)的全名是: IIS AppPool/SimonwAppPool 運(yùn)行在此Application Pool下的Worker Process從任務(wù)管理器中可以看到w3wp.exe是在SimonwAppPool這個(gè)用戶下運(yùn)行的. 可以在文件系統(tǒng)中對(duì)這個(gè)帳戶分配權(quán)限. 這么做的好處是能夠?qū)⒛軌驅(qū)?quán)限分離開來做粒度更細(xì)的配置, 不像是NetworkService有很多應(yīng)用基于此, 設(shè)置一個(gè)權(quán)限影響一大片.

image_thumb9 

不過有時(shí)候通過UI找不到這個(gè)對(duì)象大約是個(gè)Bug, 通過命令行icacls處理即可.

什么是impersonate

這可能是一個(gè)讓人容易迷糊的詞匯impersonate - 扮演, 裝扮. 他是指在某個(gè)特定的時(shí)刻以一個(gè)新的身份來代替已有身份來運(yùn)行應(yīng)用程序. 一個(gè)請(qǐng)求來臨時(shí)在IIS處理管道中, 在authentication之前authenticated user的上下文是未知的, 這時(shí)你的應(yīng)用程序以WPI的權(quán)限在運(yùn)行. 在authentication之后authenticated user的上下文被建立, 但依然沒有去扮演, 直至請(qǐng)求被映射到他的handler也就是handler mapping后應(yīng)用程序開始使用扮演則將默認(rèn)的WPI權(quán)限替換為authenticated user的權(quán)限來執(zhí)行應(yīng)用程序.

image_thumb7

舉個(gè)例子, php配置fastcgi時(shí)推薦設(shè)置fcgi.impersonate=true, 體現(xiàn)在請(qǐng)求一個(gè)php文件時(shí)
false: 始終使用WPI的權(quán)限, 默認(rèn)權(quán)限是NetworkService
true: 使用authenticated user, 默認(rèn)為IUSR, 也就是說可以讓在站點(diǎn)級(jí)別上設(shè)置的權(quán)限生效.

用戶組與用戶

在IIS7下需要注意2個(gè)特殊的用戶和用戶組, 在IIS6中有著類似的對(duì)應(yīng)關(guān)系
IIS6:IIS_WPG - IIS7:IIS_IUSRS
IIS6:IUSR_MachineName - IIS7:IUSR

最大的改變就是他們都成為了系統(tǒng)內(nèi)置帳戶(built-in account)有著統(tǒng)一的SID, 這樣的好處在于做不同機(jī)器/系統(tǒng)間的拷貝時(shí)可以連帶權(quán)限一同拷貝過去了, 在以往因?yàn)镾ID不同換了機(jī)器權(quán)限是無法有效拷貝的只能挨個(gè)手動(dòng)設(shè)置, 現(xiàn)在方便多了.

IIS_IUSRS組

默認(rèn)他會(huì)擁有適當(dāng)?shù)臋?quán)限來運(yùn)行Worker Process. 所有的WPI下的運(yùn)行帳戶均被隱式的自動(dòng)加入到這個(gè)組中, 以獲得最小的運(yùn)行權(quán)限. 例如當(dāng)你將SimonwAppPool這個(gè)Application Pool的運(yùn)行身份設(shè)置為Application Pool Identity, 那么IIS AppPool/SimonwAppPool這個(gè)用戶會(huì)被自動(dòng)加入到IIS_IUSRS組中擁有他的全部權(quán)限. 因此對(duì)此組權(quán)限賦值需很小心很容易不知不覺中影響一大片.

IUSR默認(rèn)匿名帳戶

特別需要注意的別看他是一個(gè)匿名帳戶并且沒有密碼, 但他屬于authenticated users ,而authenticated users屬于Users組, 因此IUSR默認(rèn)具備了Users組的權(quán)限.

image_thumb5

結(jié)束語

一年總要寫一篇文章(慚愧), 年底再不寫沒機(jī)會(huì)了, 大部分的內(nèi)容都是大半年前總結(jié)的, 今天才寫出來難免錯(cuò)誤與疏漏請(qǐng)及時(shí)指正. 希望能為你的IIS7配置提供有效的參考.

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 平昌县| 新竹县| 苗栗市| 南投县| 阿克苏市| 武胜县| 银川市| 商南县| 绥阳县| 甘南县| 马公市| 扎赉特旗| 双流县| 岐山县| 东至县| 绥芬河市| 浮梁县| 惠州市| 杂多县| 信阳市| 滨州市| 隆化县| 荔浦县| 明水县| 三台县| 晴隆县| 天台县| 张家港市| 雷波县| 广河县| 临安市| 广西| 金沙县| 昌都县| 天水市| 杭州市| 泾源县| 康保县| 盐城市| 抚州市| 远安县|