Festlegen von Git-Repositoryberechtigungen

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Sie gewähren den Zugriff auf Repositorys oder schränken diesen ein, um den Personenkreis zu begrenzen, der zu Ihrem Quellcode beitragen und andere Features verwalten kann. Sie können Berechtigungen für alle Git-Repositorys festlegen, den Eintrag Git-Repositorys auf oberster Ebene ändern. Einzelne Repositorys erben Berechtigungen vom Eintrag Git-Repositorys auf oberster Ebene.

Hinweis

Branches erben eine Teilmenge der Berechtigungen von Zuweisungen, die auf Repositoryebene vorgenommen werden. Informationen zu Branchberechtigungen und -richtlinien finden Sie unter Festlegen von Branchberechtigungen und Verbessern der Codequalität mit Branchrichtlinien.

Eine Anleitung dazu, wem höhere Berechtigungsstufen bereitgestellt werden sollten, finden Sie unter Gewähren oder Einschränken des Zugriffs mithilfe von Berechtigungen.

Voraussetzungen

  • Sie müssen über ein Projekt verfügen. Wenn Sie noch kein Projekt haben, erstellen Sie eins in Azure DevOps, oder richten Sie ein Projekt in einem lokalen Azure DevOps ein.
  • Sie müssen Mitglied der Gruppe Projektadministratoren sein, oder Ihre Option Berechtigungen verwalten müssen für Git-Repositorys auf Zulassen festgelegt sein.

Um am Quellcode mitwirken zu können, muss Ihnen die Zugriffsebene Basic oder höher gewährt werden. Benutzer, denen der Beteiligtenzugriff für private Projekte gewährt wird, haben keinen Zugriff auf Quellcode. Benutzer, denen der Beteiligtenzugriff für öffentliche Projekte gewährt wurde, verfügen über den gleichen Zugriff wie Mitwirkende und diejenigen, denen Basic-Zugriff gewährt wird. Weitere Informationen finden Sie unter Informationen zu Zugriffsebenen.

Um am Quellcode mitwirken zu können, muss Ihnen die Zugriffsebene Basic oder höher gewährt werden. Benutzer, denen der Beteiligtenzugriff gewährt wird, haben keinen Zugriff auf Quellcode. Weitere Informationen finden Sie unter Informationen zu Zugriffsebenen.

Standardberechtigungen für Repositorys

Standardmäßig verfügen Mitglieder der Projektgruppe „Mitwirkende“ über Berechtigungen zum Mitwirken an einem Repository. Dies umfasst die Möglichkeit, Branches zu erstellen, Tags zu erstellen und Hinweise zu verwalten. Eine Beschreibung der einzelnen Sicherheitsgruppen und Berechtigungsstufen finden Sie unter Referenz zu Berechtigungen und Gruppen.

Berechtigung

Leser

Mitwirkende

Buildadministratoren

Projektadministrator*innen


Lesen (Klonen, Abrufen und Erkunden des Inhalts eines Repositorys); kann auch Pull Requests erstellen, diese kommentieren, über sie abstimmen und daran mitwirken

✔️

✔️

✔️

✔️

Mitwirken, Branches erstellen, Tags erstellen und Hinweise verwalten

✔️

✔️

✔️

Repository erstellen, Repository löschen und Repository umbenennen

✔️

Richtlinien bearbeiten, Berechtigungen verwalten, Sperren von anderen entfernen

✔️

Richtlinien beim Abschließen von Pull Requests umgehen, Richtlinien bei Pushvorgängen umgehen, Push erzwingen (Verlauf neu schreiben, Branches und Tags löschen)
(für keine Sicherheitsgruppen festlegen)


Ab Azure DevOps Sprint 224 (Azure DevOps Services und Azure DevOps Server 2022.1 und höher) wird die Berechtigung zum Bearbeiten von Richtlinien nicht mehr automatisch für Verzweigungsersteller erteilt. Bisher wurde Ihnen beim Erstellen eines neuen Branchs die Berechtigung erteilt, Richtlinien für diesen Branch zu bearbeiten. Mit diesem Update ändern wir das Standardverhalten, um diese Berechtigung nicht zu erteilen, auch wenn die Berechtigungsverwaltung Einstellung für das Repository aktiviert ist. Sie benötigen die Richtlinien zum Bearbeiten Berechtigung, die explizit (manuell oder über DIE REST-API) durch Die Vererbung von Sicherheitsberechtigungen oder über eine Gruppenmitgliedschaft erteilt wurde.

Öffnen der Sicherheit für ein Repository

Git-Repositoryberechtigungen werden über Projekteinstellungen >Repositorys festgelegt.

  1. Öffnen Sie das Webportal, und wählen Sie das Projekt aus, in dem Sie Benutzer oder Gruppen hinzufügen möchten. Informationen zum Auswählen eines anderen Projekts finden Sie unter Wechseln von Projekt, Repository, Team.

  2. Öffnen Sie Projekteinstellungen>Repositorys.

    Um die Berechtigungen für alle Git-Repositorys festzulegen, wählen Sie Sicherheit aus.

    Hier wählen wir beispielsweise (1) Projekteinstellungen, (2) Repositorys und dann (3) Sicherheit aus.

    Screenshot des Auswählens von „Projekteinstellungen“>„Repositorys“>„Sicherheit“.

  3. Andernfalls wählen Sie, wenn Sie die Berechtigungen für ein bestimmtes Repository festlegen möchten, (1) das Repository und dann (2) Sicherheit aus.

    Screenshot des Auswählens von „Projekteinstellungen“>Ein Repository auswählen>„Sicherheit“.

Festlegen von Berechtigungen für ein Repository

Sie können den Zugriff auf ein Repository gewähren oder einschränken, indem Sie den Berechtigungszustand auf Zulassen oder Verweigern für einen einzelnen Benutzer oder eine Sicherheitsgruppe festlegen.

  1. Öffnen Sie das Webportal, und wählen Sie das Projekt aus, in dem Sie Benutzer oder Gruppen hinzufügen möchten. Informationen zum Auswählen eines anderen Projekts finden Sie unter Wechseln von Projekt, Repository, Team.

  2. Um die Berechtigungen für alle Git-Repositorys für ein Projekt festzulegen, wählen Sie Git-Repositorys und dann die Sicherheitsgruppe aus, deren Berechtigungen Sie verwalten möchten.

    Hier wählen wir beispielsweise (1) Projekteinstellungen, (2) Repositorys, (3) Git-Repositorys, (4) die Gruppe Mitwirkende und dann (5) die Berechtigung für Repository erstellen aus.

    Um das vollständige Bild anzuzeigen, klicken Sie auf das Bild, um es zu erweitern. Wählen Sie das Symbol zum „Schließen“ Schließen-Symbol aus, um das Dialogfeld zu schließen.

    Projekteinstellungen>Code>Repositorys>Git-Repositorys>Sicherheit

    Hinweis

    Möglicherweise finden Sie einen Benutzer nicht über eine Berechtigungsseite oder ein Identitätsfeld, wenn der Benutzer dem Projekt nicht hinzugefügt wurde – entweder durch Hinzufügen zu einer Sicherheitsgruppe oder zu einem Projektteam. Auch wenn ein Benutzer zu Microsoft Entra ID oder Active Directory hinzugefügt wird, kann es zu einer Verzögerung kommen zwischen dem Zeitpunkt des Hinzufügens zum Projekt und dem Zeitpunkt, ab dem der Benutzer über ein Identitätsfeld gesucht werden kann. Die Verzögerung kann zwischen 5 Minuten und 7 Tagen betragen.

    Wählen Sie andernfalls ein bestimmtes Repository aus, und wählen Sie die Sicherheitsgruppe aus, deren Berechtigungen Sie verwalten möchten.

    Hinweis

    Wenn Sie einen Benutzer oder eine Gruppe hinzufügen und keine Berechtigungen für diesen Benutzer oder diese Gruppe ändern, wird nach der Aktualisierung der Seite mit den Berechtigungen der Benutzer oder die Gruppe, den/die Sie hinzugefügt haben, nicht mehr angezeigt.

  3. Wählen Sie anschließend Änderungen speichern aus.

Ändern von Berechtigungen für eine Sicherheitsgruppe

Um Berechtigungen für eine benutzerdefinierte Sicherheitsgruppe festzulegen, müssen Sie diese Gruppe zuvor definiert haben. Weitere Informationen finden Sie unter Festlegen von Berechtigungen auf Projektebene.

  1. Um Berechtigungen für eine bestimmte Gruppe festzulegen, wählen Sie die Gruppe aus. Hier wählen wir beispielsweise die Gruppe „Mitwirkende“ aus.

    Screenshot des Auswählens der Gruppe „Mitwirkende“.

  2. Ändern Sie eine oder mehrere Berechtigungen. Wenn Sie Berechtigungen erteilen möchten, ändern Sie Nicht festgelegt in Zulassen. Um Berechtigungen einzuschränken, ändern Sie Zulassen in Verweigern.

    Screenshot dreier Berechtigungen, die für die Gruppe „Mitwirkende“ geändert wurden.

  3. Wenn Sie fertig sind, navigieren Sie von der Seite weg. Die Berechtigungsänderungen werden automatisch für die ausgewählte Gruppe gespeichert.

Festlegen von Berechtigungen für einen bestimmten Benutzer

  1. Um Berechtigungen für bestimmte Benutzer*innen festzulegen, geben Sie den Benutzernamen in den Suchfilter ein, und wählen Sie aus den angezeigten Identitäten aus.

    Benutzer oder Gruppe hinzufügen

    Nehmen Sie dann die Änderungen an der festgelegten Berechtigung vor.

    Hinweis

    Möglicherweise finden Sie einen Benutzer nicht über eine Berechtigungsseite oder ein Identitätsfeld, wenn der Benutzer dem Projekt nicht hinzugefügt wurde – entweder durch Hinzufügen zu einer Sicherheitsgruppe oder zu einem Projektteam. Auch wenn ein Benutzer zu Microsoft Entra ID oder Active Directory hinzugefügt wird, kann es zu einer Verzögerung kommen zwischen dem Zeitpunkt des Hinzufügens zum Projekt und dem Zeitpunkt, ab dem der Benutzer über ein Identitätsfeld gesucht werden kann. Die Verzögerung kann zwischen 5 Minuten und 7 Tagen betragen.

  2. Wenn Sie fertig sind, navigieren Sie von der Seite weg. Die Berechtigungsänderungen werden automatisch für die ausgewählte Gruppe gespeichert.

Hinweis

Wenn Sie einen Benutzer oder eine Gruppe hinzufügen und keine Berechtigungen für diesen Benutzer oder diese Gruppe ändern, wird nach der Aktualisierung der Seite mit den Berechtigungen der Benutzer oder die Gruppe, den/die Sie hinzugefügt haben, nicht mehr angezeigt.

Aktivieren oder Deaktivieren der Vererbung für ein bestimmtes Repository

Berechtigungen „Ausgenommen von Richtlinienerzwingung“ und „Richtlinien umgehen“

Es gibt viele Szenarien, in denen Sie gelegentlich eine Branchrichtlinie umgehen müssen. Beispielsweise beim Zurücksetzen einer Änderung, die den Build beschädigt hat, oder beim Anwenden eines Hotfixes mitten in der Nacht. Bisher hat die Berechtigung Ausgenommen von Richtlinienerzwingung Teams dabei geholfen, zu verwalten, welche Benutzer beim Abschließen eines Pull Requests die Möglichkeit erhielten, Branchrichtlinien zu umgehen. Diese Berechtigung gewährte jedoch auch die Möglichkeit, direkt in den Branch zu pushen, wobei der PR-Prozess vollständig umgangen wurde.

Um diese Erfahrung zu verbessern, haben wir die Berechtigung Ausgenommen von Richtlinienerzwingung aufgeteilt, um Teams, die Umgehungsberechtigungen erteilen, mehr Kontrolle zu bieten. Die folgenden beiden Berechtigungen ersetzen die vorherige Berechtigung:

  • Richtlinien beim Abschließen von Pull Requests umgehen. Benutzer mit dieser Berechtigung können die „Außerkraftsetzen“-Erfahrung für Pull Requests verwenden.
  • Richtlinien bei Pushvorgängen umgehen. Benutzer mit dieser Berechtigung können direkt in Branches pushen, für die erforderliche Richtlinien konfiguriert sind.

Durch Erteilen der ersten Berechtigung und Verweigern der zweiten kann ein Benutzer bei Bedarf die Umgehungsoption verwenden, unterliegt aber weiterhin dem Schutz vor versehentlichem Pushen in einen Branch mit Richtlinien.

Hinweis

Durch diese Änderung werden keine Verhaltensänderungen eingeführt. Benutzern, denen zuvor Zulassen for Ausgenommen von Richtlinienerzwingung gewährt wurde, wird für beide neuen Berechtigungen Zulassen gewährt, sodass sie sowohl das Abschließen von PRs außer Kraft setzen als auch direkt in Branches mit Richtlinie pushen können.