Artifact Registry ist ein universeller Paketverwaltungsdienst, der Container und andere Formate unterstützt. Mehr über die Umstellung von Container Registry erfahren, um mehr Flexibilität und Kontrolle über Ihre Artefakte zu erhalten

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