Team Foundation Server 權限

權限決定了是否授權用戶進行工作區管理和項目創建等操作。在 Team Foundation Server 中創建項目時,無論您選擇哪個過程模板,都會爲項目創建四個默認組。默認情況下,爲這些組各自定義了一組權限,這些權限決定了組成員可以執行的操作。

  • Project Administrator

  • Contributor

  • Reader

  • Build Services。

要管理默認組並創建自定義組,管理員必須瞭解權限的含義以及顯式設置權限引起的安全問題。

Note注意

本主題不討論 Windows SharePoint Services 或 SQL Reporting Services 的權限。本主題只討論 Team Foundation Server 中設置的權限。

權限設置

Team Foundation Server 中的權限有兩種顯式授權設置:“拒絕”和“允許”。還有一種隱式授權,它既不將權限設置爲“允許”,也不將其設置爲“拒絕”。該授權是一種隱式拒絕設置,又稱爲“未設置”。

拒絕

“拒絕”不允許授權用戶或組執行權限說明中提到的操作。“拒絕”是 Team Foundation Server 中最強大的權限設置。如果用戶所屬的 Team Foundation Server 組將特定權限設置爲“拒絕”,那麼即使用戶所屬的另一個組將該權限設置爲“允許”,該用戶仍無法執行此功能。此規則的唯一例外是用戶屬於項目的“Project Administrators”組的成員或者屬於“Team Foundation Administrators”組的成員的情況。如果用戶是項目的“Project Administrators”組的成員,則該組的權限將覆蓋該用戶在項目中的顯式“拒絕”。同樣,如果用戶是“Team Foundation Administrators”組的成員,則該組的權限將覆蓋該用戶在 Team Foundation Server 中的顯式“拒絕”。

允許

“允許”則允許授權用戶或組執行權限說明中提到的操作。“允許”是 Team Foundation Server 中的第二大權限設置並且設置頻率最高,這是因爲不將權限顯式設置爲“允許”,用戶或組就無法在 Team Foundation Server 中執行任何操作。

未設置

默認情況下,Team Foundation Server 中的多數權限既沒有設置爲“拒絕”,也沒有設置爲“允許”。權限處於“未設置”狀態,它隱式拒絕授權用戶和組執行權限說明中指定的操作。但是,因爲權限既沒有顯式設置爲“拒絕”,也沒有顯式設置爲“允許”,它可以從用戶或組所屬的其他組繼承授權。

繼承

當用戶或組的權限爲“未設置”時,因爲 Team Foundation Server 中的權限是可繼承的,所以用戶或組可能受到其所屬組權限的顯式設置的影響。如果用戶所屬的組已經顯式設置權限,而在用戶所屬的另一個組未設置該權限,則用戶從第一個組繼承該權限的“允許”或“拒絕”設置。

Note注意

在 Team Foundation Server 以外,如 Windows SharePoint Services 中設置的權限,不會在 Team Foundation Server 中繼承並且本主題不予討論。

某些授權設置優先於其他授權設置。在 Team Foundation Server 中,“拒絕”權限優先於包括“允許”在內的所有其他權限設置。例如,用戶可能屬於一個項目中的兩個組。對於其中一個組,“發佈測試結果”權限設置爲“拒絕”;而另一個組則將此權限設置爲“允許”。“拒絕”設置優先級更高,用戶無權發佈測試結果。此規則的唯一例外是用戶屬於項目的“Project Administrators”組的成員或者屬於“Team Foundation Administrators”組的成員的情況。如果用戶是項目的“Project Administrators”組的成員,則該組的權限將覆蓋該用戶在項目中的顯式“拒絕”。同樣,如果用戶是“Team Foundation Administrators”組的成員,則該組的權限將覆蓋該用戶在 Team Foundation Server 中的顯式“拒絕”。

通過 Team Foundation Server 用戶界面和命令行設置權限

許多要爲 Team Foundation Server 設置的權限是通過 Team Foundation Server 用戶界面控制的。您可以根據服務器(服務器級別權限)或項目(項目級別權限)設置這些權限。您還可以根據項目爲查看工作項以及與工作項交互設置區域級別權限。有關默認情況下爲哪些用戶設置哪些權限,以及爲 MSF for Agile Software Development 或 MSF CMMI Process Improvement 組設置哪些權限的更多信息,請參見 Team Foundation Server 默認組、權限和角色。有關如何爲用戶和組設置權限的更多信息,請參見 管理用戶和組管理權限。有關管理工作項的更多信息,請參見 管理 Team Foundation 工作項

服務器級別權限

服務器級別權限並非特定於某個項目,而是根據服務器設置的。您只能爲服務器級別用戶和組(如 Team Foundation Administrators)、已添加到 Team Foundation 服務器上的服務器級別的項目級別組以及創建並添加到服務器級別的自定義組設置這些權限。您可以通過在 Team Foundation Server 中右擊 團隊資源管理器 中的服務器,然後單擊“安全”設置這些權限。您可以使用 TFSSecurity 命令行實用工具設置這些權限,帶有 tf: 標識的權限除外。可使用源代碼管理的 tf 命令行實用工具的 Permission 命令設置這些權限。有關更多信息,請參見 TFSSecurity 命令行實用工具命令Permission 命令

權限名稱命令行中的名稱說明

管理擱置的更改

tf:AdminShelvesets

具有該權限的用戶可以刪除其他用戶創建的擱置集。

管理倉庫

ADMINISTER_WAREHOUSE

具有該權限的用戶可以使用 WarehouseController.asmx Web 服務的 ChangeSetting Web 方法更改倉庫設置。例如,您可以允許用戶設置計算 OLAP 多維數據集的更新時間間隔。

管理工作區

tf:AdminWorkspaces

具有該權限的用戶可以爲其他用戶創建工作區並刪除其他用戶創建的工作區。

創建工作區

tf:CreateWorkspace

具有該權限的用戶可以創建源代碼管理工作區。

創建新項目

CREATE_PROJECTS

具有該權限的用戶可以在 Team Foundation Server 中創建新項目。爲了成功創建新項目,這些用戶必須是 Windows SharePoint Server 中的“SharePoint Central Admins”組的成員,並且在 SQL Reporting Services 中有“內容管理員”權限。

編輯服務器級的信息

GENERIC_WRITE

tf:AdminConfiguration

tf:AdminConnections

有此權限的用戶可編輯 Team Foundation Server 上用戶和組的服務器級別的權限。他們可以從 Team Foundation Server 上添加或移除服務器級別的 Team Foundation Server 應用程序組。當通過菜單設置時,“編輯服務器級別信息”權限還將隱式允許用戶修改源代碼管理權限。若要從命令行授予上述所有權限,必須使用 tf.exe Permission 命令授予 AdminConfigurationAdminConnections 權限,以及 GENERIC_WRITE。

Note注意

無法刪除 Team Foundation Administrators 等默認服務器組。

改變跟蹤設置

DIAGNOSTIC_TRACE

具有該權限的用戶可以更改跟蹤設置,以收集有關 Team Foundation Server Web 服務的更詳細的診斷信息。有關跟蹤的更多信息,請參見 Team Foundation Server 的跟蹤設置

觸發事件

TRIGGER_EVENT

具有該權限的用戶可以在 Team Foundation Server 中觸發項目警報事件。該權限只應指派給服務帳戶。

管理過程模板

MANAGE_TEMPLATE

具有該權限的用戶可以從 Team Foundation Server 下載、向其上載、創建和編輯過程模板。

查看服務器級別信息

GENERIC_READ

具有該權限的用戶可以查看服務器級別的組成員資格以及那些用戶的權限。

查看系統同步信息

SYNCHRONIZE_READ

有此權限的用戶可觸發同步事件。該權限只應指派給服務帳戶。

項目級別權限

項目級別權限特定於單個項目的用戶和組。您可以通過在 Team Foundation Server 中右擊 團隊資源管理器 中的項目,然後單擊“安全”設置這些權限。另外,您還可以使用 TFSSecurity 命令行實用工具設置這些權限。

權限名稱命令行中的名稱說明

管理版本

ADMINISTER_BUILD

具有該權限的用戶可以刪除完成的生成並停止正在進行的生成。

刪除此項目

DELETE

有此權限的用戶可以從 Team Foundation Server 刪除他們有權刪除的項目。

編輯版本質量

EDIT_BUILD_STATUS

具有該權限的用戶可以通過 Team Foundation Build 用戶界面添加版本質量的相關信息。該信息存儲在 Team Foundation Build 數據庫存儲區中。

編輯項目級信息

GENERIC_WRITE

有此權限的用戶可編輯 Team Foundation Server 上用戶和組的項目級別的權限。

發佈測試結果

PUBLISH_TEST_RESULTS

具有該權限的用戶可以添加或移除團隊項目門戶的測試結果,也可以添加或移除測試運行。

啓動版本

START_BUILD

具有該權限的用戶可以通過 Team Foundation Build 用戶界面或從命令行啓動版本。

查看項目級信息

GENERIC_READ

具有該權限的用戶可以查看項目級別的組成員資格以及那些項目用戶的權限。

寫入版本操作存儲區

UPDATE_BUILD

該權限必須授予運行生成服務所使用的帳戶,以更新 Team Foundation Build 數據庫存儲區。該權限只應指派給服務帳戶,不能指派給單個用戶。

工作項跟蹤區域級別權限

區域級別權限特定於單個項目的用戶和組。您可以通過以下方法設置這些權限:右擊 團隊資源管理器 中的項目,然後單擊“區域和迭代”,然後在“區域”選項卡上單擊“安全”。另外,您還可以使用 TFSSecurity 命令行實用工具設置這些權限。

Note注意

某些工作項跟蹤操作需要多種權限,如刪除節點。

權限名稱命令行中的名稱說明

創建子節點並對子節點排序

CREATE_CHILDREN

有此權限的用戶可以創建新的區域節點。有此權限以及“編輯此節點”權限的用戶可移動或重新排序任何子區域節點。

刪除此節點

DELETE

有此權限以及對另一個節點的“編輯此節點中的工作項”權限的用戶可刪除區域節點並對所刪節點中的現有工作項重新分類。刪除的父節點下的任何子節點將同時刪除。

編輯此節點

GENERIC_WRITE

具有該權限的用戶可以重命名區域節點。

編輯此節點中的工作項

WORK_ITEM_WRITE

具有該權限的用戶可以編輯此區域節點中的工作項。

查看此節點

GENERIC_READ

具有該權限的用戶可以查看此節點的安全設置。

查看此節點中的工作項

WORK_ITEM_READ

具有該權限的用戶可以查看,但不能編輯或更改此區域節點中的工作項。

源代碼管理權限

源代碼管理權限特定於源代碼文件和文件夾。可以通過以下方法設置這些權限:右擊源代碼管理資源管理器中的文件夾或文件,單擊“屬性”,在“安全”選項卡上選擇要更改權限的用戶或組,然後編輯“權限”中列出的權限。您也可以使用 tf(源代碼管理命令行實用工具)設置這些權限。

權限名稱命令行中的名稱說明

讀取

tf:Read

具有該權限的用戶可以讀取文件或文件夾的內容。如果用戶對文件夾有“讀”權限,則即使用戶沒有打開文件的權限,用戶仍可以看到文件夾內容以及文件夾中的文件的屬性。

簽出

tf:PendChange

具有該權限的用戶可以執行簽出並對文件夾中的項執行掛起更改。掛起更改的示例包括添加、重命名、刪除、撤消刪除、分支和合並文件。

簽入

tf:Checkin

具有該權限的用戶可以簽入項並修訂任何提交的變更集註釋。簽入時將提交掛起的更改。

標籤

tf:Label

具有該權限的用戶可以對項進行標籤。

鎖定

tf:Lock

具有該權限的用戶可以鎖定或取消鎖定文件夾或文件。

修訂其他用戶的更改

tf:ReviseOther

即使其他用戶簽入了文件,具有該權限的用戶仍可以編輯該簽入文件上的註釋。

取消鎖定其他用戶的更改

tf:UnlockOther

具有該權限的用戶可以取消鎖定其他用戶鎖定的文件。

撤消其他用戶的更改

tf:UndoOther

具有該權限的用戶可以撤消其他用戶所做的掛起的更改。

管理標籤

tf:LabelOther

具有該權限的用戶可以編輯或刪除其他用戶創建的標籤。

操作安全設置

tf:AdminProjRights

具有該權限的用戶可以設置這些文件和文件夾的權限。

簽入其他用戶的更改

tf:CheckinOther

具有該權限的用戶可以簽入其他用戶所做的更改。簽入時將提交掛起的更改。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章