Erstellen Sie Tags, bevor Sie versuchen, sie an Ressourcen zu binden, oder verwenden Sie sie in Netzwerk-Firewallrichtlinien. Zur Steuerung des Netzwerkzugriffs sind Tags nur effektiv, wenn sie an VM-Instanzen gebunden sind.
Eine Übersicht finden Sie unter Tags für Firewalls.
Berechtigungen für Tags erteilen
Mit der tagAdmin
-Rolle können Sie Tags erstellen, aktualisieren und löschen. Ein Organisationsadministrator kann diese Rolle auf Organisationsebene und ein Projektinhaber ihm auf Projektebene zuweisen.
gcloud
Weisen Sie dem Nutzer die Rolle
tagAdmin
zu:gcloud organizations add-iam-policy-binding ORGANIZATION_ID \ --member=user:EMAIL_ADDRESS \ --role=roles/resourcemanager.tagAdmin
Ersetzen Sie dabei Folgendes:
ORGANIZATION_ID
: die ID Ihrer OrganisationEMAIL_ADDRESS
: die E-Mail-Adresse des Nutzers
Weisen Sie dem Nutzer die Rolle
tagUser
zu:gcloud resource-manager tags keys add-iam-policy-binding ORGANIZATION_ID/TAG_KEY \ --member=user:EMAIL_ADDRESS \ --role=roles/resourcemanager.tagUser
Ersetzen Sie dabei Folgendes:
ORGANIZATION_ID
: die ID Ihrer OrganisationTAG_KEY
: der Tag-SchlüsselEMAIL_ADDRESS
: die E-Mail-Adresse des Nutzers
Benutzerdefinierte Rollen zum Verwalten von Tags
Mit der tagAdmin
-Rolle können Sie folgende Aktionen ausführen: Tags erstellen, aktualisieren und löschen. Wenn Sie einige dieser Funktionen benötigen, können Sie eine benutzerdefinierte IAM-Rolle mit den entsprechenden Berechtigungen erstellen und die neue Rolle dann dem Zielnutzer zuweisen. Eine Liste der relevanten Berechtigungen finden Sie unter IAM-Berechtigungen.
In Firewallrichtlinien verwendete Tags müssen mit dem Zweck GCE_FIREWALL angegeben werden. Der Zweck GCE_FIREWALL ist für die Verwendung des Tags in Netzwerkfunktionen erforderlich. Sie können das Tag aber auch für andere Aktionen verwenden.
In Richtlinien für Netzwerkfirewalls verwendete Tags müssen einen Bereich haben, der auf eine einzige VPC beschränkt ist.
Tag-Schlüssel und -Werte erstellen
Bevor Sie Tags mit den Richtlinien für Netzwerkfirewalls verknüpfen, müssen Sie die Tag-Schlüssel und -Werte erstellen.
gcloud
Nachdem Sie die erforderlichen Berechtigungen erhalten haben, erstellen Sie den Tag-Schlüssel.
gcloud resource-manager tags keys create TAG_KEY \ --parent organizations/ORGANIZATION_ID \ --purpose GCE_FIREWALL \ --purpose-data network=PROJECT_ID/NETWORK
Ersetzen Sie dabei Folgendes:
TAG_KEY
: der Tag-SchlüsselORGANIZATION_ID
: die ID Ihrer OrganisationPROJECT_ID
: die Projekt-IDNETWORK
: der Name Ihres Netzwerks
Fügen Sie die relevanten Tag-Werte zu den Tag-Schlüsseln hinzu. Führen Sie den Befehl mehrmals aus, um mehrere Werte hinzuzufügen. Achten Sie darauf, dass jeder dem Tag-Schlüssel hinzugefügte Tag-Wert eindeutig ist.
gcloud resource-manager tags values create TAG_VALUE \ --parent ORGANIZATION_ID/TAG_KEY
Ersetzen Sie dabei Folgendes:
ORGANIZATION_ID
: die ID Ihrer OrganisationTAG_KEY
: der Tag-SchlüsselTAG_VALUE
: den Wert, der dem Tag-Schlüssel zugewiesen werden soll
Netzwerk-Firewallrichtlinie erstellen
Nachdem Sie ein Tag erstellt haben, können Sie es in Netzwerk-Firewallrichtlinien verwenden. Wenn Sie noch keine Netzwerk-Firewallrichtlinie haben, erstellen Sie eine neue.
gcloud
Netzwerk-Firewallrichtlinie erstellen
gcloud compute network-firewall-policies create \ FIREWALL_POLICY_NAME \ --global
Ersetzen Sie dabei Folgendes:
FIREWALL_POLICY_NAME
: Name der neuen Richtlinie für Netzwerkfirewalls für globale Netzwerke
Firewallrichtlinienregel mit Tags erstellen
Nachdem Sie ein Tag und eine Netzwerk-Firewallrichtlinie erstellt haben, können Sie eine Firewallregel für ein Netzwerk mit den spezifischen Quell-Tag-Werten und Ziel-Tag-Werten erstellen, um den gewünschten Traffic zwischen den VMs mit den Quell- und Ziel-Tags zuzulassen.
gcloud
Erstellen Sie eine Netzwerk-Firewallregel mit den spezifischen Quell- und Zielschlüsseln und -werten.
gcloud compute network-firewall-policies rules create 1 \ --firewall-policy FIREWALL_POLICY_NAME \ --src-secure-tags ORGANIZATION_ID/TAG_KEY/TAG_VALUE \ --target-secure-tags ORGANIZATION_ID/TAG_KEY/TAG_VALUE \ --direction DIRECTION \ --action ACTION \ --layer4-configs tcp:PORT \ --global-firewall-policy
Ersetzen Sie dabei Folgendes:
FIREWALL_POLICY_NAME
: Name der neuen Richtlinie für Netzwerkfirewalls für globale NetzwerkeORGANIZATION_ID
: die ID Ihrer OrganisationTAG_KEY
: der Tag-SchlüsselTAG_VALUE
: den Wert, der dem Tag-Schlüssel zugewiesen werden sollDIRECTION
: gibt an, ob die Regel eineingress
- oderegress
-Regel istACTION
: eine der folgenden Aktionen:allow
: lässt Verbindungen zu, die der Regel entsprechendeny
: lehnt Verbindungen ab, die der Regel entsprechengoto_next
: leitet die Auswertung der Verbindung an die nächste Ebene in der Hierarchie weiter, entweder die Ordner- oder die Netzwerkebene
PORT
: die Portnummer für den Zugriff auf die Ressource
Tags an VM-Instanzen binden
Tag-Administratoren können die Tags an einzelne VM-Instanzen binden.
Durch das Binden eines Tags an eine Ressource wird ein Tag-Wert an eine Ressource angehängt. Obwohl ein Tag mehrere Werte für einen bestimmten Schlüssel haben kann, können Sie nur einen einzigen Wert pro Tag-Schlüssel an eine Ressource binden. Beispiel: Sie können nicht sowohl die web-backend- als auch die mysql-Tag-Werte an dieselbe VM-Instanz binden, da sie zur selben Tag-Schlüssel-VM-Funktion gehören.
Beispiel: Sasha, eine Entwicklerin, möchte eine Anwendung einrichten, die aus einem API-Backend und einem Sicherungsdatenbankspeicher besteht. Um Traffic zwischen dem Backend und dem Datenbankserver zuzulassen, muss Sasha die web-backend- und die mysql-Tag-Werte an verschiedene VMs binden.
gcloud
Weisen Sie die Rolle
tagUser
zu.gcloud resource-manager tags keys add-iam-policy-binding ORGANIZATION_ID/TAG_KEY \ --member=user:EMAIL_ADDRESS \ --role=roles/resourcemanager.tagUser
Ersetzen Sie dabei Folgendes:
ORGANIZATION_ID
: die ID Ihrer OrganisationTAG_KEY
: der Tag-SchlüsselEMAIL_ADDRESS
: die E-Mail-Adresse des Nutzers
Über diesen Befehl wird dem Nutzer die Verwendung aller aktuellen und zukünftigen Werte des Schlüssels gewährt. Sie können auch selektiv nur den Zugriff auf bestimmte Werte eines Tags gewähren:
gcloud resource-manager tags values add-iam-policy-binding ORGANIZATION_ID/TAG_KEY/TAG_VALUE \ --member=user:EMAIL_ADDRESS \ --role=roles/resourcemanager.tagUser
Ersetzen Sie dabei Folgendes:
ORGANIZATION_ID
: die ID Ihrer OrganisationTAG_KEY
: der Tag-SchlüsselTAG_VALUE
: den Wert, der dem Tag-Schlüssel zugewiesen werden sollEMAIL_ADDRESS
: die E-Mail-Adresse des Nutzers
Gewähren Sie die Rolle
tagUser
für die Ressourcen, an die Sie die Tags binden möchten.gcloud projects add-iam-policy-binding PROJECT_ID \ --member=user:EMAIL_ADDRESS \ --role=roles/resourcemanager.tagUser
Ersetzen Sie dabei Folgendes:
PROJECT_ID
: Projekt-ID Ihres ProjektsEMAIL_ADDRESS
: die E-Mail-Adresse des Nutzers
Rufen Sie den Wert von
PARENT
für das Tag-Schlüssel/Wert-Paar ab:Legen Sie das Präfix für den vollständigen Namen Ihres Projekts und Ihrer Zone fest:
FULL_NAME_PREFIX=//compute.googleapis.com/projects/PROJECT_NUMBER/zones/ZONE/instances/
Rufen Sie die VM-ID ab:
VM_ID=$(gcloud compute instances describe VM_NAME --zone ZONE--format='value(id)')
Verketten Sie die Werte von
FULL_NAME_PREFIX
undVM_ID
:PARENT="$FULL_NAME_PREFIX$VM_ID" echo $PARENT
Ersetzen Sie dabei Folgendes:
PROJECT_NUMBER
: Die Nummer Ihres ProjektsZONE
: Zone, in der sich die VM befindetVM_NAME
: der Name der VM, an der Sie arbeiten
Listen Sie die Bindungen auf.
gcloud resource-manager tags bindings list \ --location LOCATION_NAME \ --parent PARENT
Ersetzen Sie dabei Folgendes:
LOCATION_NAME
: Der Standort, zu dem das Tag gehört, hier die Zone der VM-Instanz.PARENT
: der vollständige Ressourcenname, der an die Bindung angehängt ist, wie im vorherigen Befehl abgeleitet
Löschen und erstellen Sie die Bindungen.
gcloud resource-manager tags bindings delete \ --location LOCATION_NAME \ --tag-value ORGANIZATION_ID/TAG_KEY/TAG_VALUE \ --parent PARENT gcloud resource-manager tags bindings create \ --location LOCATION_NAME \ --tag-value ORGANIZATION_ID/TAG_KEY/TAG_VALUE \ --parent PARENT
Ersetzen Sie dabei Folgendes:
LOCATION_NAME
: der Standort, zu dem das Tag gehörtORGANIZATION_ID
: die ID Ihrer OrganisationTAG_KEY
: der Tag-SchlüsselTAG_VALUE
: der Wert des Tag-SchlüsselsPARENT
: der vollständige Ressourcenname der Ressource, die an den Tag-Wert angehängt werden soll
Tags in Peering-Netzwerken verwenden
Sie können Tags im Netzwerk-Peering verwenden. Führen Sie folgende Aufgaben in der angegebenen Reihenfolge aus, um Tags in zwei Peering-Netzwerken zu verwenden.
- Weisen Sie zwei Nutzern die
tagAdmin
-Rolle zu: einem pro Peering-Netzwerk. Ein Organisationsadministrator weist Nutzern auf Organisationsebene die RollentagAdmin
zu und ein Projektinhaber kann sie auf Projektebene zuweisen. - Der erste Netzwerknutzer muss im ersten Netzwerk Tag-Schlüssel und -Werte erstellen.
- Der zweite Netzwerknutzer muss im zweiten Netzwerk Tag-Schlüssel und -Werte erstellen.
- Gewähren Sie den beiden Nutzern die erforderlichen Berechtigungen, um Tags in beiden Netzwerken zu binden.
- Binden Sie Tags an Nutzer und Ressourcen im ersten Netzwerk.
- Binden Sie Tags an Nutzer und Ressourcen im zweiten Netzwerk.
- Gewähren Sie dem Nutzer aus dem zweiten Netzwerk
tagUser
-Berechtigungen im ersten Netzwerk. - Weisen Sie dem Nutzer aus dem ersten Netzwerk
tagUser
-Berechtigungen im zweiten Netzwerk zu. - Erstellen Sie eine Firewallrichtlinien-Regel im ersten Netzwerk.
- Erstellen Sie eine Firewallrichtlinien-Regel im zweiten Netzwerk.
Nächste Schritte
- Weitere Informationen zum Erstellen von Tags finden Sie unter Tags erstellen und verwalten.