共用方式為


Team Foundation Server 安全性概念

更新:2007 年 11 月

若要協助保護 Team Foundation Server 的安全,您必須了解 Team Foundation Server 的運作方式以及它如何與其他 Team Foundation 元件進行通訊。Team Foundation Server 系統管理員應該要熟悉 Windows 驗證 (Authentication)、網路通訊協定和流量,以及安裝 Team Foundation Server 之公司網路的結構。系統管理員也應該要了解 Team Foundation Server 群組和使用權限。

了解 Team Foundation Server 安全性

Team Foundation Server 安全性概念可以分成三個一般分類:拓撲、驗證和授權。拓撲包括部署 Team Foundation 伺服器的位置和方式、在 Team Foundation Server 和 Team Foundation 用戶端之間傳遞的網路流量,以及必須在 Team Foundation Server 上執行的服務。驗證包括判斷 Team Foundation Server 使用者、群組和服務的有效性。授權則包括判斷有效的 Team Foundation Server 使用者、群組和服務是否擁有適當的使用權限可執行動作。此外,您也必須考量 Team Foundation Server 與其他元件和服務的相依性,以最佳化網路中的 Team Foundation Server 安全性。

當您考量 Team Foundation Server 安全性時,您必須了解驗證和授權之間的差異。「驗證」(Authentication) 是驗證從用戶端、伺服器或處理序嘗試進行連接的認證。「授權」(Authorization) 則是驗證嘗試連線的身分識別是否具有存取物件或方法的使用權限。一定是順利驗證之後才會進行授權。如果未驗證連接,在執行任何授權檢查之前就已經失敗。如果連接驗證成功,由於使用者或群組沒有執行特定動作的授權,仍可以不允許執行該動作。

Team Foundation Server 拓撲、通訊埠和服務

Team Foundation Server 部署和安全性的第一個項目,是 Team Foundation 部署的元件是否可以彼此連接來進行通訊。您的目標是啟用 Team Foundation 用戶端和 Team Foundation Server 之間的通訊,並限制或防止其他連接嘗試。

Team Foundation Server 需倚賴特定的通訊埠和服務才能運作。可以保護及監視這些通訊埠,以符合商業安全性需求。視您的 Team Foundation 部署而定,您必須使用 Team Foundation Server Proxy,允許 Team Foundation Server 網路流量在 Team Foundation 用戶端、裝載 (Host) Team Foundation 應用程式層和資料層之邏輯元件的伺服器、Team Foundation Build 組建電腦和遠端 Team Foundation 用戶端之間傳輸。根據預設,Team Foundation Server 會設定為可針對其 Web 服務使用 HTTP。如需 Team Foundation Server 通訊埠和服務的完整清單,以及如何在 Team Foundation Server 架構中使用這些通訊埠和服務,請參閱 Team Foundation Server 安全性架構Team Foundation Server、HTTPS 和 Secure Sockets Layer (SSL)

您可以在 Active Directory 網域或工作群組中部署 Team Foundation Server。Active Directory 提供的內建安全性功能比工作群組還多,使用這些功能可以協助保護您的 Team Foundation Server 部署。例如,您可以將 Active Directory 設定為不允許重複的電腦名稱,如此一來,惡意使用者便無法使用錯誤的 Team Foundation Server 來假冒電腦名稱。為了在工作群組中降低這類威脅的影響,您必須設定電腦憑證。如需 Active Directory 網域中 Team Foundation Server 的詳細資訊,請參閱在 Active Directory 網域中管理 Team Foundation Server。如需工作群組中 Team Foundation Server 的詳細資訊,請參閱在工作群組中管理 Team Foundation Server

不管是在工作群組或網域中部署 Team Foundation Server,在 Team Foundation Server 部署中都會有一些拓撲條件約束 (Constraint)。如需 Team Foundation Server 拓撲的詳細資訊,請參閱 Team Foundation Server 拓樸了解 SharePoint 產品和技術了解 SQL Server 和 SQL Server Reporting Services

Team Foundation Server 完全支援 Kerberos 安全性通訊協定。您可以設定 Team Foundation Server 支援 Kerberos,以便在安裝 Team Foundation Server 之後,同時對用戶端與伺服器進行雙向驗證。

驗證

Team Foundation Server 安全性會整合並仰賴 Windows 整合式驗證以及 Windows 作業系統的安全性功能。Windows 整合式驗證可用來驗證帳戶,這些帳戶是用於 Team Foundation 用戶端和 Team Foundation Server 之間的連接、邏輯 Team Foundation Server 應用程式層和資料層伺服器上的 Web 服務,以及 Team Foundation 應用程式層伺服器和資料層伺服器本身之間的連接。

您不應該在 Team Foundation Server 和 Windows SharePoint Services 之間設定 SQL 資料庫連接為使用 SQL Server 驗證。SQL Server 驗證比較不安全。當您連接到資料庫時,資料庫管理員帳戶的使用者名稱和密碼會以未加密的格式在伺服器之間傳送。Windows 整合式驗證則不會傳送使用者名稱和密碼。反之,它會使用 Windows 整合式驗證安全性通訊協定,將與主機網際網路資訊服務 (IIS) 應用程式集區相關聯的服務帳戶身分識別資訊傳送到 SQL Server。

Team Foundation Server 授權

Team Foundation Server 授權是根據 Team Foundation 使用者和群組、直接指派給這些使用者和群組的使用權限,以及這些使用者和群組可能從所屬的其他 Team Foundation Server 群組所繼承而來的使用權限。Team Foundation 使用者和群組可以是本機使用者或群組及 (或) Active Directory 使用者和群組。

Team Foundation Server 有事先設定伺服器層級和專案層級的預設群組。您可以將個別使用者填入這些群組。然而,為了管理上的方便,請考慮使用 Active Directory 安全性群組來填入這些群組。這個方法可以讓您更有效率地管理群組成員資格以及多部電腦之間的使用權限。

特定的部署可能會要求您在多部電腦上及數個應用程式內設定使用者、群組和使用權限。例如,如果要將報告和專案入口網站加入為部署的一部分,您必須在 SQL Reporting Services、Windows SharePoint Services 和 Team Foundation Server 中設定使用者和群組的使用權限。在 Team Foundation Server 上,可以根據個別專案或整部伺服器來設定使用權限。此外,預設會將某些使用權限授予加入至 Team Foundation Server 的任何使用者或群組,因為該使用者或群組會自動加入至 [Team Foundation Valid Users]。如需如何設定使用權限的詳細資訊,請參閱管理使用權限。如需 Team Foundation Server 使用者和群組的詳細資訊,請參閱管理使用者和群組

除了設定使用權限以在 Team Foundation Server 中進行授權之外,您可能也需要原始程式碼控制和工作項目內的授權。這些使用權限會在命令列上單獨管理,但都屬於 Team 總管介面不可缺少的部分。如需原始檔控制使用權限的詳細資訊,請參閱 Team Foundation 版本控制。如需工作項目自訂的詳細資訊,請參閱使用 Team Foundation 工作項目

Team Foundation Server 相依性

除了本身的服務以外,Team Foundation Server 在應用程式層和資料層伺服器上也需要特定的 Windows 和其他應用程式服務。下表會詳細說明用來裝載邏輯 Team Foundation 應用程式層之伺服器所需的服務。

服務名稱

說明

應用程式經驗查閱服務

這個服務是基礎結構的一部分,它可讓您將修正程式套用至應用程式,以確定應用程式是在最新發行的 Windows 作業系統或 Service Pack 上執行。必須執行這個服務,應用程式修正才能運作。

分散式交易協調器

這個服務所協調的交易會更新兩個以上的交易保護資源,例如資料庫、訊息佇列和檔案系統。這些交易保護資源可能是在單一電腦上,或分散在許多連接網路的電腦上。

DNS 用戶端

這個服務可用於解析 DNS 網域名稱。

事件記錄檔

這個服務會記錄作業系統上的事件,方法是將事件寫入您可在 [事件檢視器] 中讀取之三個預設記錄檔的其中一個:安全性、應用程式和系統記錄檔。

IIS 管理服務

這個服務會管理 IIS Metabase。

Net Logon

這個服務會驗證登入要求,並控制使用者帳戶資料庫的網域範圍複寫。

網路連線

這個服務 (也稱為 NetMan 服務) 會管理在 [控制台] 之 [網路連線] 中建立及設定的所有網路連線,並且負責在桌面的通知區域中顯示網路狀態。

Network Location Awareness (NLA)

這個服務會收集及存放網路組態資訊,例如 IP 位址的名稱和位置變更以及網域名稱變更。

遠端程序呼叫 (RPC)

這個服務是安全的處理程序之間通訊 (IPC) 機制,可啟用常駐在不同處理程序的資料交換和引動過程功能。該不同的處理程序可以位於同一台電腦上、區域網路 (LAN) 上或跨網際網路。遠端程序呼叫服務會作用為 RPC 結束點對應程式 (EPM) 和服務控制管理員 (SCM)。

報告伺服器 (MSSSQLSERVER)

這個服務會處理簡易物件存取通訊協定 (Simple Object Access Protocol,SOAP) 和 URL 要求、處理報告、提供快照 (Snapshot) 和報告快取管理,並支援及增進安全性原則與授權。

安全帳戶管理員

這個服務會維護使用者帳戶資訊,包括使用者所屬的群組。

Windows Management Instrumentation

這個服務會啟動和停止 Common Information Model (CIM) 物件管理員。

Windows 時間

這個服務 (也稱為 W32Time) 會同步處理在 Windows Server 2003 網路上執行之所有電腦的日期與時間。

World Wide Web Publishing 服務

這個服務是使用者模式組態和處理序 (Process) 管理員,可管理處理 HTTP 要求和執行 Web 應用程式的 IIS 元件,並定期檢查 Web 應用程式,以判斷這些 Web 應用程式是否非預期地停止。

下表會詳細說明用來裝載邏輯 Team Foundation 資料層之伺服器所需的服務。

服務名稱

說明

應用程式經驗查閱服務

這個服務是基礎結構的一部分,它可讓您將修正程式套用至應用程式,以確定應用程式是在最新發行的 Windows 作業系統或 Service Pack 上執行。必須執行這個服務,應用程式修正才能運作。

分散式交易協調器

這個服務所協調的交易會更新兩個以上的交易保護資源,例如資料庫、訊息佇列和檔案系統。這些交易保護資源可能是在單一電腦上,或分散在許多連接網路的電腦上。

DNS 用戶端

這個服務可用於解析 DNS 網域名稱。

事件記錄檔

這個服務會記錄作業系統上的事件,方法是將事件寫入您可在 [事件檢視器] 中讀取之三個預設記錄檔的其中一個:安全性、應用程式和系統記錄檔。

Net Logon

這個服務會驗證登入要求,並控制使用者帳戶資料庫的網域範圍複寫。

網路連線

這個服務 (也稱為 NetMan 服務) 會管理在 [控制台] 之 [網路連線] 中建立及設定的所有網路連線,並且負責在桌面的通知區域中顯示網路狀態。

Network Location Awareness (NLA)

這個服務會收集及存放網路組態資訊,例如 IP 位址的名稱和位置變更以及網域名稱變更。

遠端程序呼叫 (RPC)

這個服務是安全的處理程序之間通訊 (IPC) 機制,可啟用常駐在不同處理程序的資料交換和引動過程功能。該不同的處理程序可以位於同一台電腦上、區域網路 (LAN) 上或跨網際網路。遠端程序呼叫服務會作用為 RPC 結束點對應程式 (EPM) 和服務控制管理員 (SCM)。

安全帳戶管理員

這個服務會維護使用者帳戶資訊,包括使用者所屬的群組。

SQL 分析伺服器 (MSSQLSERVER)

這個服務會建立及管理 OLAP Cube 和資料採礦模型。

SQL Server FullText Search (MSSQLSERVER)

這個服務會建立內容的全文檢索索引,並啟用工作項目的全文檢索搜尋。

Windows Management Instrumentation

這個服務會啟動和停止 Common Information Model (CIM) 物件管理員。

Windows 時間

這個服務 (也稱為 W32Time) 會同步處理在 Windows Server 2003 網路上執行之所有電腦的日期與時間。

請參閱

概念

Team Foundation Server 安全性架構

在工作群組中管理 Team Foundation Server

Team Foundation 版本控制

使用 Team Foundation 工作項目

其他資源

在 Active Directory 網域中管理 Team Foundation Server

管理使用權限

管理使用者和群組

原始檔控制安全性權限和使用權限