Artifact Registry ist der empfohlene Dienst zur Verwaltung von Container-Images. Container Registry wird weiterhin unterstützt, es werden jedoch nur wichtige Sicherheitsupdates bereitgestellt. Umstellung auf Artifact Registry

Container Registry-Dienstkonto

Der Container Registry-Dienst-Agent ist ein von Google verwaltetes Dienstkonto, das im Namen von Container Registry für die Interaktion mit Google Cloud-Diensten agiert.

Um das Sicherheitsprinzip der geringsten Berechtigung durchzusetzen, wird diesem Dienstkonto die Rolle des Container Registry-Dienst-Agents in Projekten zugewiesen, in denen die Container Registry API nach dem 5. Oktober 2020 aktiviert wurde. Diese Rolle hat die folgenden Berechtigungen:

  • Themen veröffentlichen: pubsub.topics.publish
  • Storage-Objekt-ACLs lesen: storage.objects.getIamPolicy
  • Storage-Objektdaten und -Objektmetadaten lesen: storage.objects.get
  • Storage-Objekte in einem Bucket auflisten und Objektmetadaten lesen: storage.objects.list

Bisher wurde dem Container Registry-Dienstkonto die Rolle Bearbeiter zugewiesen. Da die Bearbeiterrolle Berechtigungen zum Erstellen und Löschen der meisten Ressourcen in einem Projekt gewährt, empfehlen wir, die Berechtigungen einzuschränken, wenn Ihr Container Registry-Dienstkonto diese Rolle hat.

Führen Sie folgenden Befehl aus, um die aktuellen Berechtigungen Ihres Container Registry-Dienstkontos zu prüfen:

gcloud projects get-iam-policy PROJECT-ID  \
--flatten="bindings[].members" \
--format='table(bindings.role)' \
--filter="bindings.members:service-PROJECT-NUMBER@containerregistry.iam.gserviceaccount.com"

Dabei gilt:

  • PROJECT-ID ist die Google Cloud-Projekt-ID.
  • PROJECT-NUMBER ist die Google Cloud-Projektnummer.

Sie können Projekt-ID und Projektnummer in der Google Cloud Console oder mit folgenden Befehlen ermitteln:

PROJECT=$(gcloud config get-value project)
echo $PROJECT && gcloud projects list --filter="$PROJECT" --format="value(PROJECT_NUMBER)"

So erteilen Sie die Rolle "Container Registry-Dienst-Agent" und widerrufen die Rolle "Bearbeiter":

  1. Weisen Sie die Rolle "Container Registry-Dienst-Agent" mit dem folgenden Befehl zu:

    gcloud projects add-iam-policy-binding PROJECT-ID \
    --member=serviceAccount:service-PROJECT-NUMBER@containerregistry.iam.gserviceaccount.com --role=roles/containerregistry.ServiceAgent
    
  2. Entziehen Sie die Bearbeiterrolle mit dem folgenden Befehl:

    gcloud projects remove-iam-policy-binding PROJECT-ID \
    --member=serviceAccount:service-PROJECT-NUMBER@containerregistry.iam.gserviceaccount.com --role=roles/editor