Tags verwenden, um den Zugriff auf Ressourcen zu steuern

Mit Tags können Sie einschränken, wer bestimmte Cloud Monitoring-Dashboards und Benachrichtigungsrichtlinien bearbeiten oder löschen kann. Tags sind Schlüssel/Wert-Paare, die Sie erstellen und an Ressourcen anhängen. Sie können sie mit IAM-Bedingungen (Identity and Access Management) oder Ablehnungsrichtlinien kombinieren, um den Zugriff auf Teamebene zu erzwingen oder von Terraform verwaltete Ressourcen zu schützen.

Wenn Sie Tags verwenden, um den Zugriff auf Dashboards und Benachrichtigungsrichtlinien zu steuern, können Sie maximal 250 Teams pro Projekt konfigurieren. Weitere Einschränkungen für Tags finden Sie unter Tag-Limits.

Muster für die Zugriffssteuerung

Sie können die Zugriffssteuerung für Dashboards und Benachrichtigungsrichtlinien mit einem der folgenden Muster implementieren:

  • Zugriff auf von Terraform verwaltete Ressourcen steuern: Verwenden Sie Tags und IAM-Ablehnungsrichtlinien, damit getaggte Ressourcen nur von Terraform bearbeitet werden können. Von Terraform verwaltete Ressourcen sind vor manuellen, nicht genehmigten Änderungen in der Google Cloud -Konsole oder über andere Clients geschützt.

  • Zugriff auf von Teams verwaltete Ressourcen steuern: Mit Tags für einzelne Teams und bedingten IAM-Rollenzuweisungen können Sie dafür sorgen, dass nur Mitglieder eines bestimmten Teams von Teams verwaltete Dashboards und Benachrichtigungsrichtlinien bearbeiten oder löschen können.

Von Terraform verwaltete Ressourcen schützen

In diesem Abschnitt wird beschrieben, wie Sie Tags und IAM-Ablehnungsrichtlinien verwenden, damit getaggte Dashboards und Benachrichtigungsrichtlinien nur mit einem für die Verwendung von Terraform konfigurierten Dienstkonto bearbeitet oder gelöscht werden können.

Hinweis

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt oder Ihre Organisation zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren von Tags und IAM-Ablehnungsrichtlinien für Ihr Projekt benötigen:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Ressourcen mit einer Ablehnungsrichtlinie schützen

Google Cloud Console

  1. Erstellen Sie ein Tag, das angibt, dass die Ressource von Terraform verwaltet wird. Erstellen Sie beispielsweise einen Tag-Schlüssel edit_restriction mit dem Tag-Wert terraform_only.
  2. Erstellen Sie eine IAM-Ablehnungsrichtlinie, die allen Hauptkonten außer Ihrem Terraform-Dienstkonto die Berechtigungen zum Aktualisieren und Löschen verweigert, wenn die Ressource das Tag edit_restriction:terraform_only hat.

    Die Ablehnungsrichtlinie muss die folgenden Konfigurationen enthalten:

    • Zu verweigernde Berechtigungen:
      • monitoring.dashboards.update
      • monitoring.dashboards.delete
      • monitoring.alertPolicies.update
      • monitoring.alertPolicies.delete
    • Zustand: Die Ressource muss das Tag edit_restriction:terraform_only haben.
    • Ausnahme: Fügen Sie die Hauptkonto-ID für das Terraform-Dienstkonto der Ausnahmeliste der Ablehnungsregel hinzu.
  3. Erstellen Sie das Dashboard oder die Benachrichtigungsrichtlinie, die Sie schützen möchten, und hängen Sie dann das Tag an die Ressource an.

Terraform

So konfigurieren Sie Einschränkungen mit Terraform:

  1. Installieren und konfigurieren Sie Terraform für Ihr Projekt.
  2. Tag-Schlüssel und -Wert erstellen
  3. IAM-Ablehnungsrichtlinie erstellen
  4. Erstellen Sie die Benachrichtigungsrichtlinie oder das Dashboard, die bzw. das Sie schützen möchten. Weitere Informationen finden Sie unter Benachrichtigungsrichtlinien mit Terraform erstellen und Dashboards mit Terraform erstellen.
  5. Binden Sie das Tag an die Ressource. Wenn Sie mit Terraform ein Tag an ein Dashboard oder eine Benachrichtigungsrichtlinie anhängen möchten, erstellen Sie mit google_tags_tag_binding eine Tag-Bindungsressource.

Die folgende Terraform-Konfiguration führt beispielsweise Folgendes aus:

  • Erstellt einen Tag-Schlüssel und einen Tag-Wert.
  • Erstellt eine Ablehnungsrichtlinie.
  • Erstellt eine Benachrichtigungsrichtlinie.
  • Bindet ein Tag an die Benachrichtigungsrichtlinie.

Sie können eine Ressource nicht erstellen und gleichzeitig ein Tag daran binden. Sie müssen die Ressource und die Tag-Bindung separat erstellen.

# Create the tag key.
resource "google_tags_tag_key" "lock_key" {
  parent     = "projects/PROJECT_ID"
  short_name = "edit_restriction"
}

# Create the tag value.
resource "google_tags_tag_value" "restricted_value" {
  parent     = "tagKeys/${google_tags_tag_key.lock_key.name}"
  short_name = "terraform_only"
}

# Define the IAM deny policy.
resource "google_iam_deny_policy" "terraform_lock" {
  parent       = urlencode(
    "cloudresourcemanager.googleapis.com/projects/PROJECT_ID"
  )
  name         = "terraform-exclusive-lock"
  display_name = "Deny modifications except for Terraform service account"

  rules {
    deny_rule {
      denied_principals = ["principalSet://goog/public:all"]

      # Exempt the Terraform service account.
      exception_principals = [
        join("", [
          "principal://iam.googleapis.com/projects/-/",
          "serviceAccounts/TERRAFORM_SERVICE_ACCOUNT_EMAIL"
        ])
      ]

      denied_permissions = [
        "monitoring.googleapis.com/alertPolicies.update",
        "monitoring.googleapis.com/alertPolicies.delete",
        "monitoring.googleapis.com/dashboards.update",
        "monitoring.googleapis.com/dashboards.delete"
      ]

      denial_condition {
        title      = "is_restricted_resource"
        expression = join("", [
          "resource.matchTag(",
          "'PROJECT_ID/edit_restriction', ",
          "'terraform_only')"
        ])
      }
    }
  }
}

# Create the alerting policy.
resource "google_monitoring_alert_policy" "protected_policy" {
  display_name = "Restricted Alert Policy"
  combiner     = "OR"
  conditions {
    display_name = "High CPU"
    condition_threshold {
      filter     = join(" AND ", [
        "metric.type=\"compute.googleapis.com/instance/cpu/utilization\"",
        "resource.type=\"gce_instance\""
      ])
      duration   = "60s"
      comparison = "COMPARISON_GT"
      threshold_value = 0.9
    }
  }
}

# Bind the tag to the alerting policy.
resource "google_tags_tag_binding" "policy_binding" {
  parent    = join("", [
    "//monitoring.googleapis.com/",
    google_monitoring_alert_policy.protected_policy.name
  ])
  tag_value = google_tags_tag_value.restricted_value.id
}

Zugriff auf Teamebene konfigurieren

Angenommen, Sie sind Administrator eines Projekts, in dem Anwendungen für mehrere Teams überwacht werden. Sie möchten, dass Teammitglieder Dashboards und Benachrichtigungsrichtlinien erstellen, aber nur die Ressourcen ihres eigenen Teams bearbeiten können. Sie möchten Teammitgliedern nicht die umfassende Rolle „Monitoring Editor“ (roles/monitoring.editor) zuweisen, da diese Rolle die Berechtigung zum Bearbeiten aller Monitoring-Ressourcen im Projekt gewährt.

In diesem Abschnitt wird veranschaulicht, wie Sie mit Tags einem Teammitglied die Berechtigungen erteilen können, die zum Bearbeiten von Dashboards und Benachrichtigungsrichtlinien erforderlich sind, die dem Team gehören.

Hinweis

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt oder Ihre Organisation zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren von Tags und IAM-Rollen für Ihr Projekt benötigen:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Teamspezifische Tags anwenden

Google Cloud Console

  1. Erstellen Sie ein Tag für jedes Team. Erstellen Sie einen neuen Tag-Schlüssel und dann Tag-Werte für diesen Schlüssel. Wenn Sie beispielsweise einen Tag-Schlüssel mit dem Namen owner mit den Werten team_a und team_b erstellen, erhalten Sie zwei Tags: owner:team_a und owner:team_b. Notieren Sie die Tag-Schlüssel-ID und die Tag-Wert-ID für jedes Tag.
  2. Erstellen Sie eine benutzerdefinierte Rolle mit dem Namen „Dashboard and Alerting Policy Creator“ (Ersteller von Dashboards und Benachrichtigungsrichtlinien) und fügen Sie die folgenden Berechtigungen hinzu:

    • monitoring.alertPolicies.create
    • monitoring.alertPolicies.createTagBinding
    • monitoring.dashboards.create
    • monitoring.dashboards.createTagBinding
    • resourcemanager.tagValueBindings.create

    Mit dieser Rolle können Sie Dashboards und Benachrichtigungsrichtlinien erstellen und Tags anwenden.

  3. Weisen Sie allen Teammitgliedern die folgenden Rollen zu:

    • Dashboard- und Benachrichtigungsrichtlinien-Ersteller (die benutzerdefinierte Rolle, die Sie erstellt haben)
    • Monitoring-Betrachter (roles/monitoring.viewer)
    • Tag-Betrachter (roles/resourcemanager.tagViewer)
  4. Weisen Sie den Teammitgliedern für jedes Team die folgenden Rollen mit einer angehängten IAM-Bedingung zu:

    • „Tag User“ (roles/resourcemanager.tagUser): Mit dieser Funktion können Sie das Tag Ihres Teams auf Ressourcen anwenden.
    • Monitoring Editor (roles/monitoring.editor): Mit dieser Rolle können Sie Dashboards und Benachrichtigungsrichtlinien bearbeiten, die das Tag Ihres Teams haben.

    Fügen Sie die IAM-Bedingung den Rollenzuweisungen so hinzu:

    • Bedingungstyp: Tag
    • Operator: has value ID
    • keyID: KEY_ID
    • valueID: TEAM_VALUE_ID

    Die ID des Tag-Schlüssels und die Wert-ID finden Sie im Resource Manager. Weitere Informationen finden Sie unter Zugriff auf getaggte Ressourcen.

  5. Erstellen Sie das Dashboard oder die Benachrichtigungsrichtlinie, auf die Sie den Zugriff einschränken möchten, und hängen Sie dann das Tag an die Ressource an.

Terraform

So konfigurieren Sie den Zugriff auf Teamebene mit Terraform:

  1. Installieren und konfigurieren Sie Terraform für Ihr Projekt.
  2. Tag-Schlüssel und Tag-Wert für jedes Team erstellen.
  3. Erstellen Sie eine benutzerdefinierte Rolle und fügen Sie die folgenden Berechtigungen hinzu:
    • monitoring.alertPolicies.create
    • monitoring.alertPolicies.createTagBinding
    • monitoring.dashboards.create
    • monitoring.dashboards.createTagBinding
    • resourcemanager.tagValueBindings.create
  4. Weisen Sie allen Mitgliedern die benutzerdefinierte Rolle, die Rolle „Monitoring-Betrachter“ (roles/monitoring.viewer) und die Rolle „Tag-Betrachter“ (roles/resourcemanager.tagViewer) zu.
  5. Weisen Sie jedem Team die Rolle „Tag-Nutzer“ (roles/resourcemanager.tagUser) und die Rolle „Monitoring Editor“ (roles/monitoring.editor) mit einer bedingten Bindung basierend auf dem Tag-Wert des Teams zu.
  6. Erstellen Sie die Benachrichtigungsrichtlinie oder das Dashboard, für die bzw. das Sie den Zugriff einschränken möchten. Weitere Informationen finden Sie unter Dashboards mit Terraform erstellen und Benachrichtigungsrichtlinien mit Terraform erstellen.
  7. Binden Sie das Tag an die Ressource. Wenn Sie mit Terraform ein Tag an ein Dashboard oder eine Benachrichtigungsrichtlinie anhängen möchten, erstellen Sie mit google_tags_tag_binding eine Tag-Bindungsressource.

Die folgende Terraform-Konfiguration führt beispielsweise Folgendes aus:

  • Erstellt einen Tag-Schlüssel und einen Tag-Wert.
  • Erstellt eine benutzerdefinierte Rolle.
  • Wendet IAM-Bindungen an, die erforderliche Rollen und bedingte Berechtigungen gewähren.
  • Erstellt ein Dashboard.
  • Bindet ein Tag an das Dashboard, um die Teamverantwortung festzulegen.

Sie können eine Ressource nicht erstellen und gleichzeitig ein Tag daran binden. Sie müssen die Ressource und die Tag-Bindung separat erstellen.

# Create the tag key.
resource "google_tags_tag_key" "res_tag_key" {
  parent      = "projects/PROJECT_ID"
  short_name  = "owner"
  description = "Identifies the team that owns the resource"
}

# Create the tag value.
# Note: You must create a tag value resource for each team.
resource "google_tags_tag_value" "team_a_value" {
  parent      = "tagKeys/${google_tags_tag_key.res_tag_key.name}"
  short_name  = "team_a"
  description = "Team A ownership tag value"
}

# Create the custom Creator role.
resource "google_project_iam_custom_role" "creator_role" {
  role_id     = "dashboardAndPolicyCreator"
  title       = "Dashboard and Alerting Policy Creator"
  permissions = [
    "monitoring.alertPolicies.create",
    "monitoring.alertPolicies.createTagBinding",
    "monitoring.dashboards.create",
    "monitoring.dashboards.createTagBinding",
    "resourcemanager.tagValueBindings.create"
  ]
}

# Grant the Custom Creator role to all members.
resource "google_project_iam_binding" "creator_grant" {
  project = "PROJECT_ID"
  role    = join("/", [
    "projects",
    "PROJECT_ID",
    "roles",
    google_project_iam_custom_role.creator_role.role_id
  ])
  members = ["group:ALL_MEMBERS_GROUP_EMAIL"]
}

# Grant the Monitoring Viewer role to all members.
resource "google_project_iam_binding" "viewer_grant" {
  project = "PROJECT_ID"
  role    = "roles/monitoring.viewer"
  members = ["group:ALL_MEMBERS_GROUP_EMAIL"]
}

# Grant the Tag Viewer role to all members.
resource "google_project_iam_binding" "tag_viewer_grant" {
  project = "PROJECT_ID"
  role    = "roles/resourcemanager.tagViewer"
  members = ["group:ALL_MEMBERS_GROUP_EMAIL"]
}

# Grant the Tag User role with a condition.
# Note: You have to configure this team-specific binding for each team.
resource "google_project_iam_binding" "tag_user_grant" {
  project = "PROJECT_ID"
  role    = "roles/resourcemanager.tagUser"
  members = ["group:TEAM_A_GROUP_EMAIL"]

  condition {
    title       = "restrict_to_team_a"
    description = "Allow Tag User only for team_a tag"
    expression  = join("", [
      "resource.matchTagId('",
      google_tags_tag_key.res_tag_key.name,
      "', '",
      google_tags_tag_value.team_a_value.id,
      "')"
    ])
  }
}

# Grant the Monitoring Editor role with a condition.
# Note: You have to configure this team-specific binding for each team.
resource "google_project_iam_binding" "editor_grant" {
  project = "PROJECT_ID"
  role    = "roles/monitoring.editor"
  members = ["group:TEAM_A_GROUP_EMAIL"]

  condition {
    title       = "restrict_to_team_a"
    description = "Allow Monitoring Editor only for team_a tag"
    expression  = join("", [
      "resource.matchTagId('",
      google_tags_tag_key.res_tag_key.name,
      "', '",
      google_tags_tag_value.team_a_value.id,
      "')"
    ])
  }
}

# Create the dashboard.
resource "google_monitoring_dashboard" "example_dashboard" {
  dashboard_json = jsonencode({
    "displayName": "System Health Overview",
    "gridLayout": { "columns": "2", "widgets": [] }
  })
}

# Apply the tag binding to the dashboard to give team A ownership.
resource "google_tags_tag_binding" "dashboard_tag" {
  parent    = join("", [
    "//monitoring.googleapis.com/",
    google_monitoring_dashboard.example_dashboard.id
  ])
  tag_value = google_tags_tag_value.team_a_value.id
}

Tags für Dashboards und Benachrichtigungsrichtlinien verwalten

Sie können Tags an Dashboards und Benachrichtigungsrichtlinien anhängen, sie auflisten und entfernen. Verwenden Sie dazu die Google Cloud -Console oder die gcloud-CLI.

Hinweis

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt oder Ihre Organisation zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwalten von Tags für Cloud Monitoring-Ressourcen benötigen:

  • Monitoring Viewer (roles/monitoring.viewer)
  • Tag-Betrachter (roles/resourcemanager.tagViewer)
  • Eine benutzerdefinierte Rolle mit den Mindestberechtigungen, die für die erforderlichen Tag-Vorgänge und den erforderlichen Ressourcentyp benötigt werden. Weitere Informationen finden Sie im Abschnitt Erforderliche Berechtigungen.

Wenn Sie Ihre benutzerdefinierte Rolle einrichten, können Sie den Abschnitt Erforderliche Berechtigungen maximieren, um die für die einzelnen Tag-Vorgänge erforderlichen Berechtigungen zu sehen:

Erforderliche Berechtigungen

Für jeden aufgeführten Tag-Vorgang sind die folgenden Berechtigungen erforderlich:

  • Tags an Dashboards anhängen:
    • resourcemanager.tagValueBindings.create
    • monitoring.dashboards.createTagBinding
  • Tags an Benachrichtigungsrichtlinien anhängen:
    • resourcemanager.tagValueBindings.create
    • monitoring.alertPolicies.createTagBinding
  • Tags aus Dashboards entfernen:
    • resourcemanager.tagValueBindings.delete
    • monitoring.dashboards.deleteTagBinding
  • Tags aus Benachrichtigungsrichtlinien entfernen:
    • resourcemanager.tagValueBindings.delete
    • monitoring.alertPolicies.deleteTagBinding

Tags anhängen

So hängen Sie ein Tag an ein Dashboard oder eine Benachrichtigungsrichtlinie an:

Google Cloud Console

Wählen Sie den Ressourcentyp aus, dem Sie Tags zuweisen möchten:

Dashboards

  1. Öffnen Sie in der Google Cloud Console die Seite Dashboards :

    Zu Dashboards

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.

  2. Wählen Sie das Dashboard aus, dem Sie ein Tag hinzufügen möchten.
  3. Klicken Sie auf Tags.
  4. Suchen Sie im Dialogfeld im Bereich Direkte Tags nach dem Tag, indem Sie die Organisation oder das Projekt auswählen, in dem das Tag erstellt wurde. Wenn Sie beispielsweise ein Tag verwenden möchten, das auf Projektebene erstellt wurde, wählen Sie Aktuelles Projekt auswählen als Bereich aus.

    Sie können auch manuell nach der Projekt-, Organisations- oder Tag-ID suchen, indem Sie die Option Manuelle Eingabe auswählen.

  5. Wählen Sie das entsprechende Schlüssel/Wert-Paar aus und klicken Sie auf Speichern.
  6. Es wird ein Dialogfeld zur Bestätigung Ihrer Änderungen angezeigt. Klicken Sie auf Bestätigen, um die Änderungen abzuschließen.

Benachrichtigungsrichtlinien

  1. Rufen Sie in der Google Cloud Console die Seite  Richtlinien auf:

    Zu Benachrichtigungsrichtlinien

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.

  2. Wählen Sie die Benachrichtigungsrichtlinie aus, der Sie ein Tag zuweisen möchten.
  3. Klicken Sie auf Tags.
  4. Suchen Sie im Dialogfeld im Bereich Direkte Tags nach dem Tag, indem Sie die Organisation oder das Projekt auswählen, in dem das Tag erstellt wurde. Wenn Sie beispielsweise ein Tag verwenden möchten, das auf Projektebene erstellt wurde, wählen Sie Aktuelles Projekt auswählen als Bereich aus.

    Sie können auch manuell nach der Projekt-, Organisations- oder Tag-ID suchen, indem Sie die Option Manuelle Eingabe auswählen.

  5. Wählen Sie das entsprechende Schlüssel/Wert-Paar aus und klicken Sie auf Speichern.
  6. Es wird ein Dialogfeld zur Bestätigung Ihrer Änderungen angezeigt. Klicken Sie auf Bestätigen, um die Änderungen abzuschließen.

gcloud

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • TAG_VALUE_ID: Die permanente ID oder der Namespace-Name des Tag-Werts. Beispiel: tagValues/4567890123. Weitere Informationen zu Tag-IDs finden Sie unter Tag-Definitionen und Kennzeichnungen.
  • PARENT: Der vollständig qualifizierte Name der übergeordneten Ressource. Beispiele: //monitoring.googleapis.com/projects/PROJECT_ID_OR_NUMBER/dashboards/DASHBOARD_ID oder //monitoring.googleapis.com/projects/PROJECT_ID_OR_NUMBER/alertPolicies/POLICY_ID.

Führen Sie den Befehl resource-manager tags bindings create aus:

Linux, macOS oder Cloud Shell

gcloud resource-manager tags bindings create \
    --tag-value=TAG_VALUE_ID \
    --parent=PARENT

Windows (PowerShell)

gcloud resource-manager tags bindings create `
    --tag-value=TAG_VALUE_ID `
    --parent=PARENT

Windows (cmd.exe)

gcloud resource-manager tags bindings create ^
    --tag-value=TAG_VALUE_ID ^
    --parent=PARENT

Sie sollten eine Antwort ähnlich der folgenden erhalten:

'@type': type.googleapis.com/google.cloud.resourcemanager.v3.TagBinding
name: tagBindings/%2F%2Fmonitoring.googleapis.com%2Fprojects%2F1234567890%2FalertPolicies%2F0987654321/tagValues/1029384756
parent: //monitoring.googleapis.com/projects/1234567890/alertPolicies/0987654321
tagValue: tagValues/1029384756
tagValueNamespacedName: my-project/owner/team_a

Tags anzeigen

So rufen Sie die Tags auf, die einem Dashboard oder einer Benachrichtigungsrichtlinie zugewiesen sind:

Google Cloud Console

Wählen Sie den Ressourcentyp aus, für den Sie Tags ansehen möchten:

Dashboards

  1. Öffnen Sie in der Google Cloud Console die Seite Dashboards :

    Zu Dashboards

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.

  2. Wählen Sie das Dashboard aus, für das Sie Tags aufrufen möchten.
  3. Klicken Sie auf Tags. Ein Dialogfeld mit allen angehängten Tags wird geöffnet.

Benachrichtigungsrichtlinien

  1. Rufen Sie in der Google Cloud Console die Seite  Richtlinien auf:

    Zu Benachrichtigungsrichtlinien

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.

  2. Wählen Sie die Benachrichtigungsrichtlinie aus, für die Sie Tags aufrufen möchten.
  3. Klicken Sie auf Tags. Ein Dialogfeld mit allen angehängten Tags wird geöffnet.

gcloud

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • PARENT: Der vollständig qualifizierte Name der übergeordneten Ressource. Beispiele: //monitoring.googleapis.com/projects/PROJECT_ID_OR_NUMBER/dashboards/DASHBOARD_ID oder //monitoring.googleapis.com/projects/PROJECT_ID_OR_NUMBER/alertPolicies/POLICY_ID.

Führen Sie den Befehl resource-manager tags bindings list aus:

Linux, macOS oder Cloud Shell

gcloud resource-manager tags bindings list \
    --parent=PARENT

Windows (PowerShell)

gcloud resource-manager tags bindings list `
    --parent=PARENT

Windows (cmd.exe)

gcloud resource-manager tags bindings list ^
    --parent=PARENT

Wenn Sie die von der Ressource übernommenen Tags ansehen möchten, fügen Sie das Flag --effective hinzu. Dadurch wird eine Antwort ähnlich der folgenden zurückgegeben:

  namespacedTagKey: my-project/owner
  namespacedTagValue: my-project/owner/team_a
  tagKey: tagKeys/5647382910
  tagValue: tagValues/1029384756
  inherited: true
  

Wenn alle Tags explizit an die Ressource angehängt sind und keine Tags übernommen werden, wird das Feld inherited ausgelassen.

Tags aus einer Ressource entfernen

Wenn Sie ein Tag entfernen möchten, das einem Dashboard oder einer Benachrichtigungsrichtlinie zugeordnet ist, müssen Sie die Tag-Bindung löschen. Wenn Sie ein Tag aus einer Ressource entfernen, wird es nicht gelöscht. Eine Anleitung zum Löschen eines Tags finden Sie unter Tags löschen.

Google Cloud Console

Wählen Sie den Ressourcentyp aus, aus dem Sie Tags entfernen möchten:

Dashboards

  1. Öffnen Sie in der Google Cloud Console die Seite Dashboards :

    Zu Dashboards

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.

  2. Wählen Sie das Dashboard aus, aus dem Sie ein Tag entfernen möchten.
  3. Klicken Sie auf Tags.
  4. Bewegen Sie den Mauszeiger im Dialogfeld auf das Tag, das Sie entfernen möchten, und klicken Sie auf  Element löschen. Klicken Sie auf Speichern, um die Änderungen zu speichern.
  5. Es wird ein Dialogfeld zur Bestätigung Ihrer Änderungen angezeigt. Klicken Sie auf Bestätigen, um die Änderungen abzuschließen.

Benachrichtigungsrichtlinien

  1. Rufen Sie in der Google Cloud Console die Seite  Richtlinien auf:

    Zu Benachrichtigungsrichtlinien

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.

  2. Wählen Sie die Benachrichtigungsrichtlinie aus, aus der Sie ein Tag entfernen möchten.
  3. Klicken Sie auf Tags.
  4. Bewegen Sie den Mauszeiger im Dialogfeld auf das Tag, das Sie entfernen möchten, und klicken Sie auf  Element löschen. Klicken Sie auf Speichern, um die Änderungen zu speichern.
  5. Es wird ein Dialogfeld zur Bestätigung Ihrer Änderungen angezeigt. Klicken Sie auf Bestätigen, um die Änderungen abzuschließen.

gcloud

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • TAG_VALUE_ID: Die permanente ID oder der Namespace-Name des Tag-Werts. Beispiel: tagValues/4567890123. Weitere Informationen zu Tag-IDs finden Sie unter Tag-Definitionen und Kennzeichnungen.
  • PARENT: Der vollständig qualifizierte Name der übergeordneten Ressource. Beispiele: //monitoring.googleapis.com/projects/PROJECT_ID_OR_NUMBER/dashboards/DASHBOARD_ID oder //monitoring.googleapis.com/projects/PROJECT_ID_OR_NUMBER/alertPolicies/POLICY_ID.

Führen Sie den Befehl resource-manager tags bindings delete aus:

Linux, macOS oder Cloud Shell

gcloud resource-manager tags bindings delete \
    --tag-value=TAG_VALUE_ID \
    --parent=PARENT

Windows (PowerShell)

gcloud resource-manager tags bindings delete `
    --tag-value=TAG_VALUE_ID `
    --parent=PARENT

Windows (cmd.exe)

gcloud resource-manager tags bindings delete ^
    --tag-value=TAG_VALUE_ID ^
    --parent=PARENT
Die Antwort ist leer.

Beschränkungen

Sie können Dashboards oder Benachrichtigungsrichtlinien nicht nach angehängten Tags filtern. Wenn Sie Ressourcen mit einem bestimmten Tag auflisten möchten, empfehlen wir, dem Tag ein Label hinzuzufügen und nach dem Label zu filtern. Informationen zum Hinzufügen von Labels finden Sie unter Benachrichtigungen mit Labels versehen und Labels zu Dashboards hinzufügen oder daraus entfernen.