Team Foundation Server 的信任和樹系考量

Visual Studio Team Foundation Server 會提供跨不同網域或甚至跨不同樹系之跨群組共同作業的基礎。 遵循一些重要的方針,即可確定伺服器和網域的安全性和穩定性。 最佳情況是,Team Foundation 應用程式層和資料層位於同一個網域中,但連接用戶端則可能位於不同的網域位置。

下列 Active Directory 模式和功能層級支援 Team Foundation Server:

  • 在原生模式下的 Windows 2000 Active Directory。

  • 在 Windows 2000 原生模式下的 Windows Server 2003 Active Directory。

  • 在 Windows Server 2003 功能層級下的 Windows Server 2003 Active Directory。

  • 在 Windows Server 2003 R2 Active Directory 樹系功能層級下的 Windows Server 2003 R2。

注意

Team Foundation Server 不支援任何網域驗證模式或功能等級 (支援 Windows NT Server 4.0)。

本主題內容

  • 網域信任

  • Team Foundation Server 元件之間的信任關係需求

    • 用戶端與 Team Foundation 應用程式層伺服器之間的信任

    • 用戶端與 Team Foundation Server Proxy 之間的信任

    • Team Foundation Server Proxy 與 Team Foundation 應用程式層伺服器之間的信任

    • Team Foundation 應用程式層伺服器與 Team Foundation 資料層伺服器之間的信任

    • Team Foundation Build 與 Team Foundation 應用程式層伺服器之間的信任

  • 其他網域組態和考量事項

  • 不支援的網域組態

網域信任

在支援的網域信任方面,Team Foundation Server 沒有任何特定的需求。 可採用的信任類型是依據公司網路中部署的樹系和網域類型而定。 根據 Team Foundation 元件在公司網路中部署的方式,Team Foundation Server 可能會需要特定信任關係。

一般而言,Team Foundation Server 使用者和服務必須經過驗證,才能存取伺服器元件。 從信任關係的觀點而言,Team Foundation Server 必須信任在其中定義使用者或服務帳戶的網域。

Team Foundation Server 元件之間的信任關係需求

本節將說明各種 Team Foundation Server 元件之間所需的最低信任關係。 此外,本節也會說明信任關係對於部署組態可能會有的特殊隱含意義。 判斷 Team Foundation 元件之間的信任關係是否足夠時,例如,如果您要驗證潛在 Team Foundation 用戶端電腦與 Team Foundation Server 之間的信任關係,可以使用 Web 瀏覽器驗證該用戶端是否可在裝載邏輯 Team Foundation 應用程式層元件的伺服器上存取資料夾或共用。 如果用戶端無法存取共用,Team Foundation Server 的組態就無效。

在 Team Foundation Server 中,您可以在 Team Explorer、Team Foundation 管理主控台或透過 TFSSecurity 和 **TF **命令列公用程式,管理群組成員資格和使用權限,以便存取 (授權) 伺服器及其資源。 系統會在應用程式層伺服器上檢查這位指定的使用者,以便確認該使用者屬於受信任網域的成員。

Team Foundation Server 會從 Active Directory 同步處理使用者和群組的屬性。 關鍵的信任需求是 Team Foundation Server (TFSService) 使用的服務帳戶可以驗證每個對部署提供使用者和群組的網域。 在理想狀況下,該服務帳戶必須在所有網域中獲得信任。 如果這種信任不存在,您還是能夠將可由 Windows 驗證的網域帳戶加入至 Team Foundation Server。 這些使用者帳戶可以存取 Team Foundation Server,但是除非服務帳戶獲得信任,否則無法同步處理使用者和群組成員資格的詳細屬性。 這些使用者的顯示名稱不會出現,只會出現登入名稱。 此外,如果自不信任 Team Foundation 服務帳戶的網域加入群組,將不會同步處理那些群組的成員資格,也不會取得那些群組或巢狀群組的變更。 這樣會讓使用 Active Directory 群組管理 Team Foundation Server 的成效不彰。

用戶端與 Team Foundation 應用程式層伺服器之間的信任

當用戶端應用程式 (例如 Team Explorer) 連接至 Team Foundation 應用程式層伺服器時,此伺服器會嘗試驗證執行用戶端應用程式的使用者識別。 如果 Team Foundation 應用程式層伺服器的網域信任使用者所屬的網域,該使用者就會在 Windows 整合式驗證中自動通過驗證。 如果該信任不存在,用戶端應用程式就會顯示使用者名稱和密碼對話方塊,讓該使用者可以提供替代認證,以便連接至伺服器。 經過驗證之後,Team Foundation Server 就會查看經過驗證的使用者是否獲得存取伺服器的授權。 使用者必須是 [Team Foundation Valid Users] 群組的成員,才能執行這個程序。 當使用者識別加入至現有的 Team Foundation Server 群組或加入至伺服器或專案時,該使用者就會自動加入至該群組。 如需詳細資訊,請參閱設定使用者、群組和使用權限。  

Team Foundation 應用程式層伺服器服務會以 TFSService 帳戶執行。 因此,Team Foundation 應用程式層伺服器的網域必須信任 TFSService 帳戶所屬的網域。 Team Foundation 應用程式層伺服器和 TFSService 帳戶大多時候會屬於相同的網域。

元件網域

信任

元件網域

Team Foundation 應用程式層伺服器網域

單向信任

Team Foundation 使用者網域

Team Foundation 應用程式層伺服器網域

單向信任

TFSService 帳戶網域

若要避免在每次 Team Foundation 用戶端應用程式連接至 Team Foundation Server 時都必須輸入使用者名稱和密碼,Team Foundation 用戶端的網域必須信任 Team Foundation 應用程式層伺服器的網域。

用戶端與 Team Foundation Server Proxy 之間的信任

Team Foundation Server Proxy 電腦的網域必須信任使用者的網域,才能讓 Proxy 運作。

元件網域

信任

元件網域

Team Foundation Server Proxy 電腦網域

單向信任

Team Foundation 使用者網域

Team Foundation Server Proxy 與 Team Foundation 應用程式層伺服器之間的信任

在 Active Directory 的情況中,Team Foundation Server Proxy 是 Team Foundation Server 的另一個用戶端。

元件網域

信任

元件網域

Team Foundation 應用程式層伺服器網域

單向信任

Team Foundation Server Proxy 服務帳戶網域

Team Foundation Server Proxy 電腦網域

單向信任

Team Foundation Server Proxy 使用者帳戶網域

若要避免在每次 Team Foundation 用戶端應用程式連接至 Team Foundation Server 時都必須輸入使用者名稱和密碼,Team Foundation 用戶端的網域必須信任 Team Foundation 應用程式層伺服器的網域。

Team Foundation 應用程式層伺服器與 Team Foundation 資料層伺服器之間的信任

Team Foundation 應用程式層伺服器會使用服務帳戶 (通常稱為 TFSService 帳戶) 來連接至 Team Foundation 資料層伺服器。 Team Foundation Server Web 服務也會以此帳戶執行。 因此,Team Foundation 資料層伺服器的網域必須信任 TFSService 帳戶的網域。 此外,您的 Team Foundation Server 部署中的每個網域都必須信任 TFSService 帳戶,不論是透過網域信任關係或明確授與權限。 此外,Team Foundation 資料層伺服器的網域也必須信任 TFSReports 帳戶的網域。 TFSReport 帳戶是用來存取 Team Foundation Server 報告資料來源的帳戶。

此外,Reporting Services 會以 Network Service 帳戶在 Team Foundation 應用程式層伺服器上執行。 因此,Team Foundation 資料層伺服器的網域必須信任 Team Foundation 應用程式層伺服器的網域。 如果 Team Foundation 各層之間的信任關係不是組織所需的信任關係,您就可以重新設定系統,以便讓 Reporting Services 以具名服務帳戶 (屬於 Team Foundation 應用程式層伺服器以外的不同網域) 執行。 不過,這是相當複雜的設定,因為需要從單一伺服器移轉至雙重伺服器部署,以及手動將 Report Server 重新設定為使用具名服務帳戶執行。

元件網域

信任

元件網域

Team Foundation 資料層伺服器網域

單向信任

TFSService 帳戶網域

Team Foundation 資料層伺服器網域

單向信任

TFSReport 帳戶網域

Team Foundation 資料層伺服器網域

單向信任

Team Foundation 應用程式層伺服器網域

Team Foundation Build 與 Team Foundation 應用程式層伺服器之間的信任

Team Foundation Build 會以 Windows 服務帳戶執行。 因此,Team Foundation Build 電腦的網域必須信任這個服務帳戶的網域。 一般而言,這個服務帳戶就是 TFSService 帳戶,但是您可以手動將它設定為以另一個帳戶執行。 如果 Team Foundation Build 不是以 TFSService 帳戶執行,此服務名稱就必須加入至 [Project]\Build Services 應用程式群組。

注意

建立組建時,新的組建就會放入組建置放共用資料夾中。您必須確定所有使用者都可共用此資料夾,而且 TFSService 帳戶擁有此資料夾的完全控制權。您必須在 Team Foundation Build 電腦的 [Windows 防火牆] 中開啟 [檔案及印表機共用] 通訊埠,才能允許檔案共用。

元件網域

信任

元件網域

Team Foundation Build 電腦網域

單向信任

服務帳戶網域 (通常是 TFSService)

Team Foundation 應用程式層伺服器網域

單向信任

服務帳戶網域 (通常是 TFSService)

其他網域組態和考量事項

所有其他 Active Directory 網域組態不受支援,而且不應該使用。 您應該確定安裝 Team Foundation Server 的網域支援 Team Foundation Server,而安裝 Team Foundation Server 的個別電腦是在適當的網域環境中。 如果 Team Foundation Server 支援跨多個樹系的工作,必須可使用適當的跨樹系信任。

如有安全性考量,請將 Team Foundation Server 安裝在 Windows Server 2003 網域環境中。 若要避免模擬攻擊,應該禁止使用重複的名稱,並依建立者保護電腦名稱。 如需詳細資訊,請參閱 Windows Server 2003 Active Directory,網址為 http://go.microsoft.com/fwlink/?linkid=47541

不支援的網域組態

不支援會支援 Windows NT Server 4.0 功能模式的網域組態。 例如,不支援下列網域組態:

  • Windows 2000 混合模式網域

  • 執行 Windows Server 2003 且為 Windows 2000 混合模式功能層級設定的網域控制站

  • 分別在網域和工作群組中設定應用程式層與資料層

  • 分別在工作群組和網域中設定應用程式層與資料層

您可以在簡單拓撲的範例中等拓撲的範例複雜拓撲的範例中找到支援的網域拓撲範例。

請參閱

概念

在工作群組中管理 Team Foundation Server

其他資源

Managing Team Foundation Server in an Active Directory Domain

Team Foundation Server Topologies