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.
Voraussetzungen für die Synchronisierung von Stacks mit einem Git-Repository mithilfe von Git Sync
Bevor Sie einen CloudFormation Stack mit Ihrem Git-Repository synchronisieren, stellen Sie sicher, dass die folgenden Anforderungen erfüllt sind.
Themen
Git-Repository
Sie müssen ein Git-Repository auf einer der folgenden Plattformen gehostet haben.
Das Repository kann öffentlich oder privat sein. Sie müssen dieses Git-Repository über die CloudFormation Connections-Konsole
CloudFormation Vorlage
Ihr Git-Repository muss eine CloudFormation Vorlagendatei enthalten, die in den Branch eingecheckt ist, den Sie mit Git Sync verbinden möchten. Auf diese Vorlage wird in der Stack-Deployment-Datei verwiesen.
Git-Sync-Dienstrolle
Git Sync erfordert eine IAM-Rolle. Du kannst wählen, ob bei der Konfiguration von Git Sync eine IAM-Rolle für deinen Stack erstellt werden soll, oder du kannst eine bestehende Rolle verwenden.
Anmerkung
Eine automatisch generierte IAM-Rolle wendet Berechtigungen nur auf den Stack an, für den die Rolle generiert wurde. Um eine automatisch generierte IAM-Rolle wiederzuverwenden, müssen Sie die Rolle für den neuen Stack bearbeiten.
Erforderliche Berechtigungen für die Git-Sync-Dienstrolle
Die IAM-Rolle, die Sie für Git Sync bereitstellen, erfordert die folgenden Berechtigungen.
-
cloudformation:CreateChangeSet
-
cloudformation:DeleteChangeSet
-
cloudformation:DescribeChangeSet
-
cloudformation:DescribeStackEvents
-
cloudformation:DescribeStacks
-
cloudformation:ExecuteChangeSet
-
cloudformation:ListChangeSets
-
cloudformation:ValidateTemplate
-
events:PutRule
-
events:PutTargets
Anmerkung
Die oben genannten erforderlichen Berechtigungen werden automatisch zu den von Git Sync generierten IAM-Rollen hinzugefügt.
Die folgende Beispiel-IAM-Rolle enthält die erforderlichen Berechtigungen für Git Sync.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SyncToCloudFormation", "Effect": "Allow", "Action": [ "cloudformation:CreateChangeSet", "cloudformation:DeleteChangeSet", "cloudformation:DescribeChangeSet", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStacks", "cloudformation:ExecuteChangeSet", "cloudformation:GetTemplate", "cloudformation:ListChangeSets", "cloudformation:ListStacks", "cloudformation:ValidateTemplate" ], "Resource": "*" }, { "Sid": "PolicyForManagedRules", "Effect": "Allow", "Action": [ "events:PutRule", "events:PutTargets" ], "Resource": "*", "Condition": { "StringEquals": { "events:ManagedBy": ["cloudformation.sync.codeconnections.amazonaws.com"] } } }, { "Sid": "PolicyForDescribingRule", "Effect": "Allow", "Action": "events:DescribeRule", "Resource": "*" } ] }
Vertrauensrichtlinie
Sie müssen die folgende Vertrauensrichtlinie angeben, wenn Sie die Rolle zur Definition der Vertrauensbeziehung erstellen.
IAM-Berechtigungen für Konsolenbenutzer
Um Git Sync erfolgreich über die CloudFormation Konsole einzurichten, müssen Endbenutzern auch Berechtigungen über IAM erteilt werden.
Die folgenden codeconnections
Berechtigungen sind erforderlich, um die Verbindung zu Ihrem Git Repository herzustellen und zu verwalten.
-
codeconnections:CreateRepositoryLink
-
codeconnections:CreateSyncConfiguration
-
codeconnections:DeleteRepositoryLink
-
codeconnections:DeleteSyncConfiguration
-
codeconnections:GetRepositoryLink
-
codeconnections:GetSyncConfiguration
-
codeconnections:ListRepositoryLinks
-
codeconnections:ListSyncConfigurations
-
codeconnections:ListTagsForResource
-
codeconnections:TagResource
-
codeconnections:UntagResource
-
codeconnections:UpdateRepositoryLink
-
codeconnections:UpdateSyncBlocker
-
codeconnections:UpdateSyncConfiguration
-
codeconnections:UseConnection
Konsolenbenutzer müssen außerdem über die folgenden cloudformation
Berechtigungen verfügen, um Stacks während des Git-Sync-Einrichtungsprozesses anzeigen und verwalten zu können.
-
cloudformation:CreateChangeSet
-
cloudformation:DeleteChangeSet
-
cloudformation:DescribeChangeSet
-
cloudformation:DescribeStackEvents
-
cloudformation:DescribeStacks
-
cloudformation:ExecuteChangeSet
-
cloudformation:GetTemplate
-
cloudformation:ListChangeSets
-
cloudformation:ListStacks
-
cloudformation:ValidateTemplate
Anmerkung
Für die ausschließliche Nutzung auf der Konsole sind Berechtigungen für Änderungssätze (cloudformation:CreateChangeSet
cloudformation:DeleteChangeSet
cloudformation:DescribeChangeSet
,,,cloudformation:ExecuteChangeSet
) möglicherweise nicht unbedingt erforderlich, es wird jedoch empfohlen, die Funktionen zur vollständigen Überprüfung und Verwaltung des Stacks zu aktivieren.
Die folgende Beispiel-IAM-Richtlinie umfasst die Benutzerberechtigungen, die für die Einrichtung von Git Sync über die Konsole erforderlich sind.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "CodeConnectionsPermissions", "Effect": "Allow", "Action": [ "codeconnections:CreateRepositoryLink", "codeconnections:CreateSyncConfiguration", "codeconnections:DeleteRepositoryLink", "codeconnections:DeleteSyncConfiguration", "codeconnections:GetRepositoryLink", "codeconnections:GetSyncConfiguration", "codeconnections:ListRepositoryLinks", "codeconnections:ListSyncConfigurations", "codeconnections:ListTagsForResource", "codeconnections:TagResource", "codeconnections:UntagResource", "codeconnections:UpdateRepositoryLink", "codeconnections:UpdateSyncBlocker", "codeconnections:UpdateSyncConfiguration", "codeconnections:UseConnection", "codeconnections:CreateForcedTargetSync", "codeconnections:CreatePullRequestForResource" ], "Resource": "*" }, { "Sid": "CloudFormationConsolePermissions", "Effect": "Allow", "Action": [ "cloudformation:CreateChangeSet", "cloudformation:DeleteChangeSet", "cloudformation:DescribeChangeSet", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStacks", "cloudformation:ExecuteChangeSet", "cloudformation:GetTemplate", "cloudformation:ListChangeSets", "cloudformation:ListStacks", "cloudformation:ValidateTemplate" ], "Resource": "*" } ] }
Anmerkung
Wenn Sie eine IAM-Richtlinie erstellen, die die Berechtigungen codeconnections:CreateForcedTargetSync
und enthältcodeconnections:CreatePullRequestForResource
, wird in der IAM-Konsole möglicherweise eine Warnung angezeigt, dass diese Aktionen nicht existieren. Diese Warnung kann ignoriert werden, und die Richtlinie wird trotzdem erfolgreich erstellt. Diese Berechtigungen sind für bestimmte Git-Synchronisierungsvorgänge erforderlich, obwohl sie von der IAM-Konsole nicht erkannt werden.