Справочник по разрешениям Team Foundation Server
Разрешения определяют, что могут и чего не могут делать пользователи. Чтобы пользователи могли иметь доступ к ресурсам и командным проектам в Team Foundation Server (TFS), их необходимо добавить в командный проект или группу TFS. Общие сведения о том, как TFS управляет членством, разрешениями и доступом, см. в разделе Управление пользователями и группами в TFS.
Этот раздел описывает разрешения TFS и их назначение по умолчанию для всех встроенных групп TFS. Он также описывает средства, которые можно использовать для задания разрешений. Есть три категории встроенных групп, четыре уровня разрешений и пять состояний разрешений. Доступ каждого из пользователей к функциональной задаче зависит от явного или унаследованного состояния разрешений, назначенного самому пользователю или группе, к которой он относится.
Содержание раздела
|
![]() |
Чтобы назначить разрешения для Продукты SharePoint или SQL Server Reporting Services, см. разделы Добавление пользователей в командные проекты и Предоставление разрешений для просмотра и создания отчетов в TFS.
Новые возможности разрешений
Дополнения и изменения модели разрешений TFS указаны в следующей таблице. Они зависят от версии системы, установленной на сервере уровня приложений.
Версия TFS |
Новые и измененные разрешения |
---|---|
TFS 2013,3 |
Добавлено разрешение Управление наборами тестирования, а разрешение Управление планами тестирования повторно ограничено только планами тестирования. Эти разрешения задаются для пути области. Раньше оно покрывало управление разрешениями как планов тестирования, так и наборов тестов. |
TFS 2013,2 |
Добавлены Разрешения на добавление тегов. |
TFS 2013 |
Добавлены Разрешения репозитория Git. |
Средства задания разрешений
Для задания разрешений можно использовать средства из следующей таблицы. В зависимости от того, где задаются разрешения (на сервере, в коллекции или проекте), используются разные средства. Team Web Access (TWA) используется для задания большинства разрешений пользователей и групп для доступа к командному проекту.
Уровень разрешений |
Страница администрирования TWA или безопасность на уровне объектов |
Team Explorer (примечание 1) |
Консоль администрирования Team Foundation |
Программа командной строки TFSSecurity |
Программа командной строки Tf |
Программа командной строки TFSLabConfig |
---|---|---|---|---|---|---|
Уровень сервера |
||||||
Уровень коллекции |
||||||
Уровень проектов и тестов |
||||||
Уровень сборки |
||||||
Запрос рабочего элемента |
||||||
Добавление тегов |
||||||
Уровень области для отслеживания рабочих элементов |
||||||
Уровень итераций для отслеживания рабочих элементов |
||||||
Team Foundation (подсистема контроля версий) |
||||||
Репозиторий Git |
||||||
Lab Management |
||||||
Управление выпусками (2) |
Примечания
Некоторые варианты разрешений, доступные в Team Explorer, открывают пользовательский интерфейс Team Web Access.
При добавлении в развертывание средств Release Management разрешениями можно управлять с помощью групп, определенных в Release Management, TFS или Active Directory. Управление разрешениями осуществляется с помощью клиента управления выпусками.
Еще одно средство управления членством пользователей в группах —средство TFSAdmin из CodePlex.
Программы командной строки, пространства имен и имена разрешений
При использовании программы командной строки TFSSecurity для управления разрешениями нужно указать пространство имен и имя разрешения. Они указаны в разделах ниже. Есть две группы пространств имен: коллекция проектов и сервер. Воспользуйтесь командой TFSSecurity /a для перечисления пространств имен. Чтобы получить набор разрешений, которые можно установить в пространстве имен, используйте TFSSecurity /a Namespace /collection:CollectionNameURL
Пространства имен коллекций проектов |
Пространства имен серверов |
---|---|
TFSSecurity /a /collection:CollectionNameURL
|
TFSSecurity /a /server:ServerNameURL
|
Встроенные группы TFS
При установке TFS создаются четыре группы на уровне сервера. При создании коллекции проектов на уровне коллекции создаются семь групп, а для каждого создаваемого командного проекта на уровне этого проекта создаются шесть групп. Каждая из этих групп связана с набором разрешений по умолчанию. Вы не можете удалить группы уровня сервера по умолчанию, например «Администраторы Team Foundation».
Уровень сервера |
Уровень коллекции |
Уровень проекта |
---|---|---|
|
|
|
Примечания
Дополнительные сведения о группах допустимых пользователей см. в разделе Что такое допустимый пользователь? Как заполняются группы допустимых пользователей?.
Командная группа создается на основе имени командного проекта. Например, при создании командного проекта с именем «Пример кода» будет создана командная группа с именем «Команда примера кода». Вы можете переименовать ее.
Более того, когда вы создаете дополнительные команды, для каждой команды создается командная группа.
Серверным группам назначаются разрешения уровня сервера. Группам уровня коллекции назначаются разрешения, определенные для коллекции, проекта и объекта. Разрешения, назначенные группам уровня проекта, включают проектные и объектные.
Например, на следующем рисунке показаны разрешения, назначенные группе уровня проекта «Участник».
Разрешения группы администраторов проекта включают назначенные группе «Участник» и не только.
Группы уровня сервера
По умолчанию при установке TFS на уровне сервера для уровня приложений существуют следующие группы.
Имя группы (префикс: Team Foundation\ |
Разрешения |
Учетные записи пользователей по умолчанию |
---|---|---|
Team Foundation Administrators |
Могут выполнять все операции в TFS. Членами данной группы должны быть только те пользователи, которым необходим полный административный контроль над TFS. |
Группа Локальные администраторы (BUILTIN\Administrators) любого сервера, на котором размещаются службы приложений Team Foundation. Группа Сервер\Team Foundation Service Accounts и участники группы \Project Server Integration Service Accounts. |
Team Foundation Valid Users |
Есть доступ на чтение для исходного кода, рабочих элементов и определений сборки. Доступ к функциям TWA зависит от лицензии или группы уровня доступа, куда они назначены. Важно! Если установить значение Запретить или Не задано для разрешения Просмотр сведений уровня экземпляра у данной группы, пользователи более не будут иметь доступ к развертыванию. |
Включает всех пользователей и группы, добавленные в TFS. Членство данной группы нельзя изменять. |
Team Foundation Service Accounts |
Имеет разрешения уровня службы для TFS. |
Содержит учетную запись службы, введенную во время установки. Данная группа должна содержать только учетные записи служб и не должна содержать учетные записи пользователей или группы, содержащие учетные записи пользователей. По умолчанию, данная группа является членом Администраторы Team Foundation. |
Учетные записи службы интеграции Project Server |
Имеет разрешения уровня сервера для развертываний Project Server, в которых настроено взаимодействие с TFS. Кроме того, члены этой группы имеют некоторые разрешения доступа на уровне службы к экземпляру сервера TFS. |
Данная группа должна содержать только учетные записи служб и не должна содержать учетные записи пользователей или группы, содержащие учетные записи пользователей. По умолчанию, данная группа является членом Администраторы Team Foundation. |
SharePoint Web Application Services |
Имеют разрешения уровня службы на доступ к веб-приложениям SharePoint, настроенным для использования с TFS, а также некоторые разрешения уровня службы для доступа к TFS. |
Данная группа должна содержать только учетные записи служб и не должна содержать учетные записи пользователей или группы, содержащие учетные записи пользователей. В отличие от группы «Учетные записи служб», данная группа не входит в группу Администраторы Team Foundation. |
Team Foundation Proxy Service Accounts |
Члены этой группы имеют разрешения уровня службы для прокси-сервера Team Foundation Server, а также некоторые разрешения уровня службы для TFS. |
Данная группа должна содержать только учетные записи служб и не должна содержать учетные записи пользователей или группы, содержащие учетные записи пользователей. |
Группы уровня коллекции
По умолчанию при настройке коллекции существуют следующие группы.
Имя группы (префикс: TeamProjectCollectionName\ |
Разрешения уровня группы |
Назначения учетных записей |
---|---|---|
Project Collection Administrators |
Могут выполнять все операции в коллекции командных проектов. |
Содержит группу Локальные администраторы (BUILTIN\Administrators) того сервера, на котором установлены службы уровня приложений для TFS. В эту группу также входят члены группы TeamProjectCollectionName\Service Accounts. Членство в данной группе должно быть максимально ограничено и доступно только для узкого круга пользователей, которым необходимо предоставление полного административного контроля над коллекцией. |
Project Collection Valid Users |
Имеет доступ к командным проектам, определенным для коллекции. Важно! Если установить значение Запретить или Не задано для разрешения Просмотр информации на уровне коллекции у данной группы, пользователи более не будут иметь доступ к коллекции. |
Включает всех пользователей и группы, добавленные в коллекцию командных проектов. Членство данной группы нельзя изменять. |
Project Collection Service Accounts |
Имеет разрешения уровня службы для коллекции и TFS. |
Содержит учетную запись службы, введенную во время установки. Эта группа должна содержать только учетные записи служб и группы, которые содержат только учетные записи служб. По умолчанию эта группа входит в группы Администраторы Team Foundation и Учетные записи Team Foundation Service. |
Project Collection Build Administrators |
Могут администрировать ресурсы сборки и разрешения для коллекции. |
Членами данной группы должны быть только те пользователи, которым необходим полный административный контроль над серверами и службами сборок для этой коллекции. |
Project Collection Build Service Accounts |
Эти разрешения необходимы для запуска служб сборки для коллекции. |
Эта группа должна содержать только учетные записи служб и группы, которые содержат только учетные записи служб. |
Project Collection Proxy Service Accounts |
Эти разрешения необходимы для запуска прокси-службы коллекции. |
Эта группа должна содержать только учетные записи служб и группы, которые содержат только учетные записи служб. |
Project Collection Test Service Accounts |
Содержит разрешения службы тестирования для коллекции. |
Эта группа должна содержать только учетные записи служб и группы, которые содержат только учетные записи служб. |
Группы уровня проекта
По умолчанию при создании командного проекта существуют следующие группы. Их разрешения действуют на уровне проекта.
Имя группы (префикс: ProjectName\) |
Разрешения уровня группы |
Дополнительные сведения |
---|---|---|
Project Administrators |
Могут администрировать все элементы командного проекта, но не могут создавать проекты. |
Назначайте пользователям, управляющим разрешениями пользователей, создающим команды, определяющими области и пути итерации и настраивающим отслеживание рабочих элементов. |
Build Administrators |
Могут администрировать ресурсы сборки и разрешения сборки для проекта. Они могут управлять тестовыми средами, создавать тестовые запуски и управлять построениями. |
|
Contributors |
Могут полностью участвовать в базе кода проекта и отслеживании рабочих элементов. |
По умолчанию командная группа, созданная при создании командного проекта, добавляется в эту группу, и любой пользователь, добавляемый в команду, становится членом этой группы. Кроме того, в эту группу по умолчанию добавляются все команды, создаваемые для командного проекта, если не выбрать другую группу из списка. |
Readers |
Можно просматривать проект, но нельзя вносить в него изменения. |
Назначайте участникам, которым нужно просматривать ведущуюся работу. |
ИмяКоманды |
Наследует разрешения, назначенные группе участников. Могут полностью участвовать в базе кода проекта и отслеживании рабочих элементов. |
Группа команды по умолчанию создается при создании командного проекта и добавляется в группу участников для командного проекта. Все новые создаваемые команды также будут содержать созданную для них группу, добавленную в группу «Участники». |
Помимо этих групп уровня проекта в каждом проекте в TFS имеются две группы уровня коллекции:
TeamProjectCollectionName**\Project Collection Administrators**
Для данной группы уровня коллекции изменять разрешения нельзя.
TeamProjectCollectionName**\Project Collection Build Service Accounts**
Не удаляйте для этой группы разрешение Просмотр информации на уровне проекта и не устанавливайте его равным Запретить.
«Разрешить», «Отказать», «Не задано» и другие состояния разрешений
TFS использует для разрешений безопасности модель с минимальными возможностями. Это значит, что в случае, если пользователь входит в обе группы и одно и то же разрешение дано одной группе и запрещено другой группе, то запрет имеет приоритет. Есть несколько исключений для этого правила для тех, кто принадлежит к группам «Project Collection Administrator» и «Team Foundation Server Administrator».
Для разрешений можно задавать два явных состояния авторизации: Запретить и Разрешить. Кроме того, есть еще три состояния: Наследовать разрешение, Наследовать запрет и Не задано. Не задано— это неявное состояние запрета.
Разрешение |
Авторизация |
---|---|
Разрешить |
Явно дает пользователям возможность выполнять задачу, связанную с конкретным разрешением. Разрешение обычно наследуется из группы. Чтобы пользователи имели доступ к задаче, соответствующее разрешение должно быть задано как «Разрешить» или «Наследовать разрешение». |
Запрет |
Явно запрещает пользователям выполнять задачу, связанную с конкретным разрешением. Запрещение обычно наследуется из группы. |
Унаследованный запрет или разрешение |
Разрешает или запрещает пользователю выполнять задачу, связанную с разрешением, на основании набора разрешений для группы, к которой принадлежит пользователь. |
Не задано |
Неявно запрещает пользователям выполнять действие, связанное с конкретным разрешением. Так как разрешение не имеет явного значения Запретить или Разрешить, авторизация для данного разрешения может наследоваться от других групп, чьим участником является пользователь или группа. По умолчанию большинство разрешений в TFS не имеют значения Запретить или Разрешить. Разрешения остаются не заданными. |
Состояния разрешений следуют этим приоритетам:
В TFS разрешение Запретить имеет приоритет над всеми остальными значениями разрешений, включая Разрешить. Например, пользователь может быть участником двух групп проекта. В одной группе разрешение «Публиковать результаты теста» имеет значение «Запретить», а в другой — «Разрешить». Параметр «Запретить» имеет приоритет, и пользователь не может публиковать результаты теста.
Исключения для этого правила:
Разрешение «Запретить» не имеет приоритета, если наследуется от иерархического родительского объекта. Эти функции поддерживают иерархическое задание разрешений:
Папки управления версиями для системы управления версиями Team Foundation
Репозитории Git
Узлы областей и итераций для отслеживания рабочих элементов
Общие запросы рабочих элементов и папки запросов
Явные разрешения, заданные для определенного объекта, например папки управления версиями, репозитория или дочернего узла области, переопределяют разрешения, унаследованные от родительских объектов. Например, значение Запретить для папки управления версиями не переопределяется значением Разрешить, заданным для одной из вложенных в нее папок.
Когда пользователь принадлежит к группе администраторов, такой как «Администраторы коллекции проектов» или «Администраторы Team Foundation», если иное не указано в описании разрешения.
Унаследованное разрешение имеет приоритет выше, чем Не задано.
Наследование
Если разрешение для какого-либо пользователя или группы находится в состоянии Не задано, на этого пользователя или группу могут оказывать влияние явные состояния разрешений для групп, к которым относится данный пользователь или группа, так как разрешения в Team Foundation Server наследуются. Например, при просмотре разрешений для какого-либо пользователя или группы можно встретить как значение Разрешить, так и значение Унаследованное разрешение. Последнее разрешение унаследовано от некоторой другой группы, к которой относится данный пользователь или группа. В этом примере пользователь может относиться к группе на уровне проекта и к группе на уровне коллекции в проекте. Если одна из этих групп имеет для разрешения явно заданное значение Разрешить, а значение этого же разрешения для другой группы —Не задано, пользователь будет иметь Унаследованное разрешение для выполнения действий, управляемых данным разрешением. Пользователь наследует разрешения от обеих групп, и значение Разрешить имеет приоритет над значением Не задано.
Чтобы выяснить, почему разрешение унаследовано, можно навести указатель на параметр разрешения и выбрать Почему?. Открывается новое окно. В нем отображается информация о наследовании для данного разрешения.
Некоторые диалоговые окна безопасности уровня объектов дают возможность выключить или включить наследование. Используйте этот параметр, чтобы выключить наследование для папок, общих запросов и других объектов.
Рекомендации по назначению разрешений
Что делать.
Используйте группы Windows при управлении большого числа пользователей.
Предоставляйте разрешения участника пользователям и группам, которым требуется возможность создания запросов рабочих элементов проекта и предоставления совместного доступа к этим запросам.
При добавлении большого числа команд можно создать группу «Администраторы команд» в TFS и выделить ей подмножество разрешений администраторов проектов.
При добавлении команд учитывайте разрешения, назначаемые руководителям команд, скрам-мастерам и другим участникам команд, которым нужно создавать и изменять пути областей, пути итераций и запросы.
Чего не делать.
Не добавляйте в группу «Читатели» учетные записи, добавленные в группу администраторов проектов. Это приводит к тому, что нескольким разрешениям присваивается состояние «Запретить».
Не изменяйте назначения по умолчанию в группе допустимых пользователей. Если удалить разрешение на просмотр информации на уровне экземпляров для такой группы или задать для него значение «Запретить», пользователи в этой группе не будут иметь доступа к командному проекту, коллекции или развертыванию, в зависимости от выбранной группы.
Не назначайте разрешения, помеченные как «Назначать только учетным записям служб», учетным записям пользователей.
Разрешения уровня сервера
Разрешения уровня сервера дают доступ, затрагивающий все проекты и коллекции в развертывании. Разрешения уровня сервера можно задать в консоли администрирования Team Foundation или с помощью программы командной строки TFSSecurity.
Вы можете задать эти разрешения для пользователей и групп на уровне сервера, например для администраторов Team Foundation, а также для добавленных вами групп на уровне сервера.
Имя разрешения |
Действие TFSSecurity |
Пространство имен TFSSecurity |
Описание |
Службы веб-приложений SharePoint |
Администраторы Team Foundation |
Учетные записи Team Foundation Service |
---|---|---|---|---|---|---|
Администрирование хранилище (примечание 1) |
Администрирование |
Хранилище |
Может обрабатывать и изменять параметры хранилища данных или куба SQL Server Analysis с помощью веб-службы управления хранилищем. |
![]() |
![]() |
|
Создать коллекцию командных проектов |
CreateCollection |
CollectionManagement |
Могут создавать и администрировать коллекции командных проектов. |
![]() |
![]() |
|
Удаление коллекции командных проектов (примечание 2) |
DeleteCollection |
CollectionManagement |
Могут удалять коллекции командных проектов из развертывания. |
![]() |
![]() |
|
Изменить сведения на уровне экземпляра (примечание 3) |
GENERIC_WRITE tf: AdminConfiguration tf: AdminConnections |
Server |
Могут изменять разрешения на уровне сервера для пользователей и групп TFS, а также добавлять и удалять группы уровня сервера в коллекции. |
![]() |
![]() |
|
Выполнять запросы от чужого имени |
Impersonate |
Server |
Могут выполнять операции от имени других пользователей или служб. Назначайте только для учетных записей служб. |
![]() |
![]() |
|
Активировать события |
TRIGGER_EVENT |
Server |
Могут активировать события оповещений TFS. Назначайте только учетным записям служб и участникам группы «Администраторы Team Foundation». |
![]() |
![]() |
|
Использовать все возможности веб-доступа (примечание 4) |
FullAccess |
Server |
Могут использовать все функции TWA. |
![]() |
![]() |
|
Просматривать сведения на уровне экземпляра (примечание 5) |
GENERIC_READ |
Server |
Могут просматривать участников групп на уровне сервера, а также их разрешения. |
![]() |
![]() |
![]() |
Примечания
Дополнительные разрешения могут потребоваться для полной обработки или перестроения хранилища данных и куба Analysis.
При удалении коллекции командных проектов база данных этой коллекции не удаляется из SQL Server.
«Изменить сведения на уровне экземпляра» включает в себя возможность выполнения следующих задач для всех командных проектов, определенных во всех коллекциях проектов, которые заданы для этого экземпляра:
Добавлять и администрировать команды и все связанные с ними компоненты
Создавать и изменять области и итерации
Изменять политики возврата
Изменять запросы общих рабочих элементов
Изменять ACL разрешений уровня проекта и уровня коллекции
Создавать и изменять глобальные списки
Изменять подписки на события (электронная почта или SOAP)
При настройке через меню разрешение Изменить сведения на уровне экземпляра также неявно разрешает пользователю изменять разрешения для системы управления версиями. Чтобы предоставить все вышеуказанные разрешения из командной строки, следует использовать команду tf.exe Permission для предоставления разрешений AdminConfiguration и AdminConnections в дополнение к команде GENERIC_WRITE.
Если для разрешения «Использовать все функции веб-клиента» задано значение «Запретить», пользователь будет видеть только компоненты, разрешенные для группы Ограниченная (см. раздел Изменение уровней доступа). Значение «Запретить» переопределяет все неявные разрешения даже для учетных записей, являющихся членами административных групп, таких как «Администраторы Team Foundation».
Разрешение «Просмотр сведений уровня экземпляра» также назначается группе допустимых пользователей Team Foundation.
Разрешения уровня коллекции
Разрешения на уровне коллекции дают авторизацию на задачи уровня коллекции, и их можно задавать для следующих пользователей и групп:
пользователи и группы уровня коллекции, например «Администраторы коллекции проектов»;
Группы уровня проектов, добавленные в коллекцию
Настраиваемые группы, добавленные в коллекцию
Вы можете задать разрешения на уровне коллекции на странице администрирования TWA для коллекции, на консоли администрирования Team Foundation или с помощью программы командной строки TFSSecurity либо программы командной строки tf. Все разрешения действуют в конкретной коллекции, для которой они заданы.
Имя разрешения |
Действие TFSSecurity |
Пространство имен TFSSecurity |
Описание |
Учетные записи служб коллекций проектов |
Учетные записи службы сборки коллекции проектов |
Администраторы построения коллекций проектов |
Администраторы коллекции проектов (примечание 1) |
---|---|---|---|---|---|---|---|
Администрирование разрешений ресурсов сборки |
AdministerBuildResourcePermissions |
BuildAdministration |
Могут изменять разрешения для ресурсов сборки. |
![]() |
![]() |
![]() |
|
Администрирование интеграции Project Server |
AdministerProjectServer |
ProjectServerAdministration |
Могут настраивать интеграцию TFS и Project Server для синхронизации данных между этими двумя серверными продуктами. |
![]() |
![]() |
||
Управление отложенными изменениями |
AdminShelvesets tf: AdminShelvesets |
VersionControlPrivileges |
Могут удалять наборы отложенных изменений, созданные другими пользователями. |
![]() |
![]() |
![]() |
|
Управление рабочими областями |
AdminWorkspaces tf: AdminWorkspaces |
VersionControlPrivileges |
Могут создавать рабочие области для других пользователей и удалять рабочие области, созданные другими пользователями. |
![]() |
![]() |
![]() |
|
Изменить параметры трассировки |
DIAGNOSTIC_TRACE |
Коллекция |
Могут изменять параметры трассировки для сбора более детальной диагностики о веб-службах TFS. |
![]() |
|||
Создание рабочей области (примечание 2) |
tf: CreateWorkspace |
VersionControlPrivileges |
Могут создавать рабочие области управления версиями. |
![]() |
![]() |
![]() |
|
Создание новых проектов (примечание 3) |
CREATE_PROJECTS |
Коллекция |
Могут создавать проекты в коллекции командных проектов. |
![]() |
|||
Удаление командных проектов (примечание 4) |
Удаление |
Project |
Могут удалять командные проекты. |
![]() |
|||
Изменение сведений на уровне коллекции (примечание 5) |
GENERIC_WRITE tf: AdminConfiguration tf: AdminConnections |
Коллекция VersionControlPrivileges |
Могут добавлять пользователей и группы, а также изменять разрешения уровня коллекции для пользователей и групп. |
![]() |
![]() |
||
Выполнять запросы от чужого имени |
Impersonate |
Server |
Могут выполнять операции от имени других пользователей или служб. Назначайте только для учетных записей служб. |
![]() |
|||
Управление ресурсами построения |
ManageBuildResources |
BuildAdministration |
Могут управлять компьютерами, агентами и контроллерами сборки. |
![]() |
![]() |
![]() |
![]() |
Управление шаблонами процессов |
MANAGE_TEMPLATE |
Коллекция |
Могут скачивать, создавать, изменять и отправлять шаблоны процессов. |
![]() |
|||
Управление контроллерами тестов |
MANAGE_TEST_CONTROLLERS |
Коллекция |
Могут регистрировать и отменять регистрацию контроллеров тестирования. |
![]() |
|||
События активации (примечание 6) |
TRIGGER_EVENT |
Коллекция |
Могут активировать события оповещений проекта в коллекции. Назначайте только для учетных записей служб. |
![]() |
![]() |
||
Использовать ресурсы построения |
UseBuildResources |
BuildAdministration |
Могут резервировать и выделять агенты сборки. Назначайте только учетным записям служб сборки. |
![]() |
![]() |
![]() |
|
Просмотр ресурсов построения |
ViewBuildResources |
BuildAdministration |
Пользователи с таким разрешением могут просматривать компьютеры построения и агенты построения, настроенные для коллекции, но не использовать их. |
![]() |
![]() |
![]() |
![]() |
Просмотр информации на уровне коллекции |
GENERIC_READ |
Коллекция |
Пользователи с данным разрешением могут видеть участников групп на уровне коллекции, а также их разрешения. |
![]() |
![]() |
![]() |
![]() |
Просмотр сведений о синхронизации системы |
SYNCHRONIZE_READ |
Коллекция |
Пользователи с таким разрешением могу вызывать программные интерфейсы синхронизации. Назначайте только для учетных записей служб. |
![]() |
![]() |
Примечания.
Кроме того, в эти группы TFS делаются следующие назначения:
Группа допустимых пользователей коллекции проектов: создание рабочей области, просмотр ресурсов сборки и просмотр информации на уровне коллекции.
Учетные записи прокси-службы коллекции проектов: создание рабочей области, просмотр ресурсов сборки и просмотр информации на уровне коллекции.
Учетные записи службы тестирования коллекции проектов: создание рабочей области, управление контроллерами тестирования, просмотр ресурсов сборки и просмотр информации на уровне коллекции.
Разрешение Создание рабочей области предоставляется всем пользователям-членам группы допустимых пользователей в коллекции проектов.
В зависимости от развертывания могут потребоваться другие разрешения. Также нужно запускать Visual Studio и Team Explorer от имени администратора, чтобы Мастер создания командных проектов сработал успешно.
Удаление командного проекта приведет к удалению всех данных, связанных с этим проектом. Отменить удаление командного проекта невозможно, за исключением восстановления коллекции к точке до удаления этого проекта.
«Изменить сведения на уровне коллекции» включает в себя возможность выполнения следующих задач для всех командных проектов, определенных в коллекции:
Добавлять и администрировать команды и все связанные с ними компоненты
Создавать и изменять области и итерации
Изменять политики возврата
Изменять запросы общих рабочих элементов
Изменять ACL разрешений уровня проекта и уровня коллекции
Создавать и изменять глобальные списки
Изменять подписки на события (электронная почта или SOAP) для событий уровня проекта или уровня коллекции
При задании разрешения на Изменение информации на уровне коллекции как Разрешить через TWA пользователи смогут добавлять и удалять группы TFS на уровне коллекции. Также оно неявно дает пользователям возможность изменять разрешения управления версиями. Чтобы предоставить все вышеуказанные разрешения из командной строки, следует использовать команду tf.exe Permission для предоставления разрешений AdminConfiguration и AdminConnections в дополнение к команде GENERIC_WRITE.
Пользователи с этим разрешением не смогут удалять встроенные группы уровня коллекции, например «Администраторы коллекции проектов».
Добавление данного разрешения иным пользователям потенциально открывает возможность атак типа «отказ в обслуживании».
Разрешения уровня проектов, тестов и объектов
Разрешения уровня проекта применяются к пользователям и группам отдельного проекта. В проекте можно задавать разрешения для объектов, созданных в проекте, например областей, итераций, папок управления версиями, запросов и папок запросов, а также определений сборок. Вы можете задать разрешения уровня проектов и объектов для пользователей и групп, добавленных в командный проект или коллекцию.
Следующим встроенным группам уровня проекта и коллекции по умолчанию назначаются многие разрешения:
Группы уровня проекта: сборщики, участники, администраторы проектов и читатели
Группы уровня коллекции: администраторы коллекции проектов, учетные записи службы сборки коллекции проектов, учетные записи прокси-службы коллекции проектов, а также учетные записи службы тестирования коллекции проектов
Разрешения уровня проектов и тестов
Разрешения на уровне сервера можно задать на странице администрирования TWA для проекта или с помощью программы командной строки TFSSecurity. Все разрешения уровня проекта дают пользователям права на конкретный командный проект, для которого они заданы.
Имя разрешения |
Действие TFSSecurity |
Пространство имен TFSSecurity |
Описание |
Администраторы сборки, участники и команды |
Администраторы проектов (примечание 1) |
---|---|---|---|---|---|
Создание определения тега |
Create |
Добавление тегов |
Могут добавлять теги в форме рабочего элемента. |
![]() |
![]() |
Создать выполнения тестов |
PUBLISH_TEST_RESULTS |
Project |
Могут добавлять и удалять результаты тестов, а также добавлять и изменять выполнения тестов. |
![]() |
![]() |
Удалить командный проект |
DELETE |
Project |
Могут удалить командный проект из TFS. |
![]() |
|
Удалить тестовые запуски |
DELETE_TEST_RESULTS |
Project |
Могут удалять запланированные тесты. |
![]() |
![]() |
Изменение сведений на уровне проекта (примечание 2) |
GENERIC_WRITE |
Project |
Могут изменять разрешения уровня проекта для пользователей и групп. |
![]() |
|
Управление тестовыми конфигурациями |
MANAGE_TEST_CONFIGURATIONS |
Project |
Могут создавать и удалять конфигурации тестов. |
![]() |
![]() |
Управление тестовыми средами |
MANAGE_TEST_ENVIRONMENTS |
Project |
Пользователи с этим разрешением могут создавать и удалять тестовые среды. |
![]() |
![]() |
Просматривать информацию уровня проекта |
GENERIC_READ |
Project |
Могут видеть участников групп на уровне проекта, а также их разрешения. |
![]() |
![]() |
Просмотр выполнений теста |
VIEW_TEST_RESULTS |
Project |
Могут видеть планы тестирования по пути области командного проекта. |
![]() |
![]() |
Примечания.
Кроме того, в эти группы TFS делаются следующие назначения:
Читатели: создание определения тега, просмотр сведений на уровне проекта и просмотр тестовых запусков.
Администраторы коллекции проектов: те же разрешения, что и у администраторов проектов, кроме удаления выполнения тестов.
Администраторы сборки коллекции проектов: те же разрешения, что и у администраторов проектов, кроме удаления выполнения тестов.
Учетные записи службы сборки коллекции проектов: создание тестовых запусков, управление конфигурациями тестов, управление тестовыми средами, просмотр сведений на уровне проекта, просмотр тестовых запусков.
Учетные записи службы тестирования коллекции проектов: создание тестовых запусков, управление конфигурациями тестов, управление тестовыми средами, просмотр сведений на уровне проекта.
«Изменить сведения на уровне проекта» дает возможность выполнять следующие задачи для командного проекта:
Добавлять и администрировать команды и все связанные с ними компоненты
Создавать и изменять области и итерации
Изменять политики возврата
Изменять запросы общих рабочих элементов
Изменять ACL разрешений уровня проекта
Создавать и изменять глобальные списки
Изменять подписки на события (электронная почта или SOAP) для событий уровня проекта
Разрешения уровня построения
Вы можете задавать разрешения уровня сборки для всех сборок или определения сборки в контекстном меню определения сборки TWA или Team Explorer, а также с помощью программы командной строки TFSSecurity.
Имя разрешения (интерфейс) |
Действие TFSSecurity |
Пространство имен TFSSecurity |
Описание |
Участники |
Авторы определений сборок или сборщики |
Администраторы сборки |
Администраторы проектов (примечание 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 |
Сборка |
Могут просматривать определения сборок, созданные для командного проекта. |
![]() |
![]() |
![]() |
![]() |
Просмотреть построения |
ViewBuilds |
Сборка |
Могут просматривать сборки в очереди и завершенные сборки командного проекта. |
![]() |
![]() |
![]() |
![]() |
Примечания.
Кроме того, в эти встроенные группы делаются следующие назначения:
Читатели: просмотр определений сборок и просмотр сборок.
Администраторы коллекции проектов: все разрешения, кроме обновления сведений о сборках.
Администраторы сборки коллекции проектов: все разрешения, кроме переопределения проверки возврата по построению и обновления сведений о сборках.
Учетные записи службы сборки коллекции проектов: изменение качества сборок, управление очередью сборок, обновление сведений о сборках, переопределение проверки возврата по построению, сборки в очереди, просмотр определений сборок и просмотр сборок.
Учетные записи службы тестирования коллекции проектов: обновление сведений о сборках, просмотр определений сборок и просмотр сборок.
Отключение наследования для определения сборки позволяет управлять разрешениями для отдельных определений сборки.
Когда наследование включено, определение сборки соблюдает разрешения сборки, заданные на уровне проекта для группы или пользователя. Например, пользовательская группа Build Managers имеет разрешения для ручного помещения сборки в очередь для проекта Fabrikam. Любое определение сборки с включенным наследованием для проекта Fabrikam позволило бы члену группы Build Managers вручную поместить сборку в очередь.
Однако, отключив наследование для проекта Fabrikam, вы можете задать разрешения, которые позволяют только администраторам проектов вручную помещать сборки в очередь для конкретного определения сборки. В последствии это позволило бы задать разрешения конкретно для этого определения сборки.
Разрешение «Переопределение проверки возврата по построению» следует присваивать только учетным записям служб для служб сборки и администраторам сборки, ответственным за качество кода. Для получения дополнительной информации см. Возврат ожидающих изменений под управлением построения с условным возвратом.
Разрешения запроса рабочего элемента
Вы можете задать разрешения запросов рабочих элементов в контекстном меню общих запросов TWA или Team Explorer и с помощью программы командной строки TFSSecurity. Все разрешения действуют в конкретном запросе или папке запросов, для которых они заданы.
Предоставляйте разрешения участника пользователям и группам, которым требуется возможность создания запросов рабочих элементов проекта и предоставления совместного доступа к этим запросам. Для создания диаграмм запросов нужен расширенный доступ.
Имя разрешения |
Действие TFSSecurity |
Пространство имен TFSSecurity |
Описание |
Читатели, участники, администраторы сборки |
Создатели-владельцы, администраторы проектов, администраторы коллекции проектов |
---|---|---|---|---|---|
Участие |
CONTRIBUTE |
WorkItemQueryFolders |
Могут просматривать и изменять запрос или папку запросов. |
![]() |
|
Удаление |
DELETE |
WorkItemQueryFolders |
Могут удалить запрос или папку запросов и их содержимое. |
![]() |
|
Управление разрешениями |
MANAGEPERMISSIONS |
Могут управлять разрешениями для запроса или папки запросов. |
![]() |
||
Чтение |
READ |
WorkItemQueryFolders |
Могут просматривать и использовать данный запрос или запросы в папке, но не могут изменять запрос или содержимое папки запросов. |
![]() |
![]() |
FullControl |
WorkItemQueryFolders |
Могут просматривать, изменять, удалять и контролировать разрешения для запроса или папки запросов и их содержимого. |
![]() |
Разрешения добавления тегов
Теги — это быстрый способ группировки и категоризации рабочих элементов. Разрешения на добавление тегов доступны в локальных развертываниях TFS, начиная с TFS 2013.2 и более поздних версий. Вы можете задать разрешение «Создание определений тегов» на странице «Безопасность» администрирования TWA. Для задания других разрешений используйте программу командной строки TFSSecurity.
Имя разрешения |
Действие TFSSecurity |
Пространство имен TFSSecurity |
Описание |
Читатели |
Участники |
Администраторы проектов (примечание 1) |
---|---|---|---|---|---|---|
Создание определений тегов (примечание 2) |
CREATE |
Добавление тегов |
Могут создавать новые теги и применять их к рабочим элементам. Пользователи без данного разрешения могут только выбирать теги из существующего набора тегов командного проекта. |
![]() |
![]() |
|
Удаление определений тегов (примечание 3, 4) |
DELETE |
Добавление тегов |
Могут удалять теги из списка доступных тегов проекта. |
![]() |
||
Перечисление определений тегов (примечание 4, 5) |
ENUMERATE |
Добавление тегов |
Могут просматривать список тегов, доступных для рабочего элемента в командном проекте. Пользователи без этого разрешения не будут иметь доступа к списку тегов, из которых можно выбирать, в форме рабочего элемента или в редакторе запросов. |
![]() |
![]() |
![]() |
Обновление определений тегов (примечание 4) |
UPDATE |
Добавление тегов |
Могут переименовывать теги с помощью API REST. |
![]() |
![]() |
Примечания.
Кроме того, для группы «Учетные записи службы коллекции проектов» явно заданы все разрешения на добавление тегов.
Читатели и участники наследуют разрешение Создание определений тегов, так как для него явно задано значение «Разрешить» у группы «Допустимые пользователи проекта».
Хотя разрешение Создание определения тега отображается в параметрах безопасности на уровне командного проекта, разрешения добавления тегов фактически являются разрешениями уровня коллекции, которые действуют на уровне проекта, когда отображаются в пользовательском интерфейсе. Чтобы ограничить область действия разрешений добавления тегов отдельным командным проектом при использовании команды TFSSecurity, необходимо задать идентификатор GUID проекта как часть синтаксиса команды. В противном случае изменения будут применяться ко всей коллекции командных проектов. Об этом следует помнить при изменении или установке этих разрешений.
Удаление тегов не поддерживается в пользовательском интерфейсе. Чтобы удалить тег, удалите назначения, которые связаны с тегом. TFS автоматически удаляет неназначенные теги через 3 дня неиспользования.
Не отображается в пользовательский интерфейс; может быть задано только с помощью команды TFSSecurity.
Разрешение «Просмотр сведений на уровне проекта» со значением «Разрешить» для читателей и участников неявно разрешает пользователям в этих группах просматривать существующие теги (разрешение Перечисление определений тегов).
Разрешения уровня области для отслеживания рабочих элементов
Разрешения уровня области дают или запрещают доступ к рабочим элементам, определенным в проекте, на основании их места в дереве иерархии областей.
Разрешения уровня области можно определить и задать на странице администрирования TWA для областей или с помощью программы командной строки TFSSecurity. Все разрешения действуют в конкретном пути области, для которой они заданы.
Имя разрешения |
Действие TFSSecurity |
Пространство имен TFSSecurity |
Описание |
Участники |
Администраторы сборки |
Учетные записи службы сборки коллекции проектов (примечание 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 |
Могут просматривать (но не изменять) рабочие элементы в этом узле областей. |
![]() |
![]() |
![]() |
Примечания.
Кроме того, в эти встроенные группы делаются следующие назначения:
Читатели: просмотр разрешений для этого узла и разрешения только на просмотр.
Учетные записи службы тестирования коллекции проектов: разрешения только на просмотр.
Администраторы Team Foundation, администраторы коллекций проектов и администраторы проектов: все разрешения CSS. Любой пользователь или любая группа с разрешениями «Изменить сведения на уровне экземпляра», «Изменить сведения на уровне коллекции» или «Изменить сведения на уровне проекта» могут создавать узлы областей и управлять ими.
Члены группы «Допустимые пользователи коллекции проектов», «Допустимые пользователи проекта», а также любой пользователь или любая группа с разрешением «Просмотр информации на уровне коллекции» или «Просмотр сведений на уровне проекта» могут просматривать разрешения любого узла области.
Вы можете добавлять это разрешение всем добавленным вручную пользователям и группам, которым необходимо удалять, добавлять и переименовывать узлы областей.
Вы можете добавлять это разрешение всем добавленным вручную пользователям и группам, которым необходимо изменять рабочие элементы в узле областей.
Разрешение на управление наборами тестов добавлено в обновлении TFS 2013.3. Вы можете добавлять это разрешение всем добавленным вручную пользователям и группам, которым необходимо управлять планами тестирования или наборами тестов в узле областей.
Если для разрешения «Просмотр рабочих элементов в этом узле» задано значение «Запретить», пользователь не сможет просматривать никакие рабочие элементы в этом узле области. Значение «Запретить» переопределяет все неявные разрешения даже для учетных записей, являющихся членами административных групп, таких как «Администраторы Team Foundation».
Разрешения уровня итерации для отслеживания рабочих элементов
Разрешения уровня итерации определяют доступ для создания и контроля путей итераций.
Разрешения на уровне итерации задаются для пользователей и групп, добавленных в командный проект или коллекцию, с помощью страницы администрирования TWA для итераций или программы командной строки TFSSecurity. Все разрешения действуют в конкретном пути итераций, для которого они заданы.
Для некоторых операций отслеживания рабочих элементов требуется несколько разрешений. Например, для удаления узла требуется несколько разрешений.
Вы можете предоставить администраторам команд, скрам-мастерам и лидерам команд разрешения на создание, изменение и удаление узлов.
Имя разрешения |
Действие TFSSecurity |
Пространство имен TFSSecurity |
Описание |
Администраторы проектов (примечание 1) |
---|---|---|---|---|
Создание дочерних проектов (примечание 2) |
CREATE_CHILDREN |
Итерация |
Могут создавать узлы итераций. Пользователи, у которых есть данное разрешение и разрешение Изменить узел, могут перемещать или менять порядок любых дочерних узлов итерации. |
![]() |
Удаление этого узла (примечание 2) |
DELETE |
Итерация |
Пользователи, у которых есть данное разрешение и разрешение Изменить узел для другого узла, могут удалять узлы итерации и изменять классификацию существующих рабочих элементов из удаленного узла. Если удаляемый узел имеет дочерние узлы, они также удаляются. |
![]() |
Изменение этого узла (примечание 2) |
GENERIC_WRITE |
Итерация |
Могут задавать разрешения для этого узла и переименовывать узлы итераций. |
![]() |
Просмотреть разрешения для этого узла (примечание 3) |
GENERIC_READ |
Итерация |
Могут просматривать настройки безопасности этого узла. |
![]() |
Примечания.
Администраторам Team Foundation и администраторам коллекций проектов назначаются все разрешения итераций. Любой пользователь или любая группа с разрешениями «Изменить сведения на уровне экземпляра», «Изменить сведения на уровне коллекции» или «Изменить сведения на уровне проекта» могут создавать узлы итераций и управлять ими.
Вы можете добавлять это разрешение всем добавленным вручную пользователям и группам, которым необходимо удалять, добавлять и переименовывать узлы итераций.
Члены группы «Допустимые пользователи коллекции проектов», «Допустимые пользователи проекта», а также любой пользователь или любая группа с разрешением «Просмотр информации на уровне коллекции» или «Просмотр сведений на уровне проекта» могут просматривать разрешения любого узла итерации.
Разрешения Team Foundation (подсистема контроля версий)
Вы можете задавать разрешения для файлов и папок исходного кода TFVC в контекстном меню определения файла или папки в TWA или Team Explorer, а также с помощью программы командной строки tf. Эти разрешения отображаются только у командных проектов, использующих TFVC для контроля версий.
В разрешениях управления версиями явное значение «Запретить» имеет преимущество над разрешениями группы администратора.
Имя разрешения |
Действие TFSSecurity и разрешение tf |
Пространство имен TFSSecurity |
Описание |
Участники |
Администраторы сборки |
Учетные записи службы сборки коллекции проектов |
Администраторы проектов (примечание 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 |
Могут разблокировать файлы, заблокированные другими пользователями. |
![]() |
Примечания.
Кроме того, все разрешения для администраторов коллекции проектов и учетных записей службы коллекции проектов задаются как «Унаследованное разрешение».
Группе читателей даются разрешения только на просмотр: чтение.
Вы можете назначить эти разрешения для всех добавленных вручную пользователей и групп, участвующих в разработке проекта. Также сюда относятся все пользователи, которым нужно возвращать и извлекать изменения, вносить ожидающие изменения в элементы папки, а также проверять комментарии к зафиксированным наборам изменений.
Вы можете назначить это разрешение для добавленных вручную пользователей или групп, которые принимают участие в работе над этим проектом и которые должны иметь возможность создавать собственные ветви, если для проекта не применяются более строгие правила разработки.
Вы можете назначить это разрешение для добавленных вручную пользователей или групп, которые принимают участие в работе над этим проектом и которые должны иметь возможность слияния исходных файлов, если для проекта не применяются более строгие правила разработки.
Вы можете назначить это разрешение добавленным вручную пользователям или группам, ответственным за отслеживание или мониторинг проекта, которые могут или должны изменять комментарии в возвращенных файлах, даже если они возвращены другим пользователем.
Разрешения репозитория Git
Вы можете установить разрешения для проекта Git, репозитория или ветви в контекстном меню или на странице администрирования в TWA, либо с помощью программы командной строки TFSSecurity. Эти разрешения отображаются только у командных проектов, использующих Git для контроля версий.
Вы можете установить все разрешения для проекта или репозитория. Вы можете установить разрешения на администрирование, участие и журнал перезаписи и удаления (принудительная отправка) для ветви. Репозитории и ветви наследуют разрешения из назначений, сделанных на уровне проекта.
По умолчанию группы читателей на уровнях проектов и коллекций имеют только разрешения на чтение.
Имя разрешения |
Действие TFSSecurity |
Пространство имен TFSSecurity |
Описание |
Участники |
Администраторы сборки |
Администраторы проектов (примечание 1) |
---|---|---|---|---|---|---|
Администрирование (примечание 2) |
Администрирование |
GitRepositories |
Могут переименовать репозиторий, добавить дополнительные репозитории, проверить базу данных и задать разрешения для ветви. Они могут также удалить репозиторий, если имеют разрешение «Принудительно выполнить». На уровне ветви вы можете установить разрешения для ветви и удалить ветвь. |
![]() |
||
Создание ветви |
CreateBranch |
GitRepositories |
Могут публиковать ветви в репозитории. Отсутствие этого разрешения не препятствует созданию пользователями ветвей в их локальном репозитории; оно просто не позволяет им публиковать локальные ветви на сервере. Когда пользователь создает новую ветвь на сервере, он по умолчанию имеет для этой ветви разрешения на администрирование, участие и принудительное выполнение. |
![]() |
![]() |
![]() |
Участие |
GenericContribute |
GitRepositories |
Могут заносить свои изменения в репозиторий. На уровне ветви вы можете ввести их изменения в ветвь. |
![]() |
![]() |
![]() |
Управление заметками |
ManageNote |
GitRepositories |
Могут отправлять заметки Git в репозиторий и изменять их. Они также могут удалять заметки из элементов, если имеют разрешение «Принудительно выполнить». Более подробные сведения о заметках см. здесь. |
![]() |
![]() |
![]() |
Чтение |
GenericRead |
GitRepositories |
Могут клонировать, извлекать, запрашивать и просматривать содержимое репозитория, но не могут отправлять в него никакие вносимые ими изменения. |
![]() |
![]() |
![]() |
Журнал перезаписи и удаления (принудительная отправка) |
ForcePush |
GitRepositories |
Могут принудительно выполнять обновление, перезаписывая или отбрасывая добавленное другими пользователями. Удаление фиксаций приводит к изменениям в журнале. Без данного разрешения пользователи не смогут отменять свои изменения. Разрешение «Журнал перезаписи и удаления» требуется также для удаления ветви. Поскольку разрешение «Журнал перезаписи и удаления» позволяет пользователям изменять журнал или удалять из него фиксацию, пользователи с этим разрешением могут удалить изменение и его журнал с сервера. Они также могут изменить историю фиксаций репозитория сервера. На уровне ветви могут перезаписывать и удалять журнал для ветви. |
|||
Создание тега |
CreateTag |
GitRepositories |
Могут заносить теги в репозиторий, а также изменять и удалять теги элементов, если есть разрешение «Принудительно выполнить». |
![]() |
![]() |
![]() |
Примечания.
Кроме того, все разрешения для администраторов коллекции проектов и учетных записей службы коллекции проектов задаются как «Унаследованное разрешение».
Читатели и учетные записи службы сборки коллекции проектов получают разрешения только на просмотр: чтение.
Вы можете назначить все разрешения добавленным вручную пользователям и группам, участвующим в разработке проекта.
Разрешения Lab Management
Разрешения Visual Studio Lab Management относятся к конкретным виртуальным машинам, средам и другим ресурсам. Кроме того, создателю объекта в Lab Management автоматически предоставляются все разрешения на этот объект. Данные разрешения можно настроить с помощью программы командной строки TFSLabConfig.
По умолчанию группы читателей на уровнях проектов и коллекций имеют только разрешения на просмотр лабораторных ресурсов (чтение).
Имя разрешения |
TFSLabConfig разрешение |
Описание |
Участники (примечание 1) |
Администраторы проектов |
Служба сборки коллекций проектов |
Администраторы Team Foundation, администраторы коллекций проектов |
---|---|---|---|---|---|---|
Удаление сред и виртуальных машин |
Удаление |
Могут удалять среды и шаблоны. Это разрешение проверяется для удаляемого объекта. |
![]() |
![]() |
||
Удаление расположений лаборатории |
DeleteLocation |
Могут удалять расположения ресурсов Lab Management, включая группы узлов коллекции, общие папки библиотек коллекции, группы узлов проекта и общие папки библиотек проекта. Чтобы удалить расположение, необходимо иметь для него разрешение Удаление расположения лаборатории. |
![]() |
![]() |
||
Изменение сред и виртуальных машин |
Edit |
Могут изменять среды и шаблоны. Это разрешение проверяется для изменяемого объекта. |
![]() |
![]() |
![]() |
![]() |
Операции среды |
EnvironmentOps |
Могут запускать, останавливать, приостанавливать и контролировать снимки, а также выполнять другие операции в среде. |
![]() |
![]() |
||
Импорт виртуальной машины |
Create |
Могут импортировать виртуальную машину из общей папки библиотеки VMM. Это разрешение отличается от разрешения «Запись», поскольку только создает объект в Lab Management и не записывает ничего в группу узлов VMM или общую папку библиотеки. |
![]() |
![]() |
![]() |
|
Управление разрешениями дочерних объектов |
ManageChildPermissions |
Могут изменять разрешения всех дочерних объектов Lab Management. Например, если пользователь имеет разрешение Управление разрешениями дочерних объектов для группы узлов командного проекта, он может изменять разрешения всех сред этой группы узлов командного проекта. |
![]() |
![]() |
||
Управление расположениями лаборатории |
ManageLocation |
Могут изменять расположения ресурсов Lab Management, включая группы узлов коллекции, общие папки библиотек коллекции, группы узлов проекта и общие папки библиотек проекта. Чтобы изменить определенное расположение, необходимо иметь для него разрешение Управление расположением лаборатории. Это разрешение для расположений уровня коллекции (группы узлов коллекции и общие папки библиотек коллекции) позволяет также создавать расположения уровня проекта (группа узлов проекта и общая папка библиотеки проекта). |
![]() |
![]() |
||
Управление разрешениями |
ManagePermissions |
Могут изменять разрешения объектов Lab Management. Это разрешение проверяется для объекта, разрешения которого изменяются. |
![]() |
|||
Управление снимками |
ManageSnapshots |
Могут выполнять все задачи управления снимками для среды, включая создание снимка, возврат к снимку, переименование снимка, удаление снимка и чтение снимка. |
![]() |
![]() |
![]() |
![]() |
Приостановка среды |
Pause |
Могут приостанавливать среду. |
![]() |
![]() |
![]() |
![]() |
Запуск |
Запуск |
Могут запускать среду. |
![]() |
![]() |
![]() |
![]() |
Остановить |
Остановить |
Могут останавливать среду. |
![]() |
![]() |
![]() |
|
Просмотр ресурсов лаборатории |
Чтение |
Могут просматривать информацию для различных ресурсов Lab Management, включая групп узлов коллекции, группы узлов проекта и среды. Для просмотра информации об определенном ресурсе лаборатории необходимо иметь на этот ресурс разрешение Просмотр ресурсов лаборатории. |
![]() |
![]() |
![]() |
![]() |
Запись сред и виртуальных машин |
Write |
Могут создавать среды для группы размещения проектов. Пользователи с этим разрешением для общей папки библиотеки проекта могут сохранять среды и шаблоны. |
![]() |
![]() |
![]() |
![]() |
Примечания.
- Группе читателей даются разрешения только на просмотр: чтение.
Разрешения Release Management
В Release Management можно назначать разрешения на основе ролей, назначенных пользователю, явных функциональных разрешений, назначенных группам, и разрешений, назначенных конкретным экземплярам объектов выпуска. Кроме того, можно назначать утверждающих и проверяющих для определенных этапов пути выпуска, чтобы обеспечивать соответствие развертываемых приложений стандартам качества.
На основе ролей. Две роли — это менеджер выпусков и пользователь службы. Менеджеры выпусков могут управлять всеми функциям, независимо от того, с какими группами они связаны. Пользователи службы соответствуют роли учетной записи службы. Чтобы ограничить доступ пользователей, не назначайте для них никакую роль. Вместо этого они должны наследовать разрешения, назначенные их группе.
Группа. Чтобы ограничивать доступ к определенным функциональным областям, назначайте разрешения на уровне групп. Члены группы наследуют разрешения, назначенные группе. Ограничение доступа требует изменения разрешений, предоставленных группе Каждый, которая по умолчанию имеет все разрешения.
Объект. Помимо использования ролей и групп, можно ограничивать доступ на изменение, просмотр и управление безопасностью путей выпуска и шаблонов выпуска. Это можно сделать с помощью вкладки «Безопасность» пути выпуска и с помощью страницы «Свойства» шаблона выпуска.
Утверждающие и проверяющие. Утверждающие и проверяющие должны подписывать каждый шаг или этап выпуска. Утверждающие и проверяющие назначаются при настройке пути выпуска. Все утверждающие и проверяющие должны быть добавлены в качестве пользователей или членов группы в Release Management.
Release Management определяет одну группу по умолчанию (Каждый), к которой принадлежат все учетные записи, добавляемые в Release Management. Кроме того, отдельные разрешения предоставляются ролям менеджера выпусков и пользователя службы.
Управление разрешениями Release Management осуществляется через клиент Release Management. Чтобы задать эти разрешения, откройте меню, указанное в столбце Где задается. Дополнительные сведения о том, как задавать эти разрешения, см в разделе Добавление пользователей, групп и прав доступа в Release Management. Указания по установке Release Management см. здесь.
Имя разрешения или роль пользователя |
Где задается |
Описание |
Каждый |
Роль диспетчера выпусков |
Роль пользователя службы |
---|---|---|---|---|---|
Release Manager |
Администрирование > страницы «Мой профиль» и «Новый пользователь» |
Могут администрировать сервер Release Management Server, управлять подключением между TFS и Release Management и управлять следующими объектами:
Кого стоит добавить: пользователей, которые администрируют сервер Release Management. |
![]() |
||
Пользователь службы |
Администрирование > страницы «Мой профиль» и «Новый пользователь» |
Могут управлять развертываниями и пулами веб-приложений. Что стоит добавить: идентификаторы учетных записей служб, назначенные для запуска пулов серверных приложений и службы Windows агентов развертывания, а также для мониторинга служб Windows средствами Release Management. |
![]() |
||
Просмотр |
Настроить приложения > Шаблон выпуска > Свойства Настроить пути > Пути выпусков |
Могут просматривать шаблоны выпуска или пути выпуска и при необходимости предоставлять доступ к определенным шаблонам выпуска и путям выпуска конкретным пользователям. Кого стоит добавить: пользователей и группы, которым необходимо просматривать определенные шаблоны выпуска или пути выпуска, но не изменять их. |
![]() |
![]() |
![]() |
Edit |
Настроить приложения > Шаблон выпуска > Свойства Настроить пути > Пути выпусков |
Могут изменять шаблоны выпуска или пути выпуска и определять, какие пользователи могут изменять определенные шаблоны выпуска и пути выпуска для конкретных пользователей. Кого стоит добавить: пользователей и группы, которым необходимо редактировать определенные шаблоны выпуска или пути выпуска. |
![]() |
![]() |
![]() |
Можно осуществить выпуск |
Настроить приложения > Шаблон выпуска > Свойства |
Могут инициировать выпуск и указать, какие пользователи могут инициировать выпуск из шаблонов выпуска, которые они могут просматривать. Кого стоит добавить: пользователей и группы, которые будут инициировать выпуск. С помощью данного разрешения вы можете указать, какие пользователи могут инициировать выпуск из шаблонов выпуска, которые они могут просматривать. |
![]() |
![]() |
![]() |
Управление безопасностью |
Настроить приложения > Шаблон выпуска > Свойства Настроить пути > Пути выпусков |
Могут управлять тем, какие группы имеют разрешения на просмотр, изменение шаблонов выпуска и путей выпуска, а также на управление ими. Кого стоит добавить: пользователей и группы, которые будут управлять тем, какие группы имеют разрешения на просмотр, изменение шаблонов выпуска и путей выпуска, а также на управление ими. С этим разрешением создатели шаблонов выпуска и путей выпуска могут определять, кто может просматривать, редактировать и выпускать конкретные шаблоны и пути. |
![]() |
![]() |
![]() |
Можно создать шаблон выпуска |
Настроить приложения > Шаблон выпуска |
Могут определять шаблоны выпусков. Без этого разрешения кнопка Создать на вкладке Настроить приложения > Шаблон выпуска скрыта. Кого стоит добавить: пользователей и группы, которым требуется создавать, запускать или утверждать выпуски. |
![]() |
![]() |
![]() |
Можно создать путь выпуска |
Настроить пути > Пути выпусков |
Могут определять этапы, процесс утверждения и безопасность путей выпуска. Без этого разрешения кнопка Создать на вкладке Настроить пути > Пути выпусков скрыта. Кого стоит добавить: пользователей и группы, которым требуется управлять конфигурацией выпуска, используемой при развертывании приложений. |
![]() |
![]() |
![]() |
Можно управлять средой |
Настроить пути > Среды |
Могут определять этапы, из которых состоит путь выпуска, а также задавать серверы и параметры безопасности для каждого этапа. Без этого разрешения вкладка Настроить пути > Среды скрыта. Кого стоит добавить: пользователей и группы, которым требуется управлять серверами и средами, используемыми для определения путей выпуска. |
![]() |
![]() |
![]() |
Можно управлять сервером |
Настроить пути > Сервер |
Могут определять пути выпуска для развертывания приложений в вашей системе. Это разрешение поддерживает доступ к определению использования серверов для развертывания приложений на тестовых, промежуточных и рабочих серверах. Без этого разрешения вкладка Настроить пути > Сервер скрыта. Кого стоит добавить: пользователей и группы, которые будут определять пути выпуска для развертывания приложений в системе. Это разрешение поддерживает доступ к определению используемых серверов для развертывания приложений на тестовых, промежуточных и рабочих серверах. |
![]() |
![]() |
![]() |
Можно управлять инвентаризацией |
Инвентаризация > Действия и инструменты |
Могут определять настраиваемые средства и действия для развертывания приложений в вашей системе. С данным разрешением они могут просматривать, изменять и создавать действия и инструменты. См. раздел Действия выпуска по развертыванию приложения для Release Management. Без данного разрешения вкладка Инвентаризация скрыта. Кого стоит добавить: пользователей и группы, которые будут определять пользовательские инструменты и действия для развертывания приложений в системе. С данным разрешением они могут просматривать, изменять и создавать действия и инструменты при развертывании приложений. |
![]() |
![]() |
![]() |
Можно использовать специальный инструмент в действиях и компонентах |
Настроить приложения > Компонент > Развертывание Настроить приложения > Шаблон выпуска > Компонент > Развертывание |
Могут редактировать поля Команда и Аргументы, когда выбран вариант Нет инструмента. Без данного разрешения пользователи не могут изменять эти поля. Кого стоит добавить: пользователей и группы, которые будут определять пути выпуска или шаблоны выпуска или которые будут инициировать выпуски. Это позволяет им редактировать поля Команда и Аргументы, когда выбран вариант Нет инструмента. |
![]() |
![]() |
![]() |
Изменить значения и целевые серверы |
Настроить приложения > Шаблон выпуска |
Могут изменять последовательность развертывания и переменные конфигурации отдельных выпусков и этапов. Без этого разрешения информация этапа доступна только для чтения. Кого стоит добавить: пользователей и группы, которые будут определять пути выпуска или шаблоны выпуска или которые будут инициировать выпуски. Это позволяет им изменять последовательность развертывания и переменные конфигурации развертывания для конкретных выпусков или этапов. |
![]() |
![]() |
![]() |
Изменить утверждения и среду |
Настроить пути > Пути выпусков > Этапы |
Могут изменять утверждения и среды для отдельных этапов. Без этого разрешения информация этапа доступна только для чтения. Кого стоит добавить: пользователей и группы, которые будут определять шаблоны выпуска или пути выпуска. Это позволит им изменять утверждения и среды для определенных этапов. Без данного разрешения сведения об этапах доступны только для чтения. |
![]() |
![]() |
![]() |
Вопросы и ответы
В. В чем разница между разрешениями и уровнями доступа?
О. Некоторые функции в Team Foundation Server доступны только пользователям, имеющим для них соответствующий уровень лицензирования. Управление доступом к этим функциям осуществляется не разрешениями, а членством в группах лицензирования для Team Web Access. См. раздел Изменение уровней доступа.
Вопрос. Какие разрешения назначаются администраторам команд?
Ответ. Администраторы команд получают несколько разрешений на основе ролей, которые описаны здесь.
Вопрос. Какие разрешения сопоставлены с оповещениями?
Ответ. Разрешения пользовательского интерфейса, сопоставленные с оповещениями, на которые можно подписаться посредством TWA, отсутствуют.
По умолчанию все участники могут подписаться на оповещения для самих себя. Администраторы коллекции проектов и администраторы проектов либо пользователи или группы с разрешением «Изменить сведения на уровне коллекции» или «Изменить сведения на уровне проекта» могут задавать оповещения для других пользователей или для команды.
Для управления разрешениями оповещений можно использовать TFSSecurity на уровне коллекции. Служба событий Team Foundation обеспечивает гибкость и расширяемость.
Действие TFSSecurity |
Пространство имен TFSSecurity |
Описание |
Администраторы коллекции проектов и учетные записи службы коллекции проектов |
---|---|---|---|
CREATE_SOAP_SUBSCRIPTION |
EventSubscription |
Могут создать подписку на веб-службу на базе SOAP. |
![]() |
GENERIC_READ |
EventSubscription |
Могут просмотреть события подписки, определенные для командного проекта. |
![]() |
GENERIC_WRITE |
EventSubscription |
Могут создать оповещения для других пользователей или для команды. |
![]() |
UNSUBSCRIBE |
EventSubscription |
Могут отменить подписку на события. |
![]() |
Вопрос. Какие дополнительные функции и средства используют группы?
Ответ. Следующие функции используют встроенные и настраиваемые группы TFS:
Запросы рабочих элементов: операторы «в группе» и «не в группе»
Атрибут дочернего XML-элемента поля (определение): для атрибутов
Атрибут дочернего XML-элемента поля (рабочий процесс): для атрибутов
В. Что такое допустимый пользователь?Как заполняются группы допустимых пользователей?
О. Когда вы добавляете учетные записи пользователей напрямую в группу TFS или через группу Windows, они автоматически добавляются в одну из групп допустимых пользователей.
Сервер\Допустимые пользователи Team Foundation: все участники, добавленные в группы уровня сервера.
Имя коллекции проектов\Допустимые пользователи коллекции проектов: все участники, добавленные в группы уровня коллекции проектов.
Имя командного проекта\Допустимые пользователи проекта: все участники, добавленные в группы уровня проекта.
Разрешения по умолчанию, назначаемые этим группам, в основном ограничены чтением: так, это может быть Просмотр ресурсов сборки, Просмотр сведений уровня проекта и Просмотр сведений уровня коллекции.
Это значит, что все пользователи, добавленные в один командный проект, смогут видеть объекты в других командных проектах коллекции. Если нужно ограничить доступ на просмотр, задайте разрешения для узла пути областей. Дополнительные сведения см. в разделе Ограничение доступа к функциям и задачам.
Если удалить разрешение на просмотр информации на уровне экземпляров для такой группы или задать для него значение «Запретить», пользователи в этой группе не будут иметь доступа к командному проекту, коллекции или развертыванию, в зависимости от выбранной группы.
Кроме того, элемент VALIDUSER можно использовать для управления доступом на отслеживание рабочих элементов.
В. Как управлять разрешениями на доступ к отчетам на портале проекта?
О. Сведения о задании разрешений в службах Reporting Services и Продукты SharePoint для пользователей Team Foundation Server см. в разделах Задание разрешений администратора для коллекций командных проектов и Задание разрешений администратора для Team Foundation Server.
Пошаговые примеры создания настраиваемых групп, настройки разрешений для управления доступом к ресурсам и других параметров см. в разделе Ограничение доступа к функциям и задачам.