Konfigurieren von anfänglichen Gruppen, Teams, Mitgliedern und Berechtigungen
Mit der Plug-In-Datei für Gruppen und Berechtigungen können Sie die anfänglichen Sicherheitseinstellungen für ein Teamprojekt konfigurieren. Zu diesem Zweck definieren Sie Aufgaben zum Erstellen von Sicherheitsgruppen, Schachteln von Gruppen, Definieren von Gruppen als Teams, Konfigurieren der anfänglichen Teameinstellungen, Zuweisen von Mitgliedern zu Gruppen und Gewähren oder Verweigern von bestimmten Berechtigungen für jede Gruppe. Zusätzlich zum Ausführen dieser Aufgaben können Sie die anfänglichen Sicherheitseinstellungen auf Auflistungsebene und Projektebene sowie nach Projektklassifizierung angeben.
Microsoft-Prozessvorlagen weisen Standardgruppen mehrere Berechtigungen zu. Sie können diese Zuweisungen ändern, indem Sie die Plug-In-Datei für Gruppen und Berechtigungen anpassen. Weitere Informationen zu diesem Plug-In finden Sie unter Definieren von Gruppen, Teams und Berechtigungen mit dem Plug-In für Gruppen und Berechtigungen.
In diesem Thema
Definieren und Zuweisen von Berechtigungen zu Gruppen
Gruppieren von Makros und Standardgruppen
Schachteln von Gruppen und Zuweisen von Mitgliedern zu Gruppen
Definieren eines Teams
Zuweisen von Berechtigungen auf Auflistungsebene
Zuweisen von Berechtigungen auf Projektebene
Zuweisen von Berechtigungen zum Steuern von Bereichspfaden
Zuweisen von Berechtigungen zum Steuern von Iterationspfaden
Informationen zum Konfigurieren der anfänglichen Sicherheitseinstellungen für die Funktionsbereiche eines Teamprojekts, z. B. Team Foundation Build, Team Foundation-Versionskontrolle und Visual Studio Lab Management, finden Sie unter Steuern des Zugriffs auf Funktionsbereiche.
Informationen zum Anpassen der Typen von Arbeitsaufgaben, um den Zugriff auf Gruppen oder Benutzer zu gewähren oder zu verweigern, finden Sie unter Anwenden einer Regel auf ein Arbeitsaufgabenfeld.
Weitere Informationen zum Verwalten von Benutzern und Gruppen und zum Steuern des Zugriffs für Visual Studio Application Lifecycle Management (ALM) finden Sie unter Verwalten von Benutzern und Gruppen in TFS.
Definieren und Zuweisen von Berechtigungen zu Gruppen
Mit dem group-Element und dem member-Element können Sie in Team Foundation Server eine neue Sicherheitsgruppe angeben und dieser Gruppe Mitglieder hinzuzufügen. Mit dem group permission-Element können Sie einer Gruppe und Mitgliedern dieser Gruppe Berechtigungen zuweisen. Sie müssen jedes dieser Elemente in den entsprechenden Containerelementen groups, members und permissions kapseln. Für jedes dieser Elemente wird die folgende Syntaxstruktur verwendet:
<group name="Group Name" description="Description of Group"></group>
<member name="MemberName"></member>
<permission name="PermissionName" class="ClassName" allow="True | False"/>
In der folgenden Tabelle werden die Attribute für die Elemente group, member und group permission beschrieben. Sie verwenden diese Elemente nur in der Plug-In-Datei für Gruppen und Berechtigungen.
Element |
Attribut |
Beschreibung |
---|---|---|
group |
name |
Gibt den Namen der Gruppe an, die Sie erstellen. |
isTeam |
Gibt an, ob die Gruppe ein Team ist (true) oder nicht (false). |
|
description |
Beschreibt anderen Benutzern den Zweck der Gruppe. |
|
member |
name |
Gibt den Namen einer Gruppe an, die Sie als Mitglied einer anderen Gruppe hinzufügen. Sie können Gruppen erstellen und sie mit jedem der folgenden Typen von Mitgliedern vorab auffüllen:
Informationen zu dem beim Angeben von Standardgruppen zu verwendenden Format finden Sie unter Gruppenmakros und Standardgruppen weiter unten in diesem Thema. |
permission |
name |
Identifiziert die anzuwendende Berechtigung. Eine Liste der unterstützten Berechtigungen finden Sie weiter unten in diesem Thema in den folgenden Abschnitten:
|
class |
Identifiziert die Klasse oder den Bereich, in der bzw. dem die Berechtigung gewährt wird. Folgende Werte sind gültig:
|
|
allow |
Gibt mit dem Wert true oder false an, ob die Berechtigung gewährt oder verweigert wird. |
|
path |
Identifiziert den Knoten des Bereichs- oder Iterationspfads, in dem die Berechtigung angewendet wird. Dieses Attribut ist nur gültig, wenn class auf CSS_NODE oder ITERATION_NODE festgelegt ist. |
Gruppieren von Makros und Standardgruppen
In der folgenden Tabelle werden die Makros aufgeführt, mit denen Sie eine Standardgruppe angeben können, die in Team Foundation Server definiert ist.
Hinweis
Sie können die Makros in der folgenden Tabelle nur im Plug-In für Gruppen und Berechtigungen angeben.Sie können diese Makros nicht angeben, wenn Sie Berechtigungen mit den Plug-Ins für Build, Versionskontrolle oder Lab-Management zuweisen.
Standardgruppen |
Makro |
---|---|
Projektauflistungsadministratoren |
[SERVER]\$$PROJECTCOLLECTIONADMINGROUP$$ [SERVER]\$$TEAMFOUNDATIONADMINGROUP$$ $$COLLECTIONADMINGROUP$$ |
Dienstkonten für die Projektauflistung |
[SERVER]\$$PROJECTCOLLECTIONSERVICESGROUP$$ |
Builddienstkonten für die Projektauflistung |
[SERVER]\$$PROJECTCOLLECTIONBUILDSERVICESGROUP$$ $$COLLECTIONBUILDSERVICESGROUP$$ |
Projektauflistungsbuild-Administratoren |
[SERVER]\$$PROJECTCOLLECTIONBUILDADMINSGROUP$$ $$COLLECTIONBUILDADMINISTRATORSGROUP$$ |
Projektadministratoren |
$$PROJECTADMINGROUP$$ [$$PROJECTNAME$$]\$$PROJECTADMINGROUP$$ [$$PROJECTNAME$$]\Generatoren |
Projektersteller |
$$CREATOR_OWNER$$ @creator |
Standardteam |
@defaultTeam |
Beispiel: Schachteln von Gruppen und Zuweisen von Mitgliedern zu Gruppen
Im folgenden Beispiel wird gezeigt, wie die Gruppen TestGroup1, TestGroup2 und TestGroup3 konfiguriert werden. In diesem Beispiel wird TestGroup1 als Mitglied von TestGroup2 hinzugefügt. Damit dieser Code gültig ist, müssen Sie TestGroup1 definieren, bevor Sie TestGroup2 definieren.
<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>
<group name="TestGroup3" description="Test group 3. Contains DOMAIN\USER, DOMAIN\GROUP, Project Administrators, and Project Collection Build Service Accounts.">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
</permissions>
<members>
<member name="DOMAIN\USER" />
<member name="DOMAIN\GROUP" />
<member name="[$$PROJECTNAME$$]\$$PROJECTADMINGROUP$$" />
<member name="[SERVER]\$$PROJECTCOLLECTIONBUILDSERVICESGROUP$$" />
</members>
</group>
</groups>
</taskXml>
</task>
Definieren eines Teams
Neben dem Erstellen von Gruppen können Sie eine Gruppe als Team zuweisen. Durch das Erstellen eines Teamprojekts wird auch ein Standardteam erstellt. Wenn Sie über mehrere Teams verfügen, die ihre Arbeit getrennt von den anderen Teams organisieren möchten, können Sie diese Teams entweder in der Plug-In-Datei für Gruppen und Berechtigungen definieren, oder Sie können sie nach Erstellung des Teamprojekts konfigurieren. Siehe Hinzufügen eines weiteren Teams oder einer Teamhierarchie.
Das folgende Beispiel zeigt, wie Sie eine Gruppe als Team konfigurieren. In diesem Beispiel geben Sie die Gruppe "Dream Team" als Team an und fügen den Teamprojektersteller als Mitglied des Teams hinzu. Alle Iterationspfade, die Sie für das Team angeben, müssen in der Plug-In-Datei für Klassifizierungen definiert sein. Siehe Definieren der anfänglichen Bereiche und Iterationen im Klassifizierungs-Plug-In.
<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="Release 1\Sprint 1" />
<iterationPath path="Release 1\Sprint 2" />
<iterationPath path="Release 1\Sprint 3" />
<iterationPath path="Release 1\Sprint 4" />
<iterationPath path="Release 1\Sprint 5" />
<iterationPath path="Release 1\Sprint 6" />
</iterationPaths>
</teamSettings>
</group>
Zuweisen von Berechtigungen auf Auflistungsebene
Sie können mit dem group permission-Element und der NAMESPACE-Klasse Berechtigungen auf Auflistungsebene zuweisen. Diese Berechtigungen steuern den Zugriff auf Ressourcen, die teamprojektübergreifend verfügbar sind. Sie können Berechtigungen auf Auflistungsebene nur für die folgenden Kategorien von Benutzern festlegen:
Benutzer und Gruppen auf Auflistungsebene, z. B. Projektauflistungsadministratoren
Gruppen auf Projektebene, die auf dem Server, auf dem Team Foundation ausgeführt wird, zur Auflistungsebene hinzugefügt wurden
Benutzerdefinierte Gruppen, die Sie erstellen und zur Auflistungsebene hinzufügen
Informationen zu dem beim Angeben von Gruppen zu verwendenden Format finden Sie unter Gruppenmakros und Standardgruppen weiter oben in diesem Thema.
Hinweis
Sie können diese Berechtigungen festlegen, indem Sie in Team Explorer mit der rechten Maustaste auf den Server klicken und Sicherheit auswählen, indem Sie die Verwaltungskonsole Team Foundation öffnen und verwenden oder indem Sie die Befehlszeilentools TFSSecurity und tf verwenden.Weitere Informationen finden Sie unter Collection-Level Groups, Ändern von Gruppen und Berechtigungen mit TFSSecurity und Permission Command.
Im folgenden Beispiel wird gezeigt, wie den Projektadministratoren für ein Teamprojekt Berechtigungen auf Auflistungsebene gewährt werden.
<group name="PROJECTADMINGROUP" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="NAMESPACE" allow="true" />
<permission name="WORK_ITEM_WRITE" class="NAMESPACE" allow="true" />
<permission name="MANAGE_LINK_TYPES" class="NAMESPACE" allow="true" />
<permission name="MANAGE_TEMPLATE" class="NAMESPACE" allow="true" />
<permission name="MANAGE_TEST_CONTROLLERS" class="NAMESPACE" allow="true" />
</permissions>
</group>
In der folgenden Tabelle werden die Berechtigungen auf Auflistungsebene beschrieben, die Sie zuweisen können.
Hinweis
Standardmäßig werden in den MSF-Prozessvorlagen keine Berechtigungen auf Auflistungsebene zugewiesen.
Berechtigung |
Beschreibung |
---|---|
DIAGNOSTIC_TRACE |
Ablaufverfolgungseinstellungen ändern. Die Ablaufverfolgungseinstellungen zum Erfassen von ausführlicheren Diagnoseinformationen über Webdienste für Team Foundation Server können geändert werden. |
CREATE_PROJECTS |
Neue Projekte erstellen. Es können Projekte in der Teamprojektsammlung erstellt werden. |
GENERIC_WRITE |
Informationen auf Auflistungsebene bearbeiten. Berechtigungen auf Auflistungsebene für Benutzer und Gruppen in der Teamprojektsammlung können bearbeitet werden. Benutzer mit dieser Berechtigung können die folgenden Aufgaben ausführen:
Darüber hinaus können Benutzer mit dieser Berechtigung Berechtigungen für die Versionskontrolle ändern, und sie haben Schreibzugriff auf alle Dateien unter Versionskontrolle, es sei denn, der Zugriff wird durch andere Berechtigungen explizit verweigert. |
MANAGE_TEMPLATE |
Prozessvorlage verwalten. Prozessvorlagen können heruntergeladen, erstellt, bearbeitet und in die Teamprojektsammlung hochgeladen werden. |
MANAGE_TEST_CONTROLLERS |
Testcontroller verwalten. Testcontroller für die Teamprojektsammlung können registriert werden, und ihre Registrierung kann aufgehoben werden. |
MANAGE_LINK_TYPES |
Linktypen für Arbeitsaufgaben verwalten. Die Typen von Links für Arbeitsaufgaben können hinzugefügt, entfernt und geändert werden. |
GENERIC_READ |
Informationen auf Auflistungsebene anzeigen. Die Mitgliedschaft in Gruppen auf Auflistungsebene und die Berechtigungen dieser Benutzer können angezeigt werden. |
Zuweisen von Berechtigungen auf Projektebene
Sie können Berechtigungen auf Projektebene in der Plug-In-Datei für Gruppen und Berechtigungen zuweisen. Sie weisen diese Berechtigungen mit dem group permission-Element und der PROJECT-Klasse zu. Diese Berechtigungen steuern den Zugriff auf die Ressourcen eines einzelnen Projekts. Sie können Zugriff auf Benutzer und Gruppen in Windows, auf Gruppen in Team Foundation und auf Gruppen gewähren, die Sie zuvor in der Plug-In-Datei für Gruppen und Berechtigungen definiert haben. Informationen zu dem beim Angeben von Gruppen zu verwendenden Format finden Sie unter Gruppenmakros und Standardgruppen weiter oben in diesem Thema.
Im folgenden Beispiel wird gezeigt, wie der Gruppe Contributors mehrere Berechtigungen für ein Teamprojekt gewährt werden.
<group name="Contributors" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="PROJECT" allow="true" />
<permission name="DELETE_TEST_RESULTS" class="PROJECT" allow="true" />
<permission name="PUBLISH_TEST_RESULTS" class="PROJECT" allow="true" />
<permission name="VIEW_TEST_RESULTS" class="PROJECT" allow="true" />
<permission name="MANAGE_TEST_ENVIRONMENTS" class="PROJECT" allow="true" />
<permission name="MANAGE_TEST_CONFIGURATIONS" class="PROJECT" allow="true" />
</permissions>
</group>
In der folgenden Tabelle werden die Berechtigungen auf Projektebene beschrieben, die Sie zuweisen können, und die Standardzuweisungen angegeben, die in den MSF-Prozessvorlagen festgelegt sind.
Berechtigung |
Beschreibung |
Leser |
Mitwirkende |
Buildadministratoren |
---|---|---|---|---|
GENERIC_READ |
Projektebeneninformationen anzeigen. Die Mitgliedschaft in Gruppen auf Projektebene und die Berechtigungen dieser Mitglieder können angezeigt werden. |
|||
VIEW_TEST_RESULTS |
Testläufe anzeigen. Testpläne in diesem Knoten können angezeigt werden. |
|||
MANAGE_TEST_CONFIGURATIONS |
Testkonfigurationen verwalten. Testkonfigurationen für das Teamprojekt können erstellt und gelöscht werden. |
|||
MANAGE_TEST_ENVIRONMENTS |
Testumgebungen verwalten. Testumgebungen für das Teamprojekt können erstellt und gelöscht werden. |
|||
PUBLISH_TEST_RESULTS |
Testläufe erstellen. Testergebnisse können hinzugefügt und entfernt und Testläufe für das Teamprojekt können hinzugefügt oder geändert werden. |
|||
DELETE_TEST_RESULTS |
Testläufe löschen. Geplante Tests für das Teamprojekt können gelöscht werden. |
|||
DELETE |
Teamprojekt löschen. Das Projekt, für das der Benutzer über diese Berechtigung verfügt, kann aus Team Foundation Server gelöscht werden. |
|||
GENERIC_WRITE |
Projektebeneninformationen bearbeiten. Berechtigungen auf Projektebene für Benutzer und Gruppen in Team Foundation Server können bearbeitet werden. |
Zuweisen von Berechtigungen zum Steuern von Bereichspfaden
Sie können mit dem group permission-Element und der CSS_NODE-Klasse Berechtigungen zuweisen, die den Zugriff auf Bereichsdefinitionen steuern. Diese Berechtigungen steuern den Zugriff auf die Klassifizierungsstruktur eines einzelnen Projekts. Sie können Zugriff auf Benutzer und Gruppen in Windows, auf Gruppen in Team Foundation und auf Gruppen gewähren, die Sie zuvor in der Plug-In-Datei für Gruppen und Berechtigungen definiert haben. Informationen zu dem beim Angeben von Gruppen zu verwendenden Format finden Sie unter Gruppenmakros und Standardgruppen weiter oben in diesem Thema.
Im folgenden Beispiel wird gezeigt, wie der Gruppe Contributors mehrere Berechtigungen für ein Teamprojekt gewährt werden.
<group name="Contributors" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="CSS_NODE" allow="true" />
<permission name="WORK_ITEM_READ" class="CSS_NODE" allow="true" />
<permission name="WORK_ITEM_WRITE" class="CSS_NODE" allow="true" />
<permission name="MANAGE_TEST_PLANS" class="CSS_NODE" allow="true" />
</permissions>
</group>
In der folgenden Tabelle werden die Berechtigungen beschrieben, die Sie zuweisen können, um den Zugriff auf die hierarchische Struktur für die Bereichs- und Iterationsknoten des Projekts zu steuern. In der Tabelle werden auch die Standardzuweisungen angegeben, die in den MSF-Prozessvorlagen festgelegt sind.
Hinweis
Für einige Vorgänge zum Nachverfolgen von Arbeitsaufgaben sind mehrere Berechtigungen erforderlich.Zum Beispiel benötigen Sie mehrere Berechtigungen, um einen Knoten zu löschen.
Berechtigung |
Beschreibung |
Leser |
Mitwirkende |
Buildadministratoren |
---|---|---|---|---|
GENERIC_READ |
Diesen Knoten anzeigen. Die Sicherheitseinstellungen für einen Bereichsknoten können angezeigt werden. |
|||
WORK_ITEM_READ |
Arbeitsaufgaben in diesem Knoten anzeigen. Einem Bereichsknoten zugewiesene Arbeitsaufgaben können angezeigt, jedoch nicht geändert werden. |
|||
WORK_ITEM_WRITE |
Arbeitsaufgaben in diesem Knoten bearbeiten. Arbeitsaufgaben, die einem Bereichsknoten zugewiesen sind, können bearbeitet werden. |
|||
MANAGE_TEST_PLANS |
Testpläne verwalten. Testpläne, die einem Bereichsknoten zugewiesen sind, können erstellt und bearbeitet werden. Wenn Testpläne nicht ausgeführt wurden, können Sie diese auch löschen. |
|||
CREATE_CHILDREN |
Untergeordnete Knoten erstellen und anordnen. Bereichsknoten können erstellt werden. Benutzer mit dieser Berechtigung und der Berechtigung GENERIC_WRITE können jeden untergeordneten Bereichsknoten verschieben oder neu anordnen. |
|||
DELETE |
Diesen Knoten löschen. Bereichsknoten können gelöscht werden. Benutzer mit dieser Berechtigung und der Berechtigung GENERIC_WRITE für einen anderen Knoten können Bereichsknoten löschen und vorhandene Arbeitsaufgaben aus dem gelöschten Knoten neu klassifizieren. Wenn der gelöschte Knoten über untergeordnete Knoten verfügt, werden diese ebenfalls gelöscht. |
|||
GENERIC_WRITE |
Diesen Knoten bearbeiten. Berechtigungen für Bereichsknoten können festgelegt und Bereichsknoten können umbenannt werden. |
Zuweisen von Berechtigungen zum Steuern von Iterationspfaden
Sie weisen mit dem group permission-Element und der ITERATION_NODE-Klasse Berechtigungen zu, die den Zugriff auf Iterationspfade steuern. Diese Berechtigungen steuern den Zugriff auf die Meilensteinversionen oder Iterationen für ein einzelnes Projekt. Sie können Zugriff auf Benutzer und Gruppen in Windows, auf Gruppen in Team Foundation und auf Gruppen gewähren, die Sie zuvor in der Plug-In-Datei für Gruppen und Berechtigungen definiert haben. Informationen zu dem beim Angeben von Gruppen zu verwendenden Format finden Sie unter Gruppenmakros und Standardgruppen weiter oben in diesem Thema.
Im folgenden Beispiel wird gezeigt, wie der Gruppe Contributors mehrere Berechtigungen für ein Teamprojekt gewährt werden.
<group name="Contributors" description="Members of this group can add, modify, and delete items within the team project.">
<permissions>
<permission name="GENERIC_READ" class="ITERATION_NODE" allow="true" />
<permission name="GENERIC_WRITE" class="ITERATION_NODE" allow="true" />
<permission name="CREATE_CHILDREN" class="ITERATION_NODE" allow="true" />
</permissions>
</group>
In der folgenden Tabelle werden die Berechtigungen beschrieben, die Sie zuweisen können, um den Zugriff auf die hierarchische Struktur für die Iterationsknoten des Projekts zu steuern. Da in den MSF-Prozessvorlagen keine ITERATION_NODE-Berechtigungen angegeben sind, können alle Teammitglieder Iterationsknoten erstellen, anzeigen und löschen.
Hinweis
Für einige Vorgänge zum Nachverfolgen von Arbeitsaufgaben sind mehrere Berechtigungen erforderlich.Zum Beispiel benötigen Sie mehrere Berechtigungen, um einen Knoten zu löschen.
Berechtigung |
Beschreibung |
---|---|
GENERIC_READ |
Diesen Knoten anzeigen. Die Sicherheitseinstellungen für einen Knoten können angezeigt werden. |
CREATE_CHILDREN |
Untergeordnete Knoten erstellen und anordnen. Iterationsknoten können erstellt werden. Benutzer mit dieser Berechtigung und der Berechtigung GENERIC_WRITE können jeden Iterationsknoten verschieben oder neu anordnen. |
DELETE |
Diesen Knoten löschen. Iterationsknoten können gelöscht werden. Benutzer mit dieser Berechtigung und der Berechtigung GENERIC_WRITE für einen anderen Knoten können Iterationsknoten löschen und vorhandene Arbeitsaufgaben aus dem gelöschten Knoten neu klassifizieren. Wenn der gelöschte Knoten über untergeordnete Knoten verfügt, werden diese ebenfalls gelöscht. |
GENERIC_WRITE |
Diesen Knoten bearbeiten. Berechtigungen für Iterationsknoten können festgelegt und Knoten können umbenannt werden. |
Siehe auch
Konzepte
Definieren von Gruppen, Teams und Berechtigungen mit dem Plug-In für Gruppen und Berechtigungen
Steuern des Zugriffs auf Funktionsbereiche