Team Foundation Server 的權限參考

權限可決定使用者可執行和不可執行的工作。 您必須將使用者新增至 Team 專案或 TFS 群組,他們才能存取 Team Foundation Server (TFS) 資源和 Team 專案。 如需有關 TFS 如何管理成員資格、權限及存取權的概覽,請參閱在 TFS 中管理使用者和群組

本主題將說明 TFS 權限,以及預設指派給各個內建 TFS 群組的權限。 此外也將說明可用於設定權限的工具。 共有三種內建群組類別、四種權限層級及五種權限狀態。 每位使用者對功能性工作的存取權,會視指派給他們或指派給其所屬群組的明確或繼承權限狀態而定。

本主題內容

  • 權限的新功能

  • 用於設定權限的工具

  • 內建 TFS 群組

    • 伺服器層級群組

    • 集合層級群組

    • 專案層級群組

  • 允許、拒絕、未設定及其他權限狀態

    • 繼承

    • 設定權限的注意事項

  • 伺服器層級的權限

  • 集合層級的權限

  • 專案、測試和物件層級權限

    • 專案和測試層級權限

    • 組建層級權限

    • 工作項目查詢

    • 標記

    • 工作項目追蹤的區域層級

    • 工作項目追蹤的反覆項目層級

    • Team Foundation 版本控制

    • Git 儲存機制

  • Lab Management

  • 發行管理

預設 TFS 群組和權限層級

如要指派 SharePoint 產品或 SQL Server Reporting Services 的權限,請參閱將使用者加入至 Team 專案在 TFS 中授與檢視或建立報告的權限

權限的新功能

下表註明 TFS 權限模型的新增和變更權限。 可用的權限會視您在應用程式層伺服器安裝的版本而定。

TFS 版本

新增或變更的權限

TFS 2013.3

新增 [管理測試套件] 權限,並將 [管理測試計劃權限] 重新設定範圍為僅管理測試計劃。 這些權限已設定用於區域路徑。 之前涵蓋的權限可管理測試計劃和測試套件。

TFS 2013.2

新增標記權限。

TFS 2013

新增 Git 儲存機制權限。

用於設定權限的工具

您可以使用下表列出的工具來設定權限。 您將需要使用不同工具,端視要在伺服器、集合或專案層級設定權限而定。 您可使用 Team Web Access (TWA) 來設定使用者和群組存取 Team 專案的大部分權限。

權限層級

TWA 管理頁面或物件層級安全性

Team Explorer (註 1)

Team Foundation 管理主控台

TFSSecurity 命令列工具

Tf 命令列工具

TFSLabConfig 命令列工具

伺服器層級

核取標記

核取標記

集合層級

核取標記

核取標記

核取標記

核取標記

專案和測試層級

核取標記

核取標記

核取標記

組建層級

核取標記

核取標記

工作項目查詢

核取標記

核取標記

核取標記

標記

核取標記

工作項目追蹤的區域層級

核取標記

核取標記

核取標記

工作項目追蹤的反覆項目層級

核取標記

核取標記

核取標記

Team Foundation 版本控制

核取標記

核取標記

Git 儲存機制

核取標記

核取標記

Lab Management

核取標記

Release Management (2)

備註

  1. 從 Team Explorer 存取某些權限選項時,會在 Team Web Access 開啟使用者介面。

  2. 如果您在部署中加入 Release Management,則可以使用您在 Release Management、TFS 或 Active Directory 中定義的群組來管理權限。 您會透過 Release Management 用戶端來管理權限。

另一個可用於管理群組內使用者成員資格的工具是 CodePlex 的 TFSAdmin 工具

命令列工具、命名空間及權限名稱

運用 TFSSecurity 命令列工具來管理權限時,必須指定命名空間和權限名稱。 以下各節會說明命名空間和命令名稱。 共有兩種命名空間群組︰專案集合和伺服器。 使用 TFSSecurity /a 命令可列出命名空間。 若要取得您可以在命名空間下設定的權限集,請使用 TFSSecurity /a Namespace /collection:CollectionNameURL。

專案集合命名空間

伺服器命名空間

TFSSecurity /a /collection:CollectionNameURL

Build
BuildAdministration
Chat
Collection
CSS
Discussion Threads
EventSubscription
Git Repositories
Identity
Iteration
Job
Project
ProjectServerAdministration
Registry
Server
ServiceHooks
StrongBox
Tagging
TeamLabSecurity
VersionControlItems
VersionControlPrivileges
WorkItemQueryFolders
WorkItemTrackingAdministration
WorkItemTrackingProvision
Workspaces

TFSSecurity /a /server:ServerNameURL

Catalog
CollectionManagement
Diagnostic
EventSubscription
Feature Availability
HostingAccount
Identity
Job
Lab
Registry
Server
StrongBox
Warehouse
WebAccess

內建 TFS 群組

安裝 TFS 時,系統會在伺服器層級定義四個群組。 建立專案集合時,系統會在集合層級建立七個群組;每建立一個 Team 專案,系統就會建立六個群組,並將範圍設定為該 Team 專案。 這些群組各有一組相關聯的預設權限。 您無法移除或刪除預設伺服器層級群組,例如 Team Foundation Administrators 群組。

伺服器層級

集合層級

專案層級

  • SharePoint Web Application Services

  • Team Foundation Administrators

  • Team Foundation Service Accounts

  • Team Foundation Valid Users

  • Project Collection Administrators

  • Project Collection Build Administrators

  • Project Collection Build Service Accounts

  • Project Collection Service Accounts

  • Project Collection Proxy Service Accounts

  • Project Collection Test Service Accounts

  • Project Collection Valid Users (註 1)

  • 組建系統管理員

  • Contributors

  • Project Administrators

  • Project Valid Users (註 1)

  • Readers

  • TeamProject 群組 (註 2)

注意

  1. 如要進一步了解 Valid User 群組,請跳至什麼是 Valid User?如何填入 Valid User 群組?一節。

  2. 系統會以 Team 專案的名稱建立 Team 群組。 例如,如果您建立名為「程式碼範例」的 Team 專案,系統也會建立名為「程式碼範例 Team」的 Team 群組。您可以重新命名此 Team 群組。

    此外,當您建立其他 Team 時,系統會為每個 Team 建立一個 Team 群組。

系統會將伺服器層級權限指派給伺服器層級群組。 系統會將針對集合、專案及物件所定義的權限指派給集合層級群組。 此外,指派給專案層級群組的權限會包含專案層級和物件層級的權限。

例如,下圖即顯示系統指派給專案層級 Contributor 群組的權限。

參與者角色預設權限

Project Administrator 群組的權限包含系統指派給 Contributor 群組的權限和一些其他權限。

專案 Admininistrator 角色預設權限

伺服器層級群組

根據預設,當您安裝 TFS 時,應用程式層的伺服器層級會有下列群組。

群組名稱 (前置詞︰Team Foundation\)

權限

預設的使用者帳戶

Team Foundation Administrators   

可執行所有的 TFS 作業。 這個群組的使用者需要具備 TFS 的完整管理控制權,人數應盡量限制在最小範圍內。

託管 Team Foundation 應用程式服務之任何伺服器的 Local Administrators 群組 (BUILTIN\Administrators)。

Server\Team Foundation Service Accounts 群組和 \Project Server Integration Service Accounts 群組的成員。

Team Foundation Valid Users   

具備原始程式碼、工作項目及組建定義的讀取存取權。 對 TWA 功能的存取權取決於受指派的授權或存取層級群組。

重要

如果您將這個群組的 [檢視執行個體層級資訊] 權限設為 [拒絕] 或 [未設定],使用者就無法存取部署。

包含已新增至 TFS 任何位置的所有使用者和群組。

您無法修改此群組的成員資格。

Team Foundation Service Accounts   

具備 TFS 的服務層級權限。

包含安裝期間所提供的服務帳戶。

這個群組應該只包含服務帳戶,而不包含使用者帳戶或包含使用者帳戶的群組。 根據預設,這個群組是 [Team Foundation Administrators] 的成員。

Project Server Integration Service Account   

具備 Project Server 部署的服務層級權限 (這些部署都是針對與 TFS 交互操作所設定)。 此外,這個群組的成員也具備一些 TFS 服務層級權限。

這個群組應該只包含服務帳戶,而不包含使用者帳戶或包含使用者帳戶的群組。 根據預設,這個群組是 [Team Foundation Administrators] 的成員。

SharePoint Web Application Services   

不只具有 TFS 的部分服務層級權限,還具有設定成與 TFS 搭配使用之 SharePoint Web 應用程式的服務層級權限。

這個群組應該只包含服務帳戶,而不包含使用者帳戶或包含使用者帳戶的群組。 與 Service Accounts 群組不同,這個群組並不是 Team Foundation Administrators 的成員。

Team Foundation Proxy Service Accounts

這個群組的成員具備 Team Foundation Server Proxy 的服務層級權限,以及部分 TFS 服務層級權限。

這個群組應該只包含服務帳戶,而不包含使用者帳戶或包含使用者帳戶的群組。

集合層級群組

根據預設,當您設定集合時,集合層級會有下列群組。

群組名稱 (前置詞︰TeamProjectCollectionName\)

群組層級權限

帳戶指派

Project Collection Administrators   

可執行 Team 專案集合的所有作業。

包含已安裝 TFS 應用程式層服務之伺服器的 Local Administrators 群組 (BUILTIN\Administrators)。 此外也包含 TeamProjectCollectionName\Service Accounts 群組的成員。

這個群組的使用者需要具備集合的完整管理控制權,人數應盡量限制在最小範圍內。

Project Collection Valid Users

可存取為集合定義的 Team 專案。

重要

如果您將這個群組的 [檢視集合層級資訊] 權限設為 [拒絕] 或 [未設定],使用者就無法存取集合。

包含已新增至 Team 專案集合任何位置的所有使用者和群組。 您無法修改這個群組的成員資格。

Project Collection Service Accounts  

具備集合和 TFS 的服務層級權限。

包含安裝期間所提供的服務帳戶。 這個群組應該只包含服務帳戶以及只包含服務帳戶的群組。 這個群組預設是 Team Foundation AdministratorsTeam Foundation Service Accounts 的成員。

Project Collection Build Administrators   

可管理集合的組建資源和權限。

這個群組的使用者需要具備此集合的組建伺服器和服務的完整管理控制權,人數應盡量限制在最小範圍內。

Project Collection Build Service Accounts

具備執行集合組建服務所需的權限。

將這個群組限制為服務帳戶以及只包含服務帳戶的群組。

Project Collection Proxy Service Accounts   

具備執行集合 Proxy 服務所需的權限。

將這個群組限制為服務帳戶以及只包含服務帳戶的群組。

Project Collection Test Service Accounts   

具備集合的測試服務權限。

將這個群組限制為服務帳戶以及只包含服務帳戶的群組。

專案層級群組

根據預設,當您建立 Team 專案時,系統就會出現下列群組。 其權限的範圍限於專案層級。

群組 (前置詞︰ProjectName\)

群組層級權限

其他備註

Project Administrators   

可管理 Team 專案的所有層面,但無法建立專案。

指派給將要管理使用者權限、建立 Team、定義區域反覆項目路徑,或自訂工作項目追蹤的使用者。

Build Administrators   

可管理專案的組建資源和組建權限。 成員可以管理測試環境、建立測試回合,以及管理組建。

Contributors   

可以完全參與專案程式碼基底和工作項目追蹤。

根據預設,您建立 Team 專案時所建立的小組群組會加入到這個群組,而您加入到小組的任何使用者都會是這個群組的成員。 此外,除非從清單中選擇不同的群組,否則您為 Team 專案建立的任何小組預設都會加入至這個群組。

Readers

可檢視專案,但無法修改。

指派給想要檢視進行中工作的專案關係人。

TeamName   

繼承指派給 Contributors 群組的相同權限。 可以完全參與專案程式碼基底和工作項目追蹤。

當您建立 Team 專案時會建立預設 Team 群組,且預設會加入至 Team 專案的 Contributors 群組。 任何您建立的新小組也會有一個為它們建立的群組,並加入至 Contributors 群組。

在 TFS 的每個專案中,除了這些專案層級群組之外,還會出現兩個集合層級群組:

  • TeamProjectCollectionName**\Project Collection Administrators**

    您無法變更這個集合層級群組的權限。

  • TeamProjectCollectionName**\Project Collection Build Service Accounts**

    請勿移除這個群組的 [檢視專案層級資訊] 權限,或將這個權限設定為 [拒絕]。

允許、拒絕、未設定及其他權限狀態

TFS 對於安全性權限採用最嚴格的模型。 也就是說,如果使用者屬於兩個群組,當同一個權限指派給這兩個群組,並分別設為 [允許] 和 [拒絕] 時,[拒絕] 的優先順序會高於 [允許]。 但對於屬於 Project Collection Administrator 和 Team Foundation Server Administrator 群組的使用者而言,此規則有一些例外。

您可以為權限指定兩種明確的授權狀態:[拒絕][允許]。 此外還有其他三種狀態︰[允許繼承][拒絕繼承][未設定][未設定] 是隱含的 [拒絕] 狀態。

權限

授權

允許

明確授與使用者執行與特定權限相關聯的工作。 「允許」通常是繼承自群組成員資格。 使用者要能存取工作,必須將相關聯的權限設定為 [允許] 或 [允許繼承]。

拒絕

明確阻止使用者執行與特定權限相關聯的工作。 「拒絕」通常繼承自群組成員資格。

允許繼承/拒絕繼承

根據使用者所屬群組所設定的權限,允許或拒絕使用者執行與該權限相關聯的工作。

未設定

隱含阻止使用者執行與權限相關聯的動作。

由於權限未明確設為 [拒絕] 及 [允許],因此可從使用者或群組所屬的其他群組繼承該權限的授權。

根據預設,大多數權限都不會設定為 [拒絕] 或 [允許]。 權限都保持為 [未設定]。

權限狀態會遵循以下優先順序設定︰

  • [拒絕] 權限的優先順序高於其他所有權限設定,包括 [允許]。 例如,使用者可能屬於專案中的兩個群組。 其中一個群組的發行測試結果權限設為「拒絕」,而另一個群組的這項權限設為「允許」。 「拒絕」設定的優先順序最高,因此不會授權使用者發行測試結果。

    這項規則的例外如下︰

    • [拒絕] 權限若繼承自階層式父代,則不具優先權。 下列功能支援階層式權限設定:

      • Team Foundation 版本控制的原始檔控制資料夾

      • Git 儲存機制

      • 工作項目追蹤的區域和反覆項目節點

      • 工作項目共用查詢和查詢資料夾

      針對特定物件 (例如原始檔控制資料夾、儲存機制或區域子節點) 設定的明確權限,會覆寫繼承自父物件的權限。 例如,針對原始檔控制資料夾設定的 [拒絕],不會覆寫針對其中一個子資料夾設定的 [允許]。

    • 當使用者屬於系統管理員群組 (例如 Project Collection Administrators 或 Team Foundation Administrators 群組) 時,除非在權限描述中另有說明,否則也適用相同規則。

  • [允許繼承] 的優先順序高於 [未設定]。

繼承

由於 TFS 中的權限是繼承而來的,因此當使用者或群組的權限狀態為 [未設定] 時,使用者或群組可能會受到所屬群組的權限明確狀態影響。 例如,當您檢閱使用者或群組的權限時,您可能會看到權限同時設為 [允許] 和 [允許繼承]。 後者的權限是從使用者或群組所屬的其他群組繼承而來。 在此範例中,使用者在專案中可能會同時屬於專案層級的群組以及集合層級的群組。 如果其中一個群組具有明確設為 [允許] 的權限,而另一個群組擁有 [未設定] 的相同權限,則使用者將擁有 [允許繼承] 權限,可以執行該權限所控制的動作。 使用者會繼承這兩個群組的權限,而 [允許] 權限的優先順序高於 [未設定] 權限。

權限繼承

若要了解權限繼承的原因,您可以將滑鼠指標停留在權限設定上,然後選擇 [為什麼?]。 新的視窗隨即開啟。 這個視窗會顯示該權限的繼承資訊。

[安全性] 頁面、參與者角色、權限

部分物件層級的安全性對話方塊會提供繼承開啟/關閉選項。 使用此選項可停用資料夾、共用查詢及其他物件的繼承功能。

含繼承選項的安全性對話方塊

指派權限的注意事項

建議執行︰

  • 管理許多使用者時,使用 Windowsa 群組。

  • 對於必須要能建立及共用專案工作項目查詢的使用者和群組,請考慮授與他們「參與」權限。

  • 新增許多 Team 時,請考慮在 TFS 中建立 Team Administrators 群組,以便將可用的權限子集分配給 Project Administrators 群組。

  • 新增 Team 時,請考慮要將什麼權限指派給 Team 負責人、Srum Master 及其他可能需要建立和修改區域路徑、反覆項目路徑及查詢的 Team 成員。

不建議執行︰

  • 切勿將已加入 Project Administrators 群組的帳戶加入 Readers 群組。 這樣做的話會將「拒絕」狀態指派給許多權限。

  • 切勿變更有效使用者群組的預設指派。 如果您將其中一個 Valid Users 群組的 [檢視執行個體層級資訊] 權限移除或設為 [拒絕],該群組中的使用者將無法存取 Team 專案、集合或部署 (視您設定的群組而定)。

  • 切勿將標註為「僅指派給服務帳戶」的權限指派給使用者帳戶。

伺服器層級的權限

伺服器層級權限所授與的權限會影響部署中的每一個專案和集合。 您可以從 Team Foundation 管理主控台或使用 TFSSecurity 命令列工具來設定伺服器層級權限。

您可以針對伺服器層級使用者和群組 (如 Team Foundation Administrators),以及您所新增的伺服器層級自訂群組設定這些權限。

權限名稱

TFSSecurity 動作

TFSSecurity 命名空間

描述

SharePoint Web Application Services

Team Foundation Administrators

Team Foundation Service Accounts

管理倉儲 (註 1)

管理

倉儲

可以使用倉儲控制 Web 服務處理或變更資料倉儲或 SQL Server Analysis Cube 的設定。

核取標記 核取標記

建立 Team 專案集合

CreateCollection

CollectionManagement

可以建立及管理 Team 專案集合。

核取標記 核取標記

刪除 Team 專案集合 (註 2)

DeleteCollection

CollectionManagement

可以從部署刪除 Team 專案集合。

核取標記 核取標記

編輯執行個體層級資訊 (註 3)

GENERIC_WRITE

tf: AdminConfiguration

tf: AdminConnections

伺服器

可以編輯 TFS 使用者和群組的伺服器層級權限,以及從集合加入或移除伺服器層級群組。

核取標記 核取標記

代表其他人提出要求

Impersonate

伺服器

可以代表其他使用者或服務執行作業。 僅指派給服務帳戶。

核取標記 核取標記

觸發事件

TRIGGER_EVENT

伺服器

可以觸發 TFS 警示事件。 僅指派給服務帳戶和 Team Foundation Administrators 群組的成員。

核取標記 核取標記

使用完整 Web 存取功能 (註 4)

FullAccess

伺服器

可以使用所有 TWA 功能。

核取標記 核取標記

檢視執行個體層級資訊 (註 5)

GENERIC_READ

伺服器

可以檢視伺服器層級的群組成員資格和這些使用者的權限。

核取標記 核取標記 核取標記

注意

  1. 可能需要其他權限才能完整處理或重建資料倉儲和 Analysis Cube

  2. 刪除 Team 專案集合並不會從 SQL Server 中刪除集合資料庫。

  3. [編輯執行個體層級資訊] 可對執行個體所定義之所有專案集合中定義的所有 Team 專案執行下列工作:

    • 加入及管理小組及所有小組相關功能

    • 建立及修改區域和反覆項目

    • 編輯簽入原則

    • 編輯共用工作項目查詢

    • 編輯專案層級和集合層級權限 ACL

    • 建立及修改全域清單

    • 編輯事件訂閱 (電子郵件或 SOAP)。

    透過功能表設定時,[編輯執行個體層級資訊] 權限也會隱含地允許使用者修改版本控制權限。 若要在命令提示字元授與上述所有權限,您必須使用 tf.exe Permission 命令來授與 AdminConfigurationAdminConnections 權限以及 GENERIC_WRITE。

  4. 如果「使用完整 Web 存取」功能權限設定為「拒絕」,則使用者只會看見 [有限] 群組允許使用的功能 (請參閱變更存取層級)。 「拒絕」將會覆寫任何隱含的允許,對於屬於系統管理群組 (例如 Team Foundation Administrators) 成員的帳戶也是如此。

  5. 系統也會將 [檢視執行個體層級資訊] 權限指派給 Team Foundation Valid Users 群組。

集合層級的權限

集合層級的權限會授與集合相關工作的授權,您可以對以下使用者和群組設定這些權限︰

  • 集合層級使用者和群組 (例如 Project Collection Administrators)

  • 您新增至集合的專案層級群組

  • 您新增至集合的自訂群組

您可以從集合的 TWA 管理頁面Team Foundation 管理主控台、或使用 TFSSecurity 命令列工具tf 命令列工具,設定集合層級權限。 所有權限的範圍都限於這些權限設定的特定集合。

權限名稱

TFSSecurity 動作

TFSSecurity 命名空間

描述

Project Collection Service Accounts

Project Collection Build Service Accounts

Project Collection Build Administrators

Project Collection Administrators (註 1)

管理組建資源權限

AdministerBuildResourcePermissions

BuildAdministration

可以修改組建資源的權限。

核取標記

核取標記 核取標記

管理 Project Server 整合

AdministerProjectServer

ProjectServerAdministration

可以設定 TFS 和 Project Server 的整合,以啟用這兩個伺服器產品之間的資料同步處理。

核取標記

核取標記

管理擱置的變更

AdminShelvesets

tf: AdminShelvesets

VersionControlPrivileges

可以刪除其他使用者建立的擱置集。

核取標記 核取標記

核取標記

管理工作區

AdminWorkspaces

tf: AdminWorkspaces

VersionControlPrivileges

可以建立其他使用者的工作區,以及刪除其他使用者建立的工作區。

核取標記 核取標記

核取標記

修改追蹤設定

DIAGNOSTIC_TRACE

集合

可以變更追蹤設定以收集有關 TFS Web 服務的更詳盡診斷資訊。

核取標記

建立工作區 (註 2)

tf: CreateWorkspace

VersionControlPrivileges

可以建立版本控制工作區。

核取標記

核取標記 核取標記

建立新專案 (註 3)

CREATE_PROJECTS

集合

可以在 Team 專案集合中建立專案。

核取標記

刪除 Team 專案 (註 4)

刪除

Project

可以刪除 Team 專案。

核取標記

編輯集合層級資訊 (註 5)

GENERIC_WRITE

tf: AdminConfiguration

tf: AdminConnections

集合

VersionControlPrivileges

可以新增使用者和群組,以及編輯使用者和群組的集合層級權限。

核取標記

核取標記

代表其他人提出要求

Impersonate

伺服器

可以代表其他使用者或服務執行作業。 僅指派給服務帳戶。

核取標記

管理組建資源

ManageBuildResources

BuildAdministration

可以管理組建電腦、組建代理程式及組建控制器。

核取標記 核取標記 核取標記 核取標記

管理流程範本

MANAGE_TEMPLATE

集合

可以下載、建立、編輯及上傳流程範本。

核取標記

管理測試控制器

MANAGE_TEST_CONTROLLERS

集合

可以註冊及取消註冊測試控制器。

核取標記

觸發事件 (註 6)

TRIGGER_EVENT

集合

可以觸發集合內的專案警示事件。 僅指派給服務帳戶。

核取標記

核取標記

使用組建資源

UseBuildResources

BuildAdministration

可以保留及配置組建代理程式。 僅指派給組建服務的服務帳戶。

核取標記 核取標記

核取標記

檢視組建資源

ViewBuildResources

BuildAdministration

可以檢視 (但無法使用) 為集合所設定的組建控制器和組建代理程式。

核取標記 核取標記 核取標記 核取標記

檢視集合層級資訊

GENERIC_READ

集合

可以檢視集合層級的群組成員資格和權限。

核取標記 核取標記 核取標記 核取標記

檢視系統同步處理資訊

SYNCHRONIZE_READ

集合

可以呼叫同步處理應用程式開發介面。 僅指派給服務帳戶。

核取標記

核取標記

注意:

  1. 此外,系統會對這些 TFS 群組做出下列預設指派︰

    • Project Collection Valid Users 群組︰建立工作區、檢視組建資源及檢視集合層級資訊。

    • Project Collection Proxy Service Accounts︰建立工作區、檢視組建資源及檢視集合層級資訊。

    • Project Collection Test Service Accounts︰建立工作區、管理測試控制器、檢視組建資源及檢視集合層級資訊。

  2. 系統會授與所有使用者 [建立工作區] 權限,這是使用者做為 Project Collection Valid Users 群組成員的部分成員資格。

  3. 視您的部署而定,可能還需要其他權限。 此外,您還必須以系統管理員的身分執行 Visual Studio 或 Team Explorer,才能成功完成建立新的 Team 專案精靈

  4. 刪除 Team 專案,會刪除與專案相關聯的所有資料。 您除了將集合還原至刪除專案之前的位置以外,無法復原 Team 專案的刪除作業。

  5. [編輯集合層級資訊] 可對集合中定義的所有 Team 專案執行下列工作:

    • 加入及管理小組及所有小組相關功能

    • 建立及修改區域和反覆項目

    • 編輯簽入原則

    • 編輯共用工作項目查詢

    • 編輯專案層級和集合層級權限 ACL

    • 建立及修改全域清單

    • 編輯專案或集合層級事件的事件訂閱 (電子郵件或 SOAP)。

    當您透過 TWA 將 [編輯集合層級資訊] 設定為 [允許] 時,使用者將可新增或移除集合層級的 TFS 群組,並隱含允許這些使用者修改版本控制權限。 若要在命令提示字元授與上述所有權限,您必須使用 tf.exe Permission 命令來授與 AdminConfigurationAdminConnections 權限以及 GENERIC_WRITE。

  6. 具備這項權限的使用者無法移除內建的集合層級群組,例如 Project Collection Administrators。

  7. 將這項權限加入至其他使用者,可能會允許拒絕服務攻擊。

專案、測試和物件層級權限

專案層級的權限是針對單一專案的使用者和群組所設定的。 在專案中,您可以針對為該專案所建立的物件設定權限,例如︰區域、反覆項目、原始檔控制資料夾、查詢和查詢資料夾,以及組建定義等物件。 您可以針對您新增至 Team 專案或集合的使用者和群組,設定專案和物件層級的權限。

系統已將許多預設權限指派給這些內建的專案層級和集合層級群組︰

  • 專案層級群組︰Builders、Contributors、Project Administrators 及 Readers

  • 集合層級群組︰Project Collection Administrators、Project Collection Build Service Accounts、Project Collection Proxy Service Accounts 及 Project Collection Test Service Accounts

專案和測試層級權限

您可以從專案的 TWA 管理頁面或使用 TFSSecurity 命令列工具,設定專案層級權限。 所有專案層級的權限都是針對設定權限的特定 Team 專案來授權使用者。

權限名稱

TFSSecurity 動作

TFSSecurity 命名空間

描述

Build Administrators、Contributors 及 Teams

Project Administrators (註 1)

建立標記定義

Create

標記

可以透過工作項目表單新增標記。

核取標記 核取標記

建立測試回合

PUBLISH_TEST_RESULTS

Project

可以新增和移除測試結果,以及新增或修改測試回合。

核取標記 核取標記

刪除 Team 專案

DELETE

Project

可以從 TFS 刪除 Team 專案。

核取標記

刪除測試回合

DELETE_TEST_RESULTS

Project

可以刪除排定的測試。

核取標記 核取標記

編輯專案層級資訊 (註 2)

GENERIC_WRITE

Project

可以編輯使用者和群組的專案層級權限。

核取標記

管理測試組態

MANAGE_TEST_CONFIGURATIONS

Project

可以建立和刪除測試組態。

核取標記 核取標記

管理測試環境

MANAGE_TEST_ENVIRONMENTS

Project

具備這項權限的使用者可以建立和刪除測試環境。

核取標記 核取標記

檢視專案層級資訊

GENERIC_READ

Project

可以檢視專案層級的群組成員資格和權限。

核取標記 核取標記

檢視測試回合

VIEW_TEST_RESULTS

Project

可以檢視 Team 專案區域路徑下的測試計劃。

核取標記 核取標記

注意:

  1. 此外,系統會對這些 TFS 群組做出下列預設指派︰

    • Readers:建立標記定義、檢視專案層級資訊及檢視測試回合。

    • Project Collection Administrators︰與 Project Administrators 相同的權限,但「刪除測試回合」除外。

    • Project Collection Build Administrators︰與 Project Administrators 相同的權限,但「刪除測試回合」除外。

    • Project Collection Build Service Accounts︰建立測試回合、管理測試組態、管理測試環境、檢視專案層級資訊、檢視測試回合。

    • Project Collection Test Service Accounts︰建立測試回合、管理測試組態、管理測試環境、檢視專案層級資訊。

  2. [編輯專案層級資訊] 可對 Team 專案執行下列工作:

    • 加入及管理小組及所有小組相關功能

    • 建立及修改區域和反覆項目

    • 編輯簽入原則

    • 編輯共用工作項目查詢

    • 編輯專案層級權限 ACL

    • 建立及修改全域清單

    • 編輯專案層級事件的事件訂閱 (電子郵件或 SOAP)。

組建層級權限

您可以從 TWA 或 Team Explorer 中組建定義的內容功能表,或使用 TFSSecurity 命令列工具,針對所有或某一組建定義來設定組建層級權限。

權限名稱 (UI)

TFSSecurity 動作

TFSSecurity 命名空間

描述

Contributors

Build Definition Authors 或 Builders

組建系統管理員

Project Administrators (註 1)

管理組建權限

AdministerBuildPermissions

組建

可以管理其他使用者的組建權限。

核取標記

刪除組建定義

DeleteBuildDefinition

組建

可以刪除這個專案的組建定義。

核取標記 核取標記 核取標記

刪除組建

DeleteBuilds

組建

可以刪除完成的組建。

核取標記 核取標記 核取標記

終結組建

DestroyBuilds

組建

可以永久刪除完成的組建。

核取標記 核取標記

編輯組建定義 (註 2)

EditBuildDefinition

組建

可以建立及修改這個專案的組建定義。

核取標記 核取標記 核取標記

編輯組建品質

EditBuildQuality

組建

可以透過 Team Explorer 或 Team Web Access 新增組建品質的相關資訊。

核取標記

核取標記 核取標記

管理組建品質

ManageBuildQualities

組建

可以新增或移除組建品質。

核取標記 核取標記

管理組建佇列

ManageBuildQueue

組建

可以取消、重新排列優先順序或延後已佇列組建。

核取標記 核取標記

依組建覆寫簽入驗證 (註 3)

OverrideBuildCheckInValidation

組建

可以認可會影響閘道組建定義的變更集,而不觸發系統先擱置及建置其變更。

佇列組建

QueueBuilds

組建

可以透過 Team Foundation Build 的介面或命令提示字元,將組建放入佇列中。 也可以停止已佇列的組建。

核取標記 核取標記 核取標記 核取標記

無限期保留

RetainIndefinitely

組建

可以標示組建,使任何適用的保留原則不會自動刪除該組建。

核取標記 核取標記

停止組建

StopBuilds

組建

可以停止正在進行中的任何組建,包括其他使用者已加入佇列並啟動的組建。

核取標記 核取標記

更新組建資訊

UpdateBuildInformation

組建

可以將組建資訊節點新增至系統,而且也可以新增組建品質的相關資訊。 僅指派給服務帳戶。

檢視組建定義

ViewBuildDefinition

組建

可以檢視針對 Team 專案建立的組建定義。

核取標記 核取標記 核取標記 核取標記

檢視組建

ViewBuilds

組建

可以檢視這個 Team 專案已佇列和已完成的組建。

核取標記 核取標記 核取標記 核取標記

注意:

  1. 此外,系統會對這些內建群組做出下列預設指派︰

    • Readers︰檢視組建定義和檢視組建。

    • Project Collection Administrators︰除了「更新組建資訊」之外的所有權限。

    • Project Collection Build Administrators︰除了「依組建覆寫簽入驗證」和「更新組建資訊」之外的所有權限。

    • Project Collection Build Service Accounts︰編輯組建品質、管理組建佇列、更新組建資訊、依組建覆寫簽入驗證、佇列組建、檢視組建定義及檢視組建。

    • Project Collection Test Service Accounts︰更新組建資訊、檢視組建定義及檢視組建。

  2. 當您想控制特定組建定義的權限時,您可以關閉組建定義的繼承。

    啟動繼承時,組建定義會採用在專案層級為群組或使用者定義的組建權限。 例如,自訂 Build Managers 群組具有設為可手動將專案 Fabrikam 的組建排入佇列的權限。 專案 Fabrikam 之任何啟動繼承的組建定義,都允許 Build Managers 群組的成員手動將組建排入佇列。

    但是,藉由關閉專案 Fabrikam 的繼承,您可以將權限設為只允許 Project Administrators 針對特定組建定義手動將組建排入佇列。 如此一來,即可特別針對該組態定義設定權限。

  3. 僅將「依組建覆寫簽入驗證」權限指派給組建服務的服務帳戶,以及負責程式碼品質的組建系統管理員。 如需詳細資訊,請參閱簽入由閘道簽入組建所控制的暫止變更

工作項目查詢的權限

您可以從 TWA 或 Team Explorer 的 [共用查詢] 捷徑功能表或使用 TFSSecurity 命令列工具,設定工作項目查詢的權限。 所有權限的範圍都限於設定這些權限的特定查詢或查詢資料夾。

對於必須要能建立及共用專案工作項目查詢的使用者和群組,請考慮授與他們「參與」權限。 若要建立查詢圖表,您必須具有「進階」存取權

權限名稱

TFSSecurity 動作

TFSSecurity 命名空間

描述

Readers、Contributors、Build Administrators

Creator Owners、Project Administrators、Project Collection Administrators

參與

參與

WorkItemQueryFolders

可以檢視及修改此查詢或查詢資料夾。

核取標記

刪除

DELETE

WorkItemQueryFolders

可以刪除查詢或查詢資料夾 (包括其內容)。

核取標記

管理權限

MANAGEPERMISSIONS

可以管理此查詢或查詢資料夾的權限。

核取標記

讀取

讀取

WorkItemQueryFolders

可以檢視及使用查詢或資料夾中的查詢,但是無法修改查詢或查詢資料夾的內容。

核取標記 核取標記

FullControl

WorkItemQueryFolders

可以檢視、編輯、刪除及管理查詢或查詢資料夾 (包括其內容) 的權限。

核取標記

標記權限

標記提供一種將工作項目設成群組或分類的快速方法。 安裝 TFS 2013.2 或以上版本的 TFS 內部部署都可提供標記權限。 您可以從 TWA 管理的 [安全性] 頁面設定 [建立標記定義]。 如要設定其餘所有權限,請使用 TFSSecurity 命令列工具

權限名稱

TFSSecurity 動作

TFSSecurity 命名空間

描述

Readers

Contributors

Project Administrators (註 1)

建立標記定義 (註 2)

CREATE

標記

可以建立新的標記並將標記套用至工作項目。 沒有這個權限的使用者只能從 Team 專案的現有標記集中選取標記。

核取標記 核取標記

刪除標記定義 (註 3、4)

DELETE

標記

可以從該專案的可用標記清單中移除標記。

核取標記

列舉標記定義 (註 4、5)

ENUMERATE

標記

可以檢視 Team 專案內工作項目的可用標記清單。 沒有這個權限的使用者在工作項目表單或查詢編輯器中不會有可用標記清單供其從中選擇標記。

核取標記 核取標記 核取標記

更新標記定義 (註 4)

UPDATE

標記

可以使用 REST API 來重新命名標記。

核取標記 核取標記

注意:

  1. 此外,Project Collection Service Accounts 群組已明確指派所有標記權限。

  2. Readers 和 Contributors 繼承 [建立標記定義] 權限,因為 Project Valid Users 群組的這個權限已明確設為 [允許]。

    雖然 [建立標記定義] 權限會出現在 Team 專案層級的安全性設定中,但標記權限實際上是集合層級的權限,只不過當它們出現在使用者介面中時就會被納入專案層級的範圍。 若要在使用 TFSSecurity 命令時將標記權限的範圍限定在單一 Team 專案,您必須在命令語法中提供專案的 GUID。 否則,您的變更會套用至整個 Team 專案集合。 在變更或設定這些權限時,請務必記住這一點。

  3. 沒有 UI 可支援刪除標記。 如要刪除標記,請移除與該標記相關聯的指派。 未指派的標記在 3 天未使用之後,TFS 會自動加以刪除。

  4. 不會出現在 UI 中;只能使用 TFSSecurity 命令進行設定。

  5. Readers 和 Contributors 的 [檢視專案層級資訊] 若設為 [允許],則明確允許這些群組中的使用者檢視現有的標記 ([列舉標記定義] 權限)。

工作項目追蹤的區域層級權限

區域層級權限會根據工作項目在區域樹狀階層中的位置,授與或限制為專案定義之工作項目的存取權。

您可以從 [區域] 的 TWA 管理頁面或使用 TFSSecurity 命令列工具,定義及設定區域層級權限。 所有權限的範圍都限於設定權限的特定區域路徑。

權限名稱

TFSSecurity 動作

TFSSecurity 命名空間

描述

Contributors

組建系統管理員

Project Collection Build Service Accounts (註 1)

建立子節點 (註 2)

CREATE_CHILDREN

CSS

可以建立區域節點。 同時具有這項權限和 [編輯此節點] 權限的使用者可以移動或重新排列任何子區域節點。

刪除此節點 (註 2)

DELETE

CSS

針對另一個節點同時具有這項權限和 [編輯此節點] 權限的使用者可以刪除區域節點,並將所刪除節點中的現有工作項目重新分類。 如果所刪除的節點具有子節點,則也會一併刪除那些節點。

編輯此節點 (註 2)

GENERIC_WRITE

CSS

可以設定此節點的權限,以及重新命名區域節點。

編輯此節點中的工作項目 (註 3)

WORK_ITEM_WRITE

CSS

可以編輯此區域節點中的工作項目。

核取標記 核取標記 核取標記

管理測試計劃 (註 4)

MANAGE_TEST_PLANS

CSS

可以修改測試計劃屬性,例如組建和測試設定。

核取標記 核取標記

管理測試套件 (註 4)

MANAGE_TEST_SUITES

CSS

可以建立及刪除測試套件、在測試套件中新增及移除測試案例、變更與測試套件相關聯的測試組態,以及修改套件階層 (移動測試套件)。

核取標記 核取標記

檢視此節點的權限

GENERIC_READ

CSS

可以檢視此節點的安全性設定。

核取標記 核取標記 核取標記

檢視此節點中的工作項目 (註 5)

WORK_ITEM_READ

CSS

可以檢視 (但無法變更) 此區域節點中的工作項目。

核取標記 核取標記 核取標記

注意:

  1. 此外,系統會對這些內建群組做出下列預設指派︰

    • Readers:這個節點的檢視權限,以及僅可檢視權限。

    • Project Collection Test Service Accounts:僅可檢視權限。

    • Team Foundation Administrators、Project Collection Administrators 和 Project Administrators:所有 CSS 權限。 具有 [編輯執行個體層級資訊]、[編輯集合層級資訊] 或 [編輯專案層級資訊] 權限的任何使用者或群組,都可以建立及管理區域節點。

    • Project Collection Valid Users 和 Project Valid Users 的成員,或者具有 [檢視集合層級資訊] 或 [檢視專案層級資訊] 的任何使用者或群組,都可以檢視任何區域節點的權限。

  2. 對於可能需要刪除、新增或重新命名區域節點的任何手動新增的使用者或群組,請考慮將此權限新增給這些使用者或群組。

  3. 對於可能需要編輯區域節點下工作項目的任何手動新增的使用者或群組,請考慮將此權限新增給這些使用者或群組。

  4. 「管理測試套件」權限新增於 TFS 2013.3 更新中。 對於可能需要管理此區域節點下測試計劃或測試套件的任何手動新增使用者或群組,請考慮將這些權限新增給這些使用者或群組。

  5. 如果將 [檢視此節點中的工作項目] 設定為「拒絕」,使用者將無法查看這個區域節點中的任何工作項目。 「拒絕」將會覆寫任何隱含的允許,對於屬於系統管理群組 (例如 Team Foundation Administrators) 成員的帳戶也是如此。

工作項目追蹤的反覆項目層級權限

反覆項目層級權限會授與或限制對建立和管理反覆項目路徑的存取權。

您可以使用反覆運算的 TWA 管理頁面TFSSecurity 命令列工具,針對您新增至 Team 專案或集合中的使用者和群組,設定反覆運算層級權限。 所有權限的範圍都限於設定權限的特定反覆項目路徑。

某些工作項目追蹤作業需要多項權限。 例如,您需要有多項權限才能刪除節點。

請考慮將建立、編輯或刪除節點的權限授與 Team 系統管理員、Scrum Master 或 Team 負責人。

權限名稱

TFSSecurity 動作

TFSSecurity 命名空間

描述

Project Administrators (註 1)

建立子節點 (註 2)

CREATE_CHILDREN

反覆項目

可以建立反覆項目節點。 同時具有這項權限和 [編輯此節點] 權限的使用者可以移動或重新排列任何子反覆項目節點。

核取標記

刪除此節點 (註 2)

DELETE

反覆項目

針對另一個節點同時具有這項權限和 [編輯此節點] 權限的使用者可以刪除反覆項目節點,並將所刪除節點中的現有工作項目重新分類。 如果所刪除的節點具有子節點,則也會一併刪除那些節點。

核取標記

編輯此節點 (註 2)

GENERIC_WRITE

反覆項目

可以設定此節點的權限,以及重新命名反覆項目節點。

核取標記

檢視這個節點的權限 (註 3)

GENERIC_READ

反覆項目

可以檢視此節點的安全性設定。

核取標記

注意:

  1. 系統會將所有反覆項目權限授與 Team Foundation Administrators 和 Project Collection Administrators。 具有 [編輯執行個體層級資訊]、[編輯集合層級資訊] 或 [編輯專案層級資訊] 權限的任何使用者或群組,都可以建立及管理反覆項目節點。

  2. 對於可能需要刪除、加入或重新命名反覆項目節點的任何手動加入的使用者或群組,請考慮加入這個權限。

  3. Project Collection Valid Users 和 Project Valid Users 的成員,或者具有 [檢視集合層級資訊] 或 [檢視專案層級資訊] 的任何使用者或群組,都可以檢視任何反覆項目節點的權限。

Team Foundation 版本控制 (TFVC) 權限

您可以從 TWA 或 Team Explorer 中檔案或資料夾定義的內容功能表,或使用 tf 權限命令列工具,設定 TFVC 原始程式碼檔案和資料夾的權限。 這些權限僅會顯示於設定使用 TFVC 做為原始檔控制系統的 Team 專案。

在版本控制權限中,明確拒絕的優先順序高於系統管理員群組權限。

權限名稱

TFSSecurity 動作和 tf 權限

TFSSecurity 命名空間

描述

Contributors

組建系統管理員

Project Collection Build Service Accounts

Project Administrators (註 1)

管理標籤

tf: LabelOther

VersionControlItems

可以編輯或刪除其他使用者建立的標籤。

核取標記

簽入 (註 2)

tf: Checkin

VersionControlItems

可以簽入項目,以及修訂任何已認可的變更集註解。 暫止的變更會在簽入時認可。

核取標記 核取標記 核取標記 核取標記

簽入其他使用者的變更

tf: CheckinOther

VersionControlItems

可以簽入由其他使用者所做的變更。 暫止的變更會在簽入時認可。

核取標記 核取標記

簽出 (註 2)

tf: PendChange

VersionControlItems

可以簽出資料夾中的項目並對其做出暫止的變更。 暫止變更的範例包括加入、編輯、重新命名、刪除、取消刪除、分支以及合併檔案。 必須要簽入才能進行暫止的變更,因此使用者也必須有 [簽入] 權限才能與小組共用其變更。

核取標記 核取標記 核取標記 核取標記

標籤

tf: Label

VersionControlItems

可以標示項目。

核取標記 核取標記 核取標記 核取標記

鎖定

tf: Lock

VersionControlItems

可以鎖定及解除鎖定資料夾或檔案。

核取標記 核取標記 核取標記 核取標記

管理分支

tf: ManageBranch

VersionControlItems

可以將該路徑下的任何資料夾轉換成分支,還可以在分支上執行以下動作︰編輯屬性、重設父代,以及轉換成資料夾。具備此權限的使用者可以對分支再建立分支,但是必須具備目標路徑的 [合併] 權限才行。 使用者無法從他們沒有 [管理分支] 權限的分支建立分支。

核取標記 核取標記

管理權限 (註 3)

tf: AdminProjectRights

VersionControlItems

可以管理其他使用者對版本控制中資料夾和檔案的權限。

核取標記

合併 (註 4)

tf: Merge

VersionControlItems

可以將變更合併至這個路徑。

核取標記 核取標記 核取標記 核取標記

讀取

tf: Read

VersionControlItems

可以讀取檔案或資料夾的內容。 如果使用者具有資料夾的 [讀取] 權限,則就算使用者沒有開啟檔案的權限,還是可以查看資料夾的內容以及資料夾內檔案的屬性。

核取標記 核取標記 核取標記 核取標記

修訂其他使用者的變更 (註 5)

tf: ReviseOther

VersionControlItems

可以編輯已簽入檔案的註解,即使已簽入檔案的是其他使用者亦然。

核取標記

復原其他使用者的變更合併 (註 5)

tf: UndoOther

VersionControlItems

可以復原其他使用者所做的暫止變更。

核取標記

解除鎖定其他使用者的變更 (註 5)

tf: UnlockOther

VersionControlItems

可以解除鎖定由其他使用者鎖定的檔案。

核取標記

注意:

  1. 此外,系統會將 Project Collection Administrators 和 Project Collection Service Accounts 的所有權限都設定為「允許繼承」。

    系統會將僅可檢視權限 (「讀取」) 指派給 Readers 群組。

  2. 對於參與專案開發的任何手動新增使用者或群組 (亦即應能簽入和簽出變更、對資料夾中的項目做出暫止變更,或修改任何已認可的變更集註解的任何使用者),請考慮將這些權限新增給這些使用者或群組。

  3. 對於參與專案開發且必須要能建立私用分支的任何手動新增使用者或群組,除非專案採用限制較嚴格的開發做法,否則請考慮將這項權限新增給這些使用者或群組。

  4. 對於參與專案開發且必須要能合併原始程式檔的任何手動新增使用者或群組,除非專案採用限制較嚴格的開發做法,否則請考慮將這項權限新增給這些使用者或群組。

  5. 對於負責管理或監控專案,以及可能或必須變更已簽入檔案之註解 (即使已簽入檔案的是其他使用者亦然) 的任何手動新增使用者或群組,請考慮將這項權限新增給這些使用者或群組。

Git 儲存機制權限

您可以從內容功能表或 TWA 中的管理頁面,或是使用 TFSSecurity 命令列工具,來設定 Git 專案、儲存機制或分支的權限。 這些權限僅會顯示於設定使用 Git 做為原始檔控制系統的 Team 專案。

您可以為專案或儲存機制設定所有權限。 您可以為分支設定「管理」、「參與」和「重寫並終結記錄 (強制推送)」權限。 儲存機制和分支會從在專案層級進行的指派繼承權限。

根據預設,專案層級和集合層級的 Readers 群組僅具有讀取權限。

權限名稱

TFSSecurity 動作

TFSSecurity 命名空間

描述

Contributors

組建系統管理員

Project Administrators (註 1)

管理 (註 2)

管理

GitRepositories

可以重新命名儲存機制、新增其他儲存機制、驗證資料庫以及設定分支的權限。 具有這項權限的使用者如果具有 [強制] 權限,就可以刪除儲存機制。

在分支層級,可以為分支設定權限,並可刪除分支。

核取標記

分支建立

CreateBranch

GitRepositories

可以在儲存機制中發行分支。沒有這項權限並不會讓使用者無法在其本機儲存機制中建立分支,使用者只會無法發行本機分支至伺服器。根據預設,當使用者在伺服器上建立新分支時,即具備該分支的管理、參與和強制權限。

核取標記 核取標記 核取標記

參與

GenericContribute

GitRepositories

可以將所做的變更推送到儲存機制。

在分支層級,可以將其變更推送至分支。

核取標記 核取標記 核取標記

附註管理

ManageNote

GitRepositories

可以編輯 Git 附註並推送到儲存機制。如果具備「強制」權限,還可以從項目移除附註。如需有關附註的詳細資訊,請參閱此主題

核取標記 核取標記 核取標記

讀取

GenericRead

GitRepositories

可以複製、擷取、提取及探索儲存機制的內容,但是無法將任何所做的變更推送到儲存機制。

核取標記 核取標記 核取標記

重寫並終結記錄 (強制推送)

ForcePush

GitRepositories

可以強制執行更新,如此可能覆寫或捨棄所有使用者的認可。 刪除認可會變更記錄。 沒有這個權限時,使用者就無法捨棄其自身的變更。 重寫並終結記錄時也必然會刪除分支。

因為 [重寫] 並終結記錄會讓使用者變更記錄或從記錄移除認可,所以具有這個權限的使用者可以從伺服器刪除變更及其記錄。 使用者也可以修改伺服器儲存機制的認可記錄。

在分支層級,可以重寫並終結分支的記錄。

標記建立

CreateTag

GitRepositories

可以將標記推送到儲存機制,如果也具備「強制」權限,還可以編輯標記或從項目移除標記。

核取標記 核取標記 核取標記

注意:

  1. Project Collection Administrators 和 Project Collection Service Accounts 的所有權限都會設為 [允許繼承]。

    系統會將僅可檢視權限 (「讀取」) 指派給 Readers 和 Project Collection Build Service Accounts 群組。

  2. 對於參與專案開發的任何手動新增使用者或群組,請考慮將所有權限新增給這些使用者或群組。

Lab Management 權限

Visual Studio Lab Management 權限是虛擬機器、環境和其他資源特有的。 此外,會將該物件的所有權限自動授與 Lab Management 中物件的建立者。 您可以使用 TFSLabConfig permissions 命令列工具來設定這些權限。

根據預設,專案層級和集合層級的 Readers 群組僅具有檢視實驗室資源 (讀取) 權限。

權限名稱

TFSLabConfig 權限

描述

Contributors (註 1)

Project Administrators

Project Collection Build Service

Team Foundation Administrators、Project Collection Administrators

刪除環境和虛擬機器

刪除

可以刪除環境和範本。 會檢查正在刪除之物件的權限。

核取標記

核取標記

刪除實驗室位置

DeleteLocation

可以刪除 Lab Management  資源 (包括集合主機群組、集合程式庫共用、專案主機群組及專案程式庫共用) 的位置。 若要刪除位置,您必須具有該位置的 [刪除實驗室位置] 權限。

核取標記

核取標記

編輯環境和虛擬機器

Edit

可以編輯環境和範本。 會檢查正在編輯之物件的權限。

核取標記 核取標記 核取標記 核取標記

環境作業

EnvironmentOps

可以啟動、停止、暫停及管理快照,以及在環境上執行其他作業。

核取標記

核取標記

匯入虛擬機器

Create

可以從 VMM 程式庫共用匯入虛擬機器。這項權限與「寫入」不同,因為這只在 Lab Management 中建立物件,不會將任何項目寫入 Virtual Machine Manager 主機群組或程式庫共用。

核取標記 核取標記

核取標記

管理子權限

ManageChildPermissions

可以變更所有子 Lab Management 物件的權限。 例如,如果使用者具有 Team 專案主機群組的 [管理子權限],則使用者可以變更該 Team 專案主機群組下所有環境的權限。

核取標記

核取標記

管理實驗室位置

ManageLocation

可以編輯 Lab Management  資源 (包括集合主機群組、集合程式庫共用、專案主機群組及專案程式庫共用) 的位置。 若要編輯特定位置,您必須具有該位置的 [管理實驗室位置] 權限。 集合層級位置 (集合主機群組和集合程式庫共用) 的這個權限也允許您建立專案層級位置 (專案主機群組和專案程式庫共用)。

核取標記

核取標記

管理權限

ManagePermissions

可以編輯 Lab Management 物件的權限。 會檢查正在修改其權限之物件的權限。

核取標記

管理快照

ManageSnapshots

可以執行環境的所有快照管理工作,包括建立快照、還原成快照、重新命名快照、刪除快照,以及讀取快照。

核取標記 核取標記 核取標記 核取標記

暫停環境

Pause

可以暫停環境。

核取標記 核取標記 核取標記 核取標記

啟動

啟動

可以啟動環境。

核取標記 核取標記 核取標記 核取標記

停止

停止

可以停止環境。

核取標記 核取標記

核取標記

檢視實驗室資源

讀取

可以檢視各種 Lab Management  資源 (包括集合主機群組、專案主機群組及環境) 的資訊。 若要檢視特定實驗室資源的資訊,您必須具有該資源的 [檢視實驗室資源] 權限。

核取標記 核取標記 核取標記 核取標記

寫入環境和虛擬機器

Write

可以建立專案主機群組的環境。 具有專案程式庫共用之這個權限的使用者可以儲存環境和範本。

核取標記 核取標記 核取標記 核取標記

注意:

  1. 系統會將僅可檢視權限 (讀取) 指派給 Readers 群組。

Release Management 權限

在 Release Management 中,您在指派權限時可以依據指派給使用者的角色、指派給群組的明確功能權限,或指派給發行物件的特定執行個體的權限。 此外,您可以將核准者和驗證者指派給發行路徑內的特定階段,以確保所部署的應用程式符合品質標準。

  • **以角色為基礎:**這兩個角色是發行管理員和服務使用者。 發行管理員可以管理所有功能,而不論他們所連結的群組為何。 服務使用者相當於服務帳戶角色。 若要限制使用者的存取權,不要將其指派給任何角色。 相反地,要讓他們繼承指派給他們所連結群組的權限。

  • **群組:**若要限制對特定功能區域的存取,您要指派該群組所允許的權限。 該群組的成員會繼承指派給該群組的權限。 若要限制存取權,您必須變更授與 [Everyone] 群組的權限,根據預設該群組擁有所有權限。

  • **物件:**除了角色和群組之外,您還可以限制對發行路徑和發行範本的安全性的編輯、檢視和管理存取權。 您可以透過發行路徑的 [安全性] 索引標籤以及發行範本的 [屬性] 頁來執行這項作業。

  • **核准者和驗證者:**核准者和驗證者必須在發行的每個步驟或階段進行簽核。 當您在設定發行路徑時要指派核准者和驗證者。 在 Release Management 中,所有核准者和驗證者都必須加入做為使用者或群組成員。

Release Management 會定義一個預設群組:[Everyone],您加入至 Release Management 的所有帳戶都是這個群組的成員。 此外,還會將特定權限配置給發行管理員和服務使用者角色。

您要從 Release Management 用戶端來管理 Release Management 權限。 您可以開啟列在「設定位置」欄中的子功能表來設定這些權限。 若要進一步了解如何設定這些權限,請參閱將使用者和群組以及控制存取加入至 Release Management. 若要安裝 Release Management,請移至這裡

權限名稱或使用者角色

設定位置

描述

每個人

發行管理員角色

服務使用者角色

發行管理員

[管理] > [我的設定檔和新使用者] 頁面

可以管理 Release Management 伺服器、管理 TFS 和 Release Management 之間的連接,以及管理以下物件:

  • 發行路徑中所定義的發行路徑和階段資訊。

  • 發行範本,包括針對發行範本中所定義的所有階段加入自訂工具和動作,以及加入部署序列和組態變數。

  • 所有功能區域的安全性。

請考慮新增︰管理 Release Management 伺服器的使用者。

核取標記

服務使用者

[管理] > [我的設定檔和新使用者] 頁面

可以管理部署或 Web 應用程式集區。

請考慮新增︰指派於執行伺服器應用程式集區、部署代理程式的 Windows 服務,以及 Windows 服務之 Release Management 監控的服務帳戶身分識別。

核取標記

檢視

[設定應用程式] > [發行範本] > [屬性]

[設定路徑] > [發行路徑]

可以檢視發行範本或發行路徑,並可將特定發行範本和發行路徑的檢視存取權選擇性指派給特定使用者。

請考慮加入︰需要檢視 (但不需要編輯) 特定發行範本或發行路徑的使用者或群組。

核取標記 核取標記 核取標記

Edit

[設定應用程式] > [發行範本] > [屬性]

[設定路徑] > [發行路徑]

可以編輯發行範本或發行路徑,並選擇哪些使用者可以編輯特定發行範本以及特定使用者的發行路徑。

請考慮加入︰需要編輯特定發行範本或發行路徑的使用者或群組。

核取標記 核取標記 核取標記

可發行

[設定應用程式] > [發行範本] > [屬性]

可以啟始發行,並指定哪些使用者能從他們可以檢視的發行範本啟始發行。

請考慮加入︰啟始發行的使用者或群組。 您可以藉由使用這個權限來指定哪些使用者能夠從他們可以檢視的那些發行範本來啟始發行。

核取標記 核取標記 核取標記

管理安全性

[設定應用程式] > [發行範本] > [屬性]

[設定路徑] > [發行路徑]

可以管理哪些群組可具備檢視、編輯或管理發行範本或發行路徑的權限。

請考慮加入︰管理哪些群組可具有檢視、編輯或管理發行範本或發行路徑之權限的使用者或群組。 發行範本和發行路徑的建立者可以藉由這個權限來控制誰能夠檢視、編輯或發行特定範本或路徑。

核取標記 核取標記 核取標記

可建立發行範本

[設定應用程式] > [發行範本]

可以定義發行範本。

若沒有這個權限,[設定應用程式] > [發行範本] 索引標籤上的 [新增] 按鈕會隱藏。

請考慮新增︰需要建立、啟動或核准發行的使用者或群組。

核取標記 核取標記 核取標記

可建立發行路徑

[設定路徑] > [發行路徑]

可以定義發行路徑的階段、核准流程和安全性。

若沒有這個權限,[設定路徑] > [發行路徑] 索引標籤上的 [新增] 按鈕會隱藏。

請考慮加入︰需要管理用於部署應用程式中的發行組態之使用者或群組。

核取標記 核取標記 核取標記

可管理環境

[設定路徑] > [環境]

可以定義組成發行路徑的階段,以及每個階段的伺服器和安全性。

若沒有這個權限,[設定路徑] > [環境] 索引標籤會隱藏。

請考慮加入︰需要管理用於定義發行路徑之伺服器和環境的使用者或群組。

核取標記 核取標記 核取標記

可管理伺服器

[設定路徑] > [伺服器]

可以定義在系統中部署應用程式所用的發行路徑。 這個權限支援對定義伺服器的存取,所定義的伺服器是用於將應用程式部署至測試、階段和生產環境伺服器。

若沒有這個權限,[設定路徑] > [伺服器] 索引標籤會隱藏。

請考慮加入︰定義在系統中部署應用程式所用發行路徑的使用者或群組。 這個權限支援對定義伺服器的存取,所定義的伺服器是用於將應用程式部署至測試、階段和生產環境伺服器。

核取標記 核取標記 核取標記

可管理詳細目錄

[詳細目錄] > [動作和工具]

可以定義在系統中部署應用程式所用的自訂工具或動作。 他們可以藉由使用這個權限來檢視、編輯和建立動作和工具。 請參閱 為 Release Management 部署應用程式的發行動作

若沒有這個權限,則 [詳細目錄] 索引標籤會是隱藏狀態。

請考慮加入︰定義在系統中部署應用程式所用自訂工具或動作的使用者或群組。 他們可以藉由使用這個權限來檢視、編輯和建立用於部署應用程式的動作和工具

核取標記 核取標記 核取標記

可在動作和元件中使用自訂工具

[設定應用程式] > [元件] > [部署]

[設定應用程式] > [發行範本] > [元件] > [部署]

在選取 [沒有工具] 時,可以編輯 [命令] 和 [引數] 欄位。

若沒有這個權限,使用者就無法編輯這些欄位。

請考慮加入︰定義發行路徑或發行範本,或是將啟始發行之人員的使用者或群組。 在選取了 [沒有工具] 時,這可以讓他們編輯 [命令] 和 [引數] 欄位。

核取標記 核取標記 核取標記

編輯值和目標伺服器

[設定應用程式] > [發行範本]

可以編輯特定發行或階段的部署序列和組態變數。

如果沒有這個權限,階段資訊就是唯讀的。

請考慮加入︰定義發行路徑或發行範本,或是將啟始發行之人員的使用者或群組。 這可以讓他們編輯特定發行或階段的部署序列和組態變數。

核取標記 核取標記 核取標記

編輯核准和環境

[設定路徑] > [發行路徑] > [階段]

可以編輯特定階段的核准和環境。

如果沒有這個權限,階段資訊就是唯讀的。

請考慮加入︰定義發行路徑或發行範本的使用者或群組。 這可以讓他們編輯特定階段的核准和環境。若沒有這個權限,階段資訊會是唯讀的。

核取標記 核取標記 核取標記

問與答

問︰權限和存取層級的差別為何?

**答︰**TFS 中的某些功能僅供具備該功能適當授權層級的使用者使用。 這些功能的存取不是由權限來控制,而是取決於 Team Web Access 之授權群組中的成員資格。 請參閱 變更存取層級

問︰系統指派給小組系統管理員的權限為何?

**答︰**系統會授與小組系統管理員許多角色權限,此處有詳細說明。

問︰哪些權限與警示相關聯?

**答:**沒有與您可以透過 TWA 訂閱的警示相關聯的 UI 權限。

根據預設,所有 Contributors 都可以訂閱給自己的警示。 Project Collection Administrators 和 Project Administrators,或者具有 [編輯集合層級資訊] 或 [編輯專案層級資訊] 的使用者或群組成員,則可以為他人或小組設定警示。

您可以在集合層級使用 TFSSecurity 管理警示權限。 Team Foundation 事件服務的設計更有彈性且可擴充。

TFSSecurity 動作

TFSSecurity 命名空間

描述

Project Collection Administrators 和 Project Collection Service Accounts

CREATE_SOAP_SUBSCRIPTION

EventSubscription

可以建立以 SOAP 為基礎的 Web 服務訂閱。

核取標記

GENERIC_READ

EventSubscription

可以檢視為 Team 專案定義的訂閱事件。

核取標記

GENERIC_WRITE

EventSubscription

可以為其他使用者或小組建立警示。

核取標記

UNSUBSCRIBE

EventSubscription

可以從事件訂閱取消訂閱。

核取標記

問:其他哪些功能或工具會參考群組?

**答︰**以下功能會參考內建和自訂 (亦即您所建立的) TFS 群組︰

問:什麼是有效使用者?如何填入 Valid User 群組?

**答︰**當您直接或透過 Windows 群組將使用者帳戶加入 TFS 群組時,這些使用者會自動新增至其中一個 Valid User 群組。

  • Server\Team Foundation Valid Users︰新增至伺服器層級群組的所有成員。

  • ProjectCollectionNamr\Project Collection Valid Users︰新增至專案集合層級群組的所有成員。

  • TeamProjectName\Project Valid Users︰新增至專案層級群組的所有成員。

系統指派給這些群組的預設權限主要限於讀取存取權,例如︰[檢視組建資源]、[檢視專案層級資訊] 及 [檢視集合層級資訊]。

這表示您新增至某個 Team 專案的所有使用者都可以檢視集合內其他 Team 專案中的物件。 如果您需要限制檢視存取權,則可以透過區域路徑節點設定限制。 如需其他方法,請參閱限制存取函式和工作

如果您將其中一個 Valid Users 群組的 [檢視執行個體層級資訊] 權限移除或設為 [拒絕],該群組中的使用者將無法存取 Team 專案、集合或部署 (視您設定的群組而定)。

此外,VALIDUSER 項目可用於允許或限制工作項目追蹤的存取權

問︰我如何管理存取報告或專案入口網站的權限?

**答:**如需如何在 TFS 中設定使用者的 Reporting Services 和 SharePoint 產品 之權限的相關資訊,請參閱設定 Team 專案集合的系統管理員權限設定 Team Foundation Server 的系統管理員權限

如需如何建立自訂群組、設定權限以控制資源存取,以及其他選項的逐步說明範例,請參閱限制存取函式和工作.