Team Foundation Server 使用權限

更新:2007 年 11 月

使用權限決定了使用者動作 (如管理工作區和建立專案) 的授權。當您在 Team Foundation Server 中建立專案時,不論您選擇哪一種流程範本,都會為該專案建立四個預設群組。根據預設,每一個預設群組都會定義一組使用權限,用來管理這些群組的成員授權可以執行的動作。

  • Project Administrator

  • Contributor

  • Reader

  • Build Services

若要管理預設群組和建立自訂群組,系統管理員必須了解使用權限的意義以及明確設定使用權限的安全性含意。

注意事項:

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

使用權限設定

Team Foundation Server 中的使用權限有兩種明確的授權設定:[拒絕] 和 [允許]。另外還有一種隱含授權,不會將使用權限設為 [允許],也不會將使用權限設為 [拒絕]。這種授權是隱含的 [拒絕] 設定,稱為「尚未設定」(Unset)。

拒絕

[拒絕] 即拒絕授權讓使用者或群組執行在使用權限描述中所指定的動作。[拒絕] 是 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 中的使用權限是繼承而來的。例如,如果使用者屬於專案中的兩個自訂群組,其中一個群組將某項使用權限明確設為 [拒絕],而另一個群組尚未設定該使用權限,則使用者無權執行該使用權限所控制的動作,這是由於使用者會同時繼承這兩個群組的使用權限,而 [拒絕] 優先於尚未設定的使用權限。

注意事項:

Team Foundation Server 中不會繼承在 Team Foundation Server 外部 (如 Windows SharePoint Services 中) 設定的使用權限。這不在本主題的討論範圍。

某些授權設定會優先於其他的授權設定。在 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 總管中的伺服器,然後按一下 [安全性],就可以在 Team Foundation Server 中設定這些使用權限。您可以使用 TFSSecurity 命令列公用程式來設定這些使用權限,但具有 tf: 指定註明者除外。針對具有 tf: 指定的命令列公用程式,請使用 tf 原始檔控制命令列公用程式的 Permission 命令來設定使用權限。如需詳細資訊,請參閱TFSSecurity 命令列公用程式命令Permission 命令

使用權限名稱

命令列中的名稱

說明

管理擱置的變更

tf: AdminShelvesets

具有這個使用權限的使用者可以刪除由其他使用者建立的擱置集。

管理倉儲

ADMINISTER_WAREHOUSE

具有這個使用權限的使用者可以使用 WarehouseController.asmx Web 服務的 ChangeSetting Web 方法來變更倉儲設定。例如,您可以允許使用者設定計算 OLAP Cube 的更新間隔時間。

管理工作區

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。

注意事項:

您無法移除預設的伺服器群組 (例如 [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 總管中的專案,並按一下 [Team 專案設定],然後按一下 [安全性],就可以在 Team Foundation Server 中設定這些使用權限。您也可以使用 TFSSecurity 命令列公用程式來設定這些使用權限。

使用權限名稱

命令列中的名稱

說明

刪除此專案

DELETE

具有這項使用權限的使用者可以從 Team Foundation Server 中刪除他們擁有此使用權限的專案。

編輯專案層級資訊

GENERIC_WRITE

具有這項使用權限的使用者可以編輯 Team Foundation Server 上使用者和群組的專案層級使用權限。

發行測試結果

PUBLISH_TEST_RESULTS

具有這個使用權限的使用者可以在 Team 專案入口網站上加入和移除測試結果,以及加入或移除測試回合。

檢視專案層級資訊

GENERIC_READ

具有這個使用權限的使用者可以檢視專案層級的群組成員資格以及這些專案使用者的使用權限。

組建層級使用權限

組建 (Build) 層級的使用權限是針對單一專案的使用者和群組所設定的。以滑鼠右鍵按一下 Team 總管中的專案,並按一下 [Team 專案設定],然後按一下 [安全性],就可以設定這些使用權限。此外,您也可以使用 TFSSecurity 命令列公用程式來設定這些使用權限。

使用權限名稱

命令列中的名稱

說明

管理組建

ADMINISTER_BUILD

具有這個使用權限的使用者可以刪除已完成的組建 (Build),以及停止目前進行中的組建。

編輯組建品質

EDIT_BUILD_STATUS

具有這項使用權限的使用者可以透過 Team Foundation Build 的使用者介面,加入組建品質的相關資訊。這項資訊會儲存在 Team Foundation Build 的資料庫存放區。

啟動組建

START_BUILD

具有這項使用權限的使用者可以透過 Team Foundation Build 的介面或從命令列啟動組建。設定組建時也需要用到這項使用權限,如此才能一直保留組建。

寫入組建作業存放區

UPDATE_BUILD

這項權限必須授與執行 Build Service 的帳戶,才能更新 Team Foundation Build 資料庫存放區。這個使用權限只應該指派給服務帳戶而非個別使用者。

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

區域層級的使用權限是針對單一專案的使用者和群組所設定的。以滑鼠右鍵按一下 Team 總管中的專案,並按一下 [區域和反覆項目],然後按一下 [區域] 索引標籤上的 [安全性],就可以設定這些使用權限。此外,您也可以使用 TFSSecurity 命令列公用程式來設定這些使用權限。

注意事項:

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

使用權限名稱

命令列中的名稱

說明

建立並排列子節點的順序

CREATE_CHILDREN

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

刪除此節點

DELETE

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

編輯此節點

GENERIC_WRITE

具有這個使用權限的使用者可以重新命名區域節點。

編輯此節點中的工作項目

WORK_ITEM_WRITE

具有這個使用權限的使用者可以編輯此區域節點中的工作項目。

檢視此節點

GENERIC_READ

具有這個使用權限的使用者可以檢視此節點的安全性設定。

檢視此節點中的工作項目

WORK_ITEM_READ

具有這個使用權限的使用者可以檢視,但不能編輯或變更此區域節點中的工作項目。

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

反覆項目層級使用權限是專為單一專案的使用者和群組所設定。以滑鼠右鍵按一下 Team 總管中的專案,並按一下 [區域和反覆項目],然後按一下 [反覆項目] 索引標籤上的 [安全性],就可以設定這些使用權限。此外,您也可以使用 TFSSecurity 命令列公用程式來設定這些使用權限。

注意事項:

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

使用權限名稱

命令列中的名稱

說明

建立並排列子節點的順序

CREATE_CHILDREN

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

刪除此節點

DELETE

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

編輯此節點

GENERIC_WRITE

具有這項使用權限的使用者可以重新命名反覆項目節點。

檢視此節點

GENERIC_READ

具有這個使用權限的使用者可以檢視此節點的安全性設定。

原始檔控制使用權限

原始檔控制使用權限是針對原始程式碼檔案和資料夾所設定的。以滑鼠右鍵按一下 [原始檔控制總管] 中的資料夾或檔案、按一下 [屬性],並在 [安全性] 索引標籤上選取想要變更使用權限的使用者或群組,然後編輯列在 [使用權限] 中的使用權限,就可以設定這些使用權限。您也可以使用 tf 原始檔控制命令列公用程式來設定這些使用權限。

使用權限名稱

命令列中的名稱

說明

讀取

tf: Read

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

簽出

tf: PendChange

具有這個使用權限的使用者可以簽出資料夾中的項目並對其進行暫止的變更。暫止變更的範例包括:加入、重新命名、刪除、取消刪除、分支及合併檔案。

簽入

tf: Checkin

具有這個使用權限的使用者可以簽入項目,以及修訂任何已認可的變更集註解。暫止的變更會在簽入時認可。

標籤

tf: Label

具有這個使用權限的使用者可以為項目加上標籤。

鎖定

tf: Lock

具有這個使用權限的使用者可以鎖定及解除鎖定資料夾或檔案。

修訂其他使用者的變更

tf: ReviseOther

具有這個使用權限的使用者可以在簽入的檔案中編輯註解,即使是由其他使用者簽入檔案亦然。

解除鎖定其他使用者的變更

tf: UnlockOther

具有這個使用權限的使用者可以解除鎖定由其他使用者鎖定的檔案。

復原其他使用者的變更

tf: UndoOther

具有這個使用權限的使用者可以復原由其他使用者所做的暫止的變更。

管理標籤

tf: LabelOther

具有這個使用權限的使用者可以編輯或刪除由其他使用者建立的標籤。

管理安全性設定

tf: AdminProjRights

具有這個使用權限的使用者可以在這些檔案和資料夾上設定使用權限。

簽入其他使用者的變更

tf: CheckinOther

具有這個使用權限的使用者可以簽入由其他使用者所做的變更。暫止的變更將會在簽入時認可。

請參閱

工作

HOW TO:設定 Team Foundation Server 的系統管理員使用權限

HOW TO:設定 Team Foundation Server 的專案組長使用權限

HOW TO:設定 Team Foundation Server 的參與者使用權限

HOW TO:設定 Team Foundation Server 的讀取者使用權限

概念

Team Foundation Server 預設群組、使用權限和角色

使用 Team Foundation 工作項目

其他資源

TFSSecurity 命令列公用程式命令

Team Foundation 版本控制命令列參考

管理使用者和群組

管理使用權限