Definieren von Gruppen, Teams und Berechtigungen mit dem Plug-In für Gruppen und Berechtigungen
Sie können Sicherheitsgruppen festlegen, um den Zugriff auf Funktionsbereiche innerhalb eines Teamprojekts zu steuern. Neben den standardmäßigen Sicherheitsgruppen in Visual Studio Team Foundation Server können Sie die Anfangsgruppen, die Gruppenelemente sowie die Sicherheitsberechtigungen eines Teamprojekts konfigurieren, indem Sie das Plug-In für Gruppen und Berechtigungen anpassen. Mit diesem Plug-In können Sie Gruppen und Teams definieren, Gruppen und Benutzer als Mitglieder zu Gruppen hinzufügen und den Gruppen Berechtigungen erteilen.
In diesem Thema wird die Syntaxstruktur des groups-, iterationPath-, members-, permissions- und des teamsettings-Elements beschrieben, die in der Datei für das Plug-In für Gruppen und Berechtigungen verwendet werden. Weitere Informationen zum Verwenden dieser Elemente finden Sie unter Konfigurieren von anfänglichen Gruppen, Teams, Mitgliedern und Berechtigungen.
Name und Speicherort des Gruppen-Plug-Ins
Das Plug-In für Gruppen und Berechtigungen wird von der Plug-In-Datei "GroupsandPermissions.xml" definiert, die der in der Datei "Gss.xsd" definierten Schemadefinition entsprechen muss. Die Schemadateien für Prozessvorlagen stehen auf der folgenden Seite der Microsoft-Website zum Download bereit: Prozessvorlagen- und Arbeitsaufgabenschemas für Visual Studio Team Foundation.
In der folgenden Tabelle sind die Namen der Datei, des Ordners und des Plug-Ins für die Prozessvorlagen für Microsoft Solutions Framework (MSF) zusammengefasst.
Dateiname: |
GroupsandPermissions.xml |
Ordnername: |
Gruppen und Berechtigungen |
Plug-In-Name: |
Microsoft.ProjectCreationWizard.Groups |
Hinweis
Sie können die Namen der XML-Datei und des Ordners, jedoch nicht den Namen des Plug-Ins ändern.Visual Studio Team Foundation Server enthält keinen Mechanismus für die Bereitstellung clientseitiger Plug-Ins, Richtlinien oder anderer Änderungen.Wenn Sie diese Art von Funktion bereitstellen möchten, verwenden Sie Ihr eigenes Verteilungs- und Installationsprogramm.
Im Plug-In für Gruppen und Berechtigungen geben Sie mindestens eine Aufgabe und ihre Abhängigkeiten innerhalb des taskXml-Elements an. Normalerweise geben Sie eine Aufgabe pro Sicherheitsgruppe an, die für den Prozess erstellt werden soll. Weitere Informationen zur Angabe von Aufgaben finden Sie unter Definieren der Aufgaben zum Verarbeiten eines Plug-Ins.
Definieren von Gruppen
Mit dem group-Element geben Sie eine neue Sicherheitsgruppe in Team Foundation Server an.
<group name="GroupName" description="GroupDescription"></group>
Im folgenden Beispiel wird gezeigt, wie eine Gruppe mit dem Namen Reader erstellt wird:
<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>
Definieren von Mitgliedern
Mit dem member-Element weisen Sie eine Gruppe als Mitglied einer Sicherheitsgruppe in Team Foundation Server zu.
<member name="MemberName" ></member>
Hinweis
Eine Gruppe, die ein Team ist (isTeam="true"), kann kein Mitglied einer Gruppe sein.
Im folgenden Beispiel wird gezeigt, wie TestGroup1 als Mitglied von TestGroup2 hinzugefügt wird.
<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>
Definieren von Teams und Team-Einstellungen
Innerhalb der standardmäßigen Plug-In-Datei für Gruppen und Berechtigungen erstellt das @defaultTeam-Makro das standardmäßige Team unter dem Stammbereichspfad. Sie können diese Struktur ändern, indem Sie die zusätzlichen Bereichspfade innerhalb der Klassifizierungs-Plug-In-Datei einschließen. Mit dem teamsettings-Element können Sie die Iterationen vorkonfigurieren, die einem Team zugewiesen werden. Das Plug-In verwendet den folgenden Codeausschnitt. In diesem Beispiel werden drei Iterationen für das standardmäßige Team definiert.
Wichtig
Sie müssen Iterationspfade zuweisen, die den in der Klassifizierungs-Plug-In-Datei definierten Pfaden entsprechen.Siehe Definieren der anfänglichen Bereiche und Iterationen im Klassifizierungs-Plug-In.
<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>
Sie können auch zusätzliche Teams innerhalb eines Teamprojekts definieren. Definieren Sie hierzu eine Gruppe und weisen Sie das isTeam-Attribut zu true zu. Das folgende Beispiel zeigt, wie ein Team und dazugehörige Berechtigungen, Mitglieder und ursprüngliche Sprint-Zuweisungen definiert werden. Geben Sie die standardmäßigen Teameinstellungen für ein Teamprojekt an.
<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>
Definieren von Berechtigungen
Sie müssen für jede Gruppe, die Sie erstellen, Berechtigungen angeben. Zu diesem Zweck verwenden Sie das permission-Element.
<permission name="PermissionName" class="ClassName" allow="true | false"/>
Im folgenden Beispiel wird veranschaulicht, wie Sie der Sicherheitsgruppe Readers Berechtigungen gewähren, damit Mitglieder Informationen über ein Teamprojekt anzeigen, jedoch nicht ändern können.
<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>
Gruppenelementverweis
In der folgenden Tabelle werden die Elemente beschrieben, mit denen Sie die Anfangsgruppen und -berechtigungen für ein Teamprojekt definieren. Diese Elemente werden innerhalb eines taskXml-Containerelements in der Plug-In-Datei für Gruppen und Berechtigungen angegeben. Informationen zu diesem Element finden Sie unter Definieren der Aufgaben zum Verarbeiten eines Plug-Ins.
Warnung
In der Schemadatei "Gss.xsd" wird nicht das property-Element oder das properties-Element definiert.Wenn Sie die Prozessvorlage hochladen, überprüft der Prozessvorlagen-Manager diese Elemente, bevor sie in Team Foundation Server gespeichert werden.
Das groups-Element und das group -Element (Gruppen und Berechtigungen) unterscheiden sich vom groups-Element und group-Element (Prozessvorlage).Informationen zum letzten Elementepaar finden Sie unter Prozessvorlagen-XML-Elementverweis.
group |
Für jedes Attribut gelten die folgenden Definitionen:
|
group ist ein optionales untergeordnetes Element von groups und Children. Definiert eine Gruppe oder ein Team und die dazugehörigen Berechtigungen und Mitglieder. |
groups |
|
groups ist ein erforderliches untergeordnetes Element von taskXml für das Plug-In für Gruppen und Berechtigungen. Enthält die Gruppen- und Berechtigungsdefinitionen. |
iterationPath |
|
iterationPath ist ein erforderliches untergeordnetes Element von iterationPaths. Gibt einen Teammeilenstein an. |
iterationPaths |
|
iterationPaths ist ein optionales untergeordnetes Element von teamsettings. Gibt Teammeilensteine an. |
member |
Informationen zum Angeben von Standardgruppen finden Sie auf der Seite zu In Team Foundation Server definierte Gruppenmakros und Standardgruppen. |
member ist ein erforderliches untergeordnetes Element von members. Gibt den Namen einer Gruppe an, die Sie als Mitglied einer anderen Gruppe hinzufügen. Sie können Gruppen erstellen und sie automatisch mit Standardgruppen in Team Foundation Server, zuvor definierten Projektgruppen sowie mit Gruppen und Benutzern in Active Directory auffüllen. |
members |
|
members ist ein optionales untergeordnetes Element von group. Gibt die Sammlung der Member an, die der Gruppe hinzugefügt werden sollen. |
permission |
Dabei gelten die folgenden Definitionen für jedes Attribut:
|
permission ist ein erforderliches untergeordnetes Element von permissions. Gibt die Berechtigung an, die für die Gruppe gilt. |
permissions |
|
permissions ist ein erforderliches untergeordnetes Element von group. Gibt die Berechtigungsauflistung an, die für die Gruppe gilt. |
teamsettings |
|
teamsettings ist ein optionales untergeordnetes Element von group. Konfiguriert das Teamprojekt als standardmäßiges Team und gibt optional Teammeilensteine mit dem iterationPath-Element an. |
Siehe auch
Konzepte
Konfigurieren von anfänglichen Gruppen, Teams, Mitgliedern und Berechtigungen
Steuern des Zugriffs auf Funktionsbereiche
Verwalten von Benutzern und Gruppen in TFS