Поделиться через


Определение групп, команд и разрешений с использованием подключаемого модуля групп и разрешений

Для управления доступом к функциональным областям командного проекта можно определить группы безопасности.Помимо групп безопасности, существующих в Visual Studio Team Foundation Server по умолчанию, можно настроить начальные группы командного проекта, задать членов групп и разрешения безопасности, настроив для этого подключаемый модуль групп и разрешений.С помощью подключаемого модуля, можно определить группы, группы, добавьте пользователей и группы в качестве членов в группы и предоставление разрешений на в группы.

В этом разделе описывается синтаксическая структура элементов groups, iterationPath, members, permissions и teamsettings, которые используются в файле подключаемого модуля групп и разрешений.Дополнительные сведения об использовании этих элементов см. в разделе Настройка начальных групп, команд, членов и разрешений.

Содержание раздела

  • Имя и расположение подключаемого модуля групп

  • Определение групп

  • Определение членов

  • Определение команды и параметры команды

  • Определение разрешений

  • Справочник по элементу Groups

Имя и расположение подключаемого модуля групп

Подключаемый модуль групп и разрешений определяется файлом подключаемого модуля GroupsandPermissions.xml, который должен удовлетворять определению схемы, заданному в файле Gss.xsd.Файлы схемы для шаблонов процессов можно загрузить на следующей странице веб-сайта Майкрософт: Process Template and Work Item Schemas for Visual Studio Team Foundation.

В следующей таблице приведены имена файла, папки и подключаемого модуля для шаблонов процессов Microsoft Solutions Framework (MSF).

Имя файла:

GroupsandPermissions.xml

Имя папки:

Группы и разрешения

Имя подключаемого модуля:

Microsoft.ProjectCreationWizard.Groups

ПримечаниеПримечание

Имена XML-файла и папки можно изменить, а имя подключаемого модуля изменить нельзя.Visual Studio Team Foundation Server не содержит механизма развертывания клиентских подключаемых модулей, политик или других модификаций.Если требуется развернуть функциональность этого типа, необходимо использовать собственную программу распространения и установки.

В подключаемом модуле групп и разрешений в элементе taskXml задаются одна или несколько задач и зависимости между ними.Чтобы создать собственный проект, обычно указывается одна задача на группу безопасности.Дополнительные сведения об определении задач см. в разделе Определение задач для подключаемого модуля процесса.

К началу

Определение групп

Элемент group используется для задания новой группы безопасности на сервере Team Foundation Server.

<group name="GroupName" description="GroupDescription"></group>

В следующем примере показано создание группы с именем Reader.

<task id="GroupCreation1" 
      name="Create Groups and Permissions" 
      plugin="Microsoft.ProjectCreationWizard.Groups" 
      completionMessage="Groups and Permissions created.">
   <taskXml>
      <groups>
         <group name="Readers"
                description="A group for users who have read access across the project">
            <permissions>
               <!-- permissions -->
            </permissions>
         </group>
      </groups>
   </taskXml>
</task>

К началу

Определение членов

Элемент member используется для назначения группы в качестве члена группы безопасности на сервере Team Foundation Server.

<member name="MemberName" ></member>
ПримечаниеПримечание

Команда, команда (isTeam="true") не может быть членом группы.

В следующем примере показано добавление группы TestGroup1 в качестве члена группы TestGroup2.

<task id="GroupCreation1" 
    <taskXml>
      <groups>
        <group name="TestGroup1" description="Test group 1.  Contains no members out of the box.">
          <permissions>
            <permission name="GENERIC_READ" class="PROJECT" allow="true" />
          </permissions>
        </group>
        <group name="TestGroup2" description="Test group 2.  Contains TestGroup1 and Project Administrators.">
          <permissions>
            <permission name="GENERIC_READ" class="PROJECT" allow="true" />
          </permissions>
          <members>
            <member name="TestGroup1" />
            <member name="$$PROJECTADMINGROUP$$" />
          </members>
        </group>
      </groups>
    </taskXml>
</task>

К началу

Определение команды и параметры команды

Внутри группы по умолчанию и файл подключаемого модуля разрешений, макрос @defaultTeam создает группу по умолчанию в пути к области корневого элемента.Можно изменить эту структуру, включив дополнительные пути областей в файле подключаемого модуля классификации.С помощью элемента teamsettings можно предварительно настроить итерации, к группе.Подключаемый модуль используется следующий фрагмент кода.В этом примере 3 итерации, определенных для группы по умолчанию.

Важное примечаниеВажно

Необходимо присвоить пути итерации, соответствующие пути присвоенным в файле подключаемого модуля классификации.Дополнительные сведения см. в разделе Определение начальных областей и итераций в подключаемом модуле классификации.

<group name="@defaultTeam">
   <permissions>
      <permission name="GENERIC_READ" class="PROJECT" allow="true" />
   </permissions>
   <members>
      <member name="@creator"/>
   </members>
   <teamSettings areaPath="Area">
      <iterationPaths backlogPath="Iteration">
         <iterationPath path="Iteration 1" />
         <iterationPath path="Iteration 2" />
         <iterationPath path="Iteration 3" />
      </iterationPaths>
   </teamSettings>
</group>

Можно также указать дополнительные команды в рамках командного проекта.Для этого определение группы и присвоить атрибуту isTeam значение true.В следующем примере показано, как задать группы и его разрешения, члены и начальные назначения спринта.Задайте параметры группы по умолчанию для командного проекта.

<group name="Dream Team" isTeam="true" description="Next generation work">
   <permissions>
      <permission name="GENERIC_READ" class="PROJECT" allow="true" />
   </permissions>
   <members>
      <member name="@creator"/>
   </members>
   <teamSettings areaPath="Area">
      <iterationPaths backlogPath="Iteration">
         <iterationPath path="Iteration 1" />
         <iterationPath path="Iteration 2" />
         <iterationPath path="Iteration 3" />
      </iterationPaths>
   </teamSettings>
</group>

Определение разрешений

Для каждой создаваемой группы необходимо задать разрешения.Для этого используется элемент permission.

<permission name="PermissionName" class="ClassName" allow="true | false"/>

В следующем примере показано предоставление разрешений группе безопасности Reader, чтобы члены группы могли просматривать информацию о командном проекте, но не могли изменять ее.

<group name="Readers" description="A group for users who have read access across the project">
   <permissions>
     <permission name="GENERIC_READ" class="PROJECT" allow="true" />
     <permission name="GENERIC_READ" class="CSS_NODE" allow="true" />
     <permission name="WORK_ITEM_READ" class="CSS_NODE" allow="true" />
   </permissions>
</group>

К началу

Справочник по элементу Groups

В следующей таблице описаны элементы, используемые для определения начальных групп и разрешений командного проекта.Эти элементы задаются в элементе-контейнере taskXml в файле подключаемого модуля групп и разрешений.Дополнительные сведения об этом элементе см. в разделе Определение задач для подключаемого модуля процесса.

Предупреждающее замечаниеВнимание

В файле схемы Gss.xsd не определены элементы property и properties.При передаче шаблона процесса диспетчер шаблонов процессов проверяет эти элементы, прежде чем сохранить их в Team Foundation Server.

Элементы groups и group (группы и разрешения) отличаются от элементов groups и group (шаблон процесса).Дополнительные сведения о последней паре элементов см. в разделе Справка по XML-элементу ProcessTemplate.

group

<group name="GroupName" isTeam="true | false" description="GroupDescription">
   <permissions> . . . </permissions>
   <members> . . . </members>
</group>

Следующие определения применяются для каждого атрибута.

  • name: обязательный.Указывает имя группы.Длина имени группы должна составлять от 1 до 255 знаков.

  • isTeam: необязательный.Определяет группу в команде, которая поддерживает мелкие группы для упорядочения их работы в рамках командного проекта.

  • description: Обязательный команда не группы.Задает описание группы.Описание отображается внутри страницы безопасности Team Web Access.

group — необязательный дочерний элемент элементов groups и Children.

Определяет группу или группу и его разрешения и элементы.

groups

<groups>
   <group> . . . </group>
</groups>

groups — обязательный дочерний элемент элемента taskXml для подключаемого модуля групп и разрешений.

Содержит определения группы и разрешений.

iterationPath

<iterationPath path="IterationName" />

iterationPath является обязательным дочерним элементом элемента iterationPaths.

Указывает этапы команды.

iterationPaths

<iterationPaths backlogPath="BacklogPathName">
. . .      </iterationPaths>

iterationPaths является необязательным дочерним элементом для teamsettings.

Указывает этапы команды.

member

<member name="MemberName" ></member>

Сведения об указании групп по умолчанию см. в разделе Макросы групп и группы, определенные по умолчанию в Team Foundation Server.

member является обязательным дочерним элементом элемента members.

Задает имя группы, создаваемой как участник другой группы.Можно создавать группы и автоматически заполнять их группами по умолчанию Team Foundation Server, ранее определенными группами проектов, а также группами и пользователями Active Directory.

members

<members>
   <member> . . . </member>
</members>

members является необязательным дочерним элементом для group.

Задает коллекцию членов, добавляемых в группу.

permission

<permission name="PermissionName" class="ClassName" allow="true | false" />

Здесь к каждому атрибуту применяются следующие определения:

  • name: обязательный.Задает имя разрешения.Дополнительные сведения см. в таблице в разделе Настройка начальных групп, команд, членов и разрешений, где описываются все сочетания классов и имен, которые можно указывать в качестве разрешений;

  • class: обязательный.Определяет класс или область, для которых дается групповое разрешение.Допустимы следующие значения: NAMESPACE (уровень коллекции), PROJECT (уровень проекта), CSS_NODE (уровень области) и ITERATION_NODE (уровень итерации).

  • allow: необязательный.Имеет значение true или false, которое показывает, включено ли разрешение.

permission является обязательным дочерним элементом элемента permissions.

Задает разрешение, применяемое к группе.

permissions

<permissions >
   <permission> . . . </permissions>
</permissions >

permissions является обязательным дочерним элементом элемента group.

Задает коллекцию разрешений, применяемых к группе.

teamsettings

<teamSettings areaPath="Area">
. . .
</teamSettings>

teamsettings является необязательным дочерним элементом для group.

Настраивает командный проект как группу по умолчанию, и при необходимости указывает командные этапы с элементом iterationPath.

К началу

См. также

Основные понятия

Настройка начальных групп, команд, членов и разрешений

Управление доступом к функциональным областям

Настройка пользователей, групп и разрешений

Настройка функциональных областей внутри шаблона процесса

Другие ресурсы

Управление разрешением на создание или изменение рабочих элементов

Журнал изменений

Дата

Журнал

Причина

Август 2012 г.

Исправлены сведения об определении группы и добавлены сведения об атрибуте isTeam используется для задания параметра в команде.

Исправление ошибки содержимого.