【51CTO獨(dú)家特稿】微軟IIS服務(wù)是一項(xiàng)經(jīng)典的Web服務(wù),可以為廣大用戶提供信息發(fā)布和資源共享功能。身份認(rèn)證是保證IIS服務(wù)安全的基礎(chǔ)機(jī)制,IIS支持以下5種 Web 身份認(rèn)證方法:
推薦專題:IIS服務(wù)“講武堂”
一、匿名身份認(rèn)證
如果啟用了匿名訪問,訪問站點(diǎn)時,不要求提供經(jīng)過身份認(rèn)證的用戶憑據(jù)。當(dāng)需要讓大家公開訪問那些沒有安全要求的信息時,使用此選項(xiàng)最合適。IIS 創(chuàng)建 IUSR_ComputerName 帳戶(其中 ComputerName 是正在運(yùn)行 IIS服務(wù)器的名稱),用來在匿名用戶請求 Web 內(nèi)容時對他們進(jìn)行身份認(rèn)證。此帳戶授予用戶本地登錄權(quán)限。用戶可以將匿名用戶訪問重置為使用任何有效的 Windows 帳戶。用戶可以為不同的網(wǎng)站、虛擬目錄、物理目錄和文件建立不同的匿名帳戶。如果基于 Windows Server 2003 的計(jì)算機(jī)是獨(dú)立服務(wù)器,則 IUSR_ComputerName 帳戶位于本地服務(wù)器上。如果該服務(wù)器是域控制器,則 IUSR_ComputerName 帳戶是針對該域定義的。
二、基本身份認(rèn)證
使用基本身份認(rèn)證可限制對 NTFS 格式的 Web 服務(wù)器上文件的訪問。使用基本身份認(rèn)證,用戶必須輸入憑據(jù),而且訪問是基于用戶 ID 的。用戶 ID 和密碼都以明文形式在網(wǎng)絡(luò)間進(jìn)行發(fā)送。要使用基本身份認(rèn)證,請授予每個用戶進(jìn)行本地登錄的權(quán)限,為了使管理更加容易,請將每個用戶都添加到可以訪問所需文件的組中。因?yàn)橛脩魬{據(jù)是使用 Base64 編碼技術(shù)編碼的,但它們在通過網(wǎng)絡(luò)傳輸時不經(jīng)過加密,所以基本身份認(rèn)證被認(rèn)為是一種不安全的身份認(rèn)證方式。
三、Windows 集成身份認(rèn)證
Windows 集成身份認(rèn)證比基本身份認(rèn)證安全,而且在用戶具有 Windows 域帳戶的內(nèi)部網(wǎng)環(huán)境中能很好地發(fā)揮作用。在集成 Windows 身份認(rèn)證中,瀏覽器嘗試使用當(dāng)前用戶在域登錄過程中使用的憑據(jù),如果此嘗試失敗,就會提示該用戶輸入用戶名和密碼。如果用戶使用集成 Windows 身份認(rèn)證,則用戶的密碼將不傳送到服務(wù)器。如果用戶作為域用戶登錄到本地計(jì)算機(jī),則此用戶在訪問該域中的網(wǎng)絡(luò)計(jì)算機(jī)時不必再次進(jìn)行身份認(rèn)證。集成身份認(rèn)證以前稱為 NTLM 或 Windows NT 質(zhì)詢/響應(yīng)身份認(rèn)證,此方法以 Kerberos 票證的形式通過網(wǎng)絡(luò)向用戶發(fā)送身份認(rèn)證信息,并提供較高的安全級別。Windows 集成身份認(rèn)證使用 Kerberos 版本 5 和 NTLM 身份認(rèn)證。注意:如果選擇了多個身份認(rèn)證選項(xiàng),IIS服務(wù) 會首先嘗試協(xié)商最安全的方法,然后它按可用身份認(rèn)證協(xié)議的列表向下逐個試用其他協(xié)議,直到找到客戶端和服務(wù)器都支持的某種共有的身份認(rèn)證協(xié)議。
四、摘要式身份認(rèn)證
摘要式身份認(rèn)證需要用戶 ID 和密碼,可提供中等的安全級別,如果用戶要允許從公共網(wǎng)絡(luò)訪問安全信息,則可以使用這種方法。這種方法與基本身份認(rèn)證提供的功能相同。摘要式身份認(rèn)證克服了基本身份認(rèn)證的許多缺點(diǎn)。在使用摘要式身份認(rèn)證時,密碼不是以明文形式發(fā)送的。另外,用戶可以通過代理服務(wù)器使用摘要式身份認(rèn)證。摘要式身份認(rèn)證使用一種質(zhì)詢/響應(yīng)機(jī)制(集成 Windows 身份認(rèn)證使用的機(jī)制),其中的密碼是以加密形式發(fā)送的。
要使用摘要式身份認(rèn)證,必須滿足下述要求:
用戶和 IIS 服務(wù)器必須是同一個域的成員或被同一個域信任。
用戶必須有一個存儲在域控制器上 Active Directory 中的有效 Windows 用戶帳戶。
該域必須使用 Microsoft Windows 2000 或更高版本的域控制器。
必須將 IISSuba.dll 文件安裝到域控制器上。此文件會在 Windows 2000 或 Windows Server 2003 的安裝過程中自動復(fù)制。
必須將所有用戶帳戶配置為選擇“使用可逆的加密保存密碼”帳戶選項(xiàng)。要選擇此帳戶選項(xiàng),必須重置或重新輸入密碼。
五、Microsoft .NET Passport 身份認(rèn)證
.NET Passport 身份認(rèn)證提供了單一登錄安全性,為用戶提供對 Internet 上各種服務(wù)的訪問權(quán)限。如果選擇此選項(xiàng),對 IIS服務(wù) 的請求必須在查詢字符串或 Cookie 中包含有效的 .NET Passport 憑據(jù)。如果 IIS服務(wù) 不檢測 .NET Passport 憑據(jù),請求就會被重定向到 .NET Passport 登錄頁。并且,如果選擇此選項(xiàng),所有其他身份認(rèn)證方法都將不可用。