Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Beispiele für vom Kunden verwaltete Richtlinien
Sie können Ihre eigenen benutzerdefinierten IAM-Richtlinien erstellen, um Berechtigungen für CodeCommit Aktionen und Ressourcen zu gewähren. Die benutzerdefinierten Richtlinien können Sie dann den IAM-Benutzern oder -Gruppen zuweisen, die diese Berechtigungen benötigen. Sie können auch Ihre eigenen benutzerdefinierten IAM-Richtlinien für die Integration zwischen CodeCommit und anderen AWS Diensten erstellen.
Beispiele für vom Kunden verwaltete Identitätsrichtlinien
Das folgende Beispiel für IAM-Richtlinien gewährt Berechtigungen für verschiedene CodeCommit Aktionen. Verwenden Sie sie, um den CodeCommit Zugriff für Ihre IAM-Benutzer und -Rollen einzuschränken. Diese Richtlinien steuern die Fähigkeit, Aktionen mit der CodeCommit Konsole, der API, den AWS SDKs oder dem auszuführen. AWS CLI
Anmerkung
In allen Beispielen werden die Region USA West (Oregon) (us-west-2) und fiktive Konto-IDs verwendet.
Beispiele
Beispiel 1: Erlauben Sie einem Benutzer, CodeCommit Operationen in einem einzigen Vorgang auszuführen AWS-Region
In der folgenden Berechtigungsrichtlinie wird ein Platzhalterzeichen ("codecommit:*") verwendet, damit Benutzer alle CodeCommit Aktionen in der Region us-east-2 und nicht in einer anderen Region ausführen können. AWS-Regionen
Beispiel 2: Erlaube einem Benutzer, Git für ein einzelnes Repository zu verwenden
In CodeCommit gelten die GitPull IAM-Richtlinienberechtigungen für jeden Git-Client-Befehl CodeCommit, von dem Daten abgerufen werden git fetchgit clone, einschließlich und so weiter. Ebenso gelten die GitPush IAM-Richtlinienberechtigungen für jeden Git-Client-Befehl, an den Daten gesendet werden. CodeCommit Wenn die GitPush IAM-Richtlinienberechtigung beispielsweise auf gesetzt istAllow, kann ein Benutzer das Löschen eines Branches mithilfe des Git-Protokolls vorantreiben. Dieser Push bleibt von allen Berechtigungen unberührt, die auf den DeleteBranch Vorgang für diesen IAM-Benutzer angewendet wurden. Die DeleteBranch Berechtigung gilt für Aktionen, die mit der Konsole AWS CLI, den SDKs und der API ausgeführt werden, nicht jedoch für das Git-Protokoll.
Das folgende Beispiel ermöglicht es dem angegebenen Benutzer, Daten aus dem CodeCommit Repository mit dem Namen MyDemoRepo abzurufen und dorthin zu übertragen:
Beispiel 3: Erlauben Sie einem Benutzer, der von einem bestimmten IP-Adressbereich aus eine Verbindung herstellt, den Zugriff auf ein Repository
Sie können eine Richtlinie erstellen, die es Benutzern nur dann erlaubt, sich mit einem CodeCommit-Repository zu verbinden, wenn ihre IP-Adresse innerhalb eines bestimmten IP-Adressbereichs liegt. Dazu gibt es zwei gleichwertige Ansätze. Sie können eine Deny Richtlinie erstellen, die CodeCommit Operationen verbietet, wenn sich die IP-Adresse des Benutzers nicht innerhalb eines bestimmten Blocks befindet, oder Sie können eine Allow Richtlinie erstellen, die CodeCommit Operationen zulässt, wenn sich die IP-Adresse des Benutzers in einem bestimmten Block befindet.
Sie können eine Deny-Richtlinie erstellen, die den Zugriff für alle Benutzer verweigert, die sich nicht aus einem bestimmten IP-Adressbereich stammen. Beispielsweise können Sie die verwaltete Richtlinie AWSCodeCommitPowerUser und eine vom Kunden verwaltete Richtlinie allen Benutzern anfügen, die Zugriff auf Ihr Repository benötigen. Die folgende Beispielrichtlinie verweigert Benutzern, deren IP-Adressen nicht innerhalb des angegebenen IP-Adressblocks 203.0.113 liegen, alle CodeCommit Berechtigungen. 0/16:
Die folgende Beispielrichtlinie ermöglicht dem angegebenen Benutzer nur dann den Zugriff auf ein CodeCommit Repository, das MyDemoRepo mit den entsprechenden Berechtigungen der AWSCodeCommitPowerUser verwalteten Richtlinie benannt ist, wenn sich seine IP-Adresse innerhalb des angegebenen Adressblocks von 203.0.113 befindet. 0/16:
Beispiel 4: Aktionen auf Zweigen verweigern oder zulassen
Sie können eine Richtlinie erstellen, die Benutzern die Berechtigungen für Aktionen verweigert, die Sie für eine oder mehrere Verzweigungen angeben. Alternativ können Sie eine Richtlinie erstellen, die Aktionen für eine oder mehrere Verzweigungen erlaubt, die sie sonst nicht in anderen Verzweigungen eines Repositories haben. Sie können diese Richtlinien mit den entsprechenden verwalteten (vordefinierten) Richtlinien verwenden. Weitere Informationen finden Sie unter Beschränken Sie Push- und Merge-Vorgänge auf Zweige in AWS CodeCommit.
Sie können beispielsweise eine Deny Richtlinie erstellen, die Benutzern die Möglichkeit verwehrt, Änderungen an einem Branch mit dem Namen main vorzunehmen, einschließlich des Löschens dieses Branches, in einem Repository mit dem NamenMyDemoRepo. Sie können diese Richtlinien mit der verwalteten Richtlinie AWSCodeCommitPowerUser verwenden. Benutzer, auf die diese beiden Richtlinien angewendet werden, könnten Branches erstellen und löschen, Pull Requests erstellen und alle anderen Aktionen durchführen, sofern dies erlaubt ist AWSCodeCommitPowerUser, aber sie wären nicht in der Lage, Änderungen an den Branch mit dem Namen main zu übertragen, eine Datei im Haupt-Branch in der CodeCommit Konsole hinzuzufügen oder zu bearbeiten oder Branches oder einen Pull Request mit dem Haupt-Branch zusammenzuführen. Da Deny auf GitPush angewendet wird,, müssen Sie eine Null-Anweisung in die Richtlinie aufnehmen, um die Analyse anfänglicher GitPush-Aufrufe auf Gültigkeit zu gestatten, wenn Benutzer Sendeoperationen von ihren lokalen Repositories aus ausführen.
Tipp
Wenn Sie eine Richtlinie erstellen möchten, die für alle Branches mit dem Namen main in allen Repositorys in Ihrem Amazon Web Services-Konto giltResource, geben Sie statt eines Repository-ARN ein Sternchen (*) an.
Die folgende Beispielrichtlinie ermöglicht es einem Benutzer, Änderungen an einem Zweig namens main in allen Repositorys eines Amazon Web Services-Kontos vorzunehmen. Sie erlaubt keine Änderungen an anderen Zweigen. Sie können diese Richtlinie zusammen mit der AWSCodeCommitReadOnly verwalteten Richtlinie verwenden, um automatische Pushs an das Repository im Hauptzweig zu ermöglichen. Der Effekt ist Allow, deshalb würde diese Beispielrichtlinie nicht mit verwalteten Richtlinien funktionieren, wie z. B. AWSCodeCommitPowerUser.
Beispiel 5: Aktionen für Repositorys mit Tags verweigern oder zulassen
Sie können eine Richtlinie erstellen, die Aktionen für Repositorys auf der Grundlage der mit diesen Repositorys verknüpften AWS Tags zulässt oder ablehnt, und diese Richtlinien dann auf die IAM-Gruppen anwenden, die Sie für die Verwaltung von IAM-Benutzern konfigurieren. Sie können beispielsweise eine Richtlinie erstellen, die alle CodeCommit Aktionen für alle Repositorys mit dem AWS Tag-Schlüssel Status und dem Schlüsselwert Secret ablehnt, und diese Richtlinie dann auf die IAM-Gruppe anwenden, die Sie für allgemeine Entwickler erstellt haben (). Developers Anschließend müssen Sie sicherstellen, dass die Entwickler, die an diesen markierten Repositorys arbeiten, nicht zu dieser allgemeinen Developers Gruppe gehören, sondern einer anderen IAM-Gruppe angehören, auf die die restriktive Richtlinie nicht angewendet wird (). SecretDevelopers
Im folgenden Beispiel werden alle CodeCommit Aktionen für Repositorys verweigert, die mit dem Schlüssel Status und dem Schlüsselwert Secret gekennzeichnet sind:
Sie können diese Strategie weiter verfeinern, indem Sie bestimmte Repositorys und nicht alle Repositorys als Ressourcen angeben. Sie können auch Richtlinien erstellen, die CodeCommit Aktionen für alle Repositorys zulassen, die nicht mit bestimmten Tags gekennzeichnet sind. Die folgende Richtlinie gewährt beispielsweise das Äquivalent von AWSCodeCommitPowerUser Berechtigungen für CodeCommit Aktionen, mit der Ausnahme, dass sie nur Aktionen für Repositorys zulässt CodeCommit , die nicht mit den angegebenen Tags gekennzeichnet sind:
Anmerkung
Dieses Richtlinienbeispiel beinhaltet nur Aktionen für CodeCommit. Es beinhaltet keine Aktionen für andere AWS Dienste, die in der AWSCodeCommitPowerUser verwalteten Richtlinie enthalten sind. Weitere Informationen finden Sie unter AWS verwaltete Richtlinie: AWSCodeCommitPowerUser..