Für Compute Engine bereitstellen

Compute Engine kann Container direkt aus Artifact Registry-Repositories abrufen.

Erforderliche Berechtigungen

Das Compute Engine-Dienstkonto benötigt Zugriff auf Artifact Registry, um Container-Images abzurufen.

Abhängig von der Konfiguration Ihrer Organisationsrichtlinie kann dem Standarddienstkonto für Ihr Projekt automatisch die Rolle "Bearbeiter" zugewiesen werden. Wir empfehlen dringend, die automatische Rollenzuweisung zu deaktivieren, indem Sie die Einschränkung der Organisationsrichtlinien iam.automaticIamGrantsForDefaultServiceAccounts erzwingen. Wenn Sie Ihre Organisation nach dem 3. Mai 2024 erstellt haben, wird diese Einschränkung standardmäßig erzwungen.

Wenn Sie die automatische Rollenzuweisung deaktivieren, müssen Sie entscheiden, welche Rollen den Standarddienstkonten zugeteilt werden sollen, und diese Rollen dann selbst zuweisen.

Wenn das Standarddienstkonto bereits die Rolle „Bearbeiter“ hat, sollten Sie die Rolle „Bearbeiter“ durch weniger strikte Rollen ersetzen.Verwenden Sie zum sicheren Ändern der Rollen des Dienstkontos den Policy Simulator, um die Auswirkungen der Änderung zu sehen, und weisen Sie die entsprechenden Rollen zu und widerrufen Sie sie.

Hier einige Beispiele für erforderliche Zugriffsbereiche und erforderliche Rollen für verschiedene Szenarien:

  • Wenn Sie Container-Images aus Artifact Registry-Repositories abrufen möchten, müssen Sie dem Compute Engine-Dienstkonto die Rolle „Artifact Registry-Leser“ (roles/artifactregistry.reader) zuweisen. Außerdem muss der Zugriffsbereich read-only für Cloud Storage-Speicher-Buckets festgelegt sein.
  • Sie möchten, dass die VM-Instanz in Repositories hochgeladen wird. In diesem Fall müssen Sie einen Zugriffsbereich mit Schreibzugriff auf den Speicher konfigurieren: read-write, cloud-platform oder full-control.
  • Die VM-Instanz befindet sich in einem anderen Projekt als die Repositories, auf die Sie zugreifen möchten. Weisen Sie in dem Projekt mit den Repositories dem Dienstkonto der Instanz die erforderlichen Berechtigungen zu.
  • Die Repositories befinden sich im selben Projekt, aber Sie möchten nicht, dass das Standarddienstkonto in allen Repositories dieselbe Zugriffsebene hat. In diesem Fall müssen Sie die entsprechenden Berechtigungen auf Repository-Ebene erteilen und die Artifact Registry-Berechtigungen auf Projektebene widerrufen.
  • Die VM ist einem benutzerdefinierten Dienstkonto zugeordnet. Prüfen Sie, ob das Dienstkonto über die erforderlichen Berechtigungen und den Zugriffsbereich verfügt.
  • Sie verwenden benutzerdefinierte Rollen, um Berechtigungen zu gewähren, und die benutzerdefinierte Rolle enthält nicht die erforderlichen Artifact Registry-Berechtigungen. Fügen Sie der Rolle die erforderlichen Berechtigungen hinzu.