Zugriff auf Ihre Instanzen mit ACL-Richtlinien schützen

Mit ACL-Richtlinien (Access Control List) in Memorystore for Valkey können Sie den Zugriff auf Ihre Instanzen sichern. Sie können eine detaillierte Sicherheit aktivieren, indem Sie den Nutzer- und Dienstzugriff auf bestimmte Schlüssel, Befehle und Pub/Sub-Channels beschränken.

Im Folgenden finden Sie einige Beispiele für Anwendungsfälle, in denen ACL-Richtlinien verwendet werden, um den Zugriff auf Instanzen zu sichern:

  • Rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC) bereitstellen: Erstellen Sie separate Nutzerprofile für verschiedene Komponenten Ihrer Anwendungen. Ein Web-Frontend kann beispielsweise schreibgeschützten Zugriff haben, während ein Hintergrunddienst Lese- und Schreibzugriff hat. So werden versehentliche Datenlecks oder Manipulationen verhindert.
  • Destruktive Befehle verhindern: Beschränken Sie gefährliche Befehle wie FLUSHALL, FLUSHDB oder CONFIG auf Administratoren der obersten Ebene. So wird die Datenintegrität vor Softwarefehlern oder manuellen Fehlern geschützt.
  • Sicherheit für Mandantenanwendungen bereitstellen: Verwenden Sie separate ACL-Nutzer für verschiedene Mikrodienste oder externe Partner. So wird sichergestellt, dass Nutzer eines Dienstes keine Schlüssel lesen oder ändern können, die einem anderen Dienst gehören.

    Memorystore for Valkey bietet keine Mandantenfähigkeit auf Ressourcenebene. Auch wenn Keyspaces aufgeteilt sind, kann ein Dienst einen unverhältnismäßigen Anteil an Arbeitsspeicher oder CPU-Leistung verbrauchen.

  • Analysen und Monitoring mit Lesezugriff durchführen: Weisen Sie einen dedizierten Nutzer zu, der nur GET oder andere schreibgeschützte Befehle (z. B. SCAN oder TYPE) für Analyse-Engines oder Dashboard-Anwendungen verwenden kann. So wird verhindert, dass versehentlich Daten geschrieben oder gelöscht werden.

  • Sichere Datenbankschlüssel: Beschränken Sie Anwendungen so, dass sie nur mit Schlüsseln interagieren, die bestimmten Mustern entsprechen (z. B. app1:*). Dies sorgt für die logische Trennung von Daten innerhalb einer Instanz.

  • Lua-Skripts deaktivieren: Verwenden Sie ACL-Richtlinien, um die Lua-Scripting-Funktionen für Ihre Instanzen zu verwalten. Das Deaktivieren oder Einschränken von Lua-Scripts kann nützlich sein, um die Leistung zu optimieren, die Funktionalität Ihrer Instanzen zu vereinfachen oder die Sicherheitsrichtlinien Ihrer Organisation einzuhalten.

Hinweis

Bevor Sie ACL-Richtlinien verwenden, müssen Sie die Anleitung in diesem Abschnitt ausführen.

Google Cloud Console, Google Cloud CLI und APIs verwenden

So verwenden Sie die Google Cloud Console, die Google Cloud CLI und APIs:

  1. Wählen Sie in der Google Cloud Console auf der Seite für die Projektauswahl ein Google Cloud -Projekt aus oder erstellen Sie eines.

    Hinweis:Wenn Sie die Ressourcen, die Sie in diesem Verfahren erstellen, nicht behalten möchten, erstellen Sie ein Projekt, anstatt ein vorhandenes Projekt auszuwählen. Wenn Sie fertig sind, können Sie das Projekt löschen und dadurch alle mit dem Projekt verknüpften Ressourcen entfernen.


    Zur Projektauswahl
  2. Die Abrechnung für Ihr Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.
  3. Installieren und initialisieren Sie die Google Cloud CLI.

    Hinweis:Wenn Sie die gcloud CLI bereits installiert haben, prüfen Sie mit gcloud components update, ob Sie die aktuelle Version verwenden. Sie benötigen mindestens die gcloud CLI-Version 489.0.0, um auf die gcloud CLI-Befehle für Memorystore for Valkey zuzugreifen.

  4. Aktivieren Sie die Memorystore for Valkey API.
    Memorystore for Valkey
  5. Aktivieren Sie die Network Connectivity API.
    Network Connectivity API
  6. Aktivieren Sie die Service Consumer Management API.
    Service Consumer Management API

Memorystore for Valkey-Rollen zuweisen

Achten Sie darauf, dass Sie oder das verwendete Nutzerkonto die erforderlichen Berechtigungen für die Aktion haben, die Sie ausführen möchten.

Für alle ACL-Richtlinienvorgänge benötigen Sie die Rollen Memorystore-Administrator (roles/memorystore.admin) und Memorystore-Bearbeiter (roles/memorystore.editor). Wenn Sie nur ACL-Richtlinien ansehen möchten, verwenden Sie die Rolle Memorystore-Betrachter (roles/memorystore.viewer).

Memorystore for Valkey-Berechtigungen zuweisen

Zusätzlich zu den Rollen „Memorystore-Administrator“, „Memorystore-Bearbeiter“ und „Memorystore-Betrachter“ benötigen Sie die folgenden Berechtigungen, um ACL-Richtlinien in Memorystore for Valkey zu verwenden:

Aktion Berechtigung
ACL-Richtlinie erstellen memorystore.aclPolicies.create
Einer Instanz eine ACL-Richtlinie zuweisen memorystore.instances.update
Informationen zu ACL-Richtlinien ansehen memorystore.aclPolicies.list
Informationen zu einer ACL-Richtlinie ansehen memorystore.aclPolicies.get
Informationen zu ACL-Richtlinienversionen ansehen memorystore.aclPolicyRevisions.list
Informationen zu einer ACL-Richtlinienversion ansehen memorystore.aclPolicyRevisions.get
ACL-Richtlinie ändern memorystore.aclPolicies.update
ACL-Richtlinie aus einer Instanz entfernen memorystore.instances.update
ACL-Richtlinie löschen memorystore.aclPolicies.delete

ACL-Richtlinie erstellen

Durch das Erstellen von ACL-Richtlinien in Memorystore for Valkey können Sie die Sicherheit Ihrer Instanzen verbessern, indem Sie den Nutzerzugriff auf bestimmte Schlüssel, Befehle und Pub/Sub-Channels einschränken.

Sie können eine ACL-Richtlinie entweder mit der Google Cloud Console oder der gcloud CLI erstellen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.

    Memorystore for Valkey

  2. Klicken Sie im Navigationsbereich auf ACL-Richtlinien.

  3. Klicken Sie auf der Seite ACL-Richtlinien auf Richtlinie erstellen.

  4. Führen Sie im Fenster Richtlinie erstellen die folgenden Schritte aus:

    1. Geben Sie im Feld Richtlinienname einen Namen für die ACL-Richtlinie ein. Der Richtlinienname darf nur Kleinbuchstaben, Ziffern und Bindestriche enthalten. Er muss auch mit einem Buchstaben beginnen und darf in der Region nur einmal vorkommen.

    2. Wählen Sie im Menü Region die Region aus, in der Memorystore for Valkey die ACL-Richtlinie erstellen soll.

    3. Klicken Sie auf Regel hinzufügen.

    4. Geben Sie im Feld Nutzer-ID den Namen des Nutzers ein, auf den die ACL-Richtlinie angewendet werden soll.

    5. Geben Sie im Feld Zugriffsstring den Zugriffsstring für die Richtlinie ein. Der Zugriffsstring ist eine für Menschen lesbare Regel, die die spezifischen Berechtigungen für den Nutzer definiert.

      Wenn Sie beispielsweise dem default-Superuser Lese- und Schreibberechtigungen für alle ACL-Schlüssel für die Instanz gewähren möchten, füllen Sie die Felder User ID (Nutzer-ID) und Access string (Zugriffsstring) so aus:

      Nutzer-ID Zugriffsstring
      default on ~* &* +@all

      Mit dieser Regel werden dem default-Nutzer die folgenden Berechtigungen gewährt:

      • on: Der Nutzer ist aktiv und für die Authentifizierung aktiviert.
      • ~*: Der Nutzer hat Lese- und Schreibzugriff auf alle möglichen Schlüssel.
      • &*: Der Nutzer hat Zugriff auf alle Pub/Sub-Channels.
      • +@all: Der Nutzer kann alle verfügbaren Befehle ausführen.

      Weitere Informationen zu anderen ACL-Regeln und ‑Richtlinien, die Sie erstellen können, finden Sie in der Valkey-Dokumentation unter ACL.

    6. Wiederholen Sie die Schritte c bis e für zusätzliche ACL-Regeln, die Sie für die Richtlinie erstellen möchten.

    7. Klicken Sie auf Erstellen.

gcloud

Verwenden Sie den Befehl gcloud memorystore acl-policies create, um eine ACL-Richtlinie zu erstellen.

gcloud memorystore acl-policies create ACL_POLICY_NAME \
--location=REGION \
--rules=rule="on ~* +@all",username="lucian" \
--rules=rule="on +get",username="taylor"

Ersetzen Sie die folgenden Werte:

  • ACL_POLICY_NAME: der Name der ACL-Richtlinie, die Sie erstellen. Der Richtlinienname darf nur Kleinbuchstaben, Ziffern und Bindestriche enthalten. Er muss auch mit einem Buchstaben beginnen und darf in der Region nur einmal vorkommen.
  • REGION: Die Region, in der sich die ACL-Richtlinie befinden soll.

Für diese Richtlinie wird die einfache tokenbasierte Authentifizierung verwendet. Sie enthält Regeln, mit denen die folgenden Aktionen ausgeführt werden:

  • Die erste Regel gewährt lucian die Berechtigung ~* +@all. Mit dieser Berechtigung kann der Nutzer auf alle Schlüssel zugreifen und alle Befehle ausführen.
  • Die zweite Regel gewährt taylor die Berechtigung get. Mit dieser Berechtigung kann der Nutzer die Werte abrufen, die mit Schlüsseln verknüpft sind. Sie beschränkt den Zugriff des Nutzers auf schreibgeschützte Datenvorgänge und verhindert, dass der Nutzer Schlüssel ändert.

Wenn Sie Regeln für eine ACL-Richtlinie erstellen möchten, die die IAM-Authentifizierung (Identity and Access Management) verwendet, empfehlen wir, IAM-Principals für die Nutzernamen zu verwenden, z. B. die E-Mail-Adressen der Nutzer.

gcloud memorystore acl-policies create ACL_POLICY_NAME \
--location=REGION \
--rules=rule="on ~* +@all",username="lucian@example.com" \
--rules=rule="on +get",username="taylor@example.com"

Wenn Sie eine Regel für eine ACL-Richtlinie erstellen möchten, für die keine Authentifizierung erforderlich ist, muss der Nutzer der default-Nutzer sein.

gcloud memorystore acl-policies create ACL_POLICY_NAME \
--location=REGION \
--rules=rule="on ~* +@all",username="default"

Weitere Informationen zur einfachen tokenbasierten Authentifizierung und zur IAM-Authentifizierung finden Sie unter Zugriff auf Ihre Instanzen mit einfacher tokenbasierter Authentifizierung sichern und IAM-Authentifizierung.

Weitere Informationen zu anderen ACL-Regeln und ‑Richtlinien, die Sie erstellen können, finden Sie in der Valkey-Dokumentation unter ACL.

Einer Instanz eine ACL-Richtlinie zuweisen

Wenn Sie einer Instanz eine ACL-Richtlinie zuweisen oder eine zugewiesene Richtlinie ersetzen, kann Memorystore for Valkey die Regeln der Richtlinie auf die Instanz anwenden. Dadurch schränken Sie den Nutzerzugriff auf bestimmte Schlüssel, Befehle und Pub/Sub-Channels ein.

Sie können einer Instanz eine ACL-Richtlinie entweder über dieGoogle Cloud Console oder die gcloud CLI zuweisen.

Richtlinie einer neuen Instanz zuweisen

Informationen zum Erstellen einer Instanz und Zuweisen einer ACL-Richtlinie zur Instanz finden Sie unter Instanzen erstellen.

Richtlinie einer vorhandenen Instanz zuweisen

Um die Sicherheit einer vorhandenen Instanz zu erhöhen, können Sie der Instanz eine ACL-Richtlinie zuweisen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.

    Memorystore for Valkey

  2. Klicken Sie auf die ID der Instanz, der Sie eine ACL-Richtlinie zuweisen möchten.

  3. Scrollen Sie auf der Seite Instanz auf einen Blick zur Karte Sicherheit.

  4. Klicken Sie neben dem Feld ACL-Richtlinie auf Bearbeiten ().

  5. Führen Sie im Fenster ACL-Richtlinie bearbeiten die folgenden Schritte aus:

    1. Wählen Sie im Menü Richtlinie die Richtlinie aus, die Sie der Instanz zuweisen möchten.

    2. Klicken Sie auf Instanz aktualisieren.

gcloud

Mit dem Befehl gcloud memorystore instances update können Sie einer vorhandenen Instanz eine ACL-Richtlinie zuweisen.

gcloud memorystore instances update INSTANCE_ID \
--update_mask=acl_policy \
--acl-policy=ACL_POLICY_NAME \
--location=REGION

Ersetzen Sie die folgenden Werte:

  • INSTANCE_ID: Die ID der Instanz, der Sie die ACL-Richtlinie zuweisen
  • ACL_POLICY_NAME: der Name der ACL-Richtlinie
  • REGION: die Region, in der sich die Instanz befindet.

Informationen zu ACL-Richtlinien ansehen

Wenn Sie sich Informationen zu ACL-Richtlinien in Memorystore for Valkey ansehen, können Sie die Sicherheit aufrechterhalten, die Betriebsstabilität Ihrer Umgebung gewährleisten und In-Memory-Daten prüfen. Diese Richtlinien definieren, welche Nutzer bestimmte Schlüsselmuster lesen oder ändern, bestimmte Befehle ausführen oder auf bestimmte Pub/Sub-Channels zugreifen können.

Sie können Informationen zu ACL-Richtlinien entweder in derGoogle Cloud Console oder mit der gcloud CLI aufrufen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.

    Memorystore for Valkey

  2. Klicken Sie im Navigationsbereich auf ACL-Richtlinien.

    Auf der Seite ACL-Richtlinien können Sie die folgenden Informationen zu jeder ACL-Richtlinie aufrufen:

    • Richtlinien-ID: die eindeutige ID der Richtlinie
    • Standort: Die Region, in der sich die Richtlinie befindet
    • Erstellt am: Datum und Uhrzeit der Erstellung der Richtlinie
    • Aktualisiert am: Das Datum und die Uhrzeit der letzten Aktualisierung der Richtlinie
    • Anzahl der Regeln: Die Gesamtzahl der Regeln für die Richtlinie.
    • Verwendet von Instanzen: Die Instanzen, die der Richtlinie zugewiesen sind

gcloud

Verwenden Sie den Befehl gcloud memorystore acl-policies list, um Informationen zu ACL-Richtlinien aufzurufen.

gcloud memorystore acl-policies list
--location=REGION

Ersetzen Sie REGION durch die Region, in der sich die ACL-Richtlinie befindet.

Informationen zu einer ACL-Richtlinie ansehen

Wenn Sie Informationen zu einer ACL-Richtlinie in Memorystore for Valkey aufrufen, können Sie Sicherheitsprüfungen durchführen, Zugriffsfehler beheben und das Prinzip der geringsten Berechtigung durchsetzen, indem Sie Nutzerbefehle, Schlüsselberechtigungen und den Zugriff auf Pub/Sub-Channels überprüfen. Außerdem können Administratoren eine ACL-Richtlinie aufrufen, um sicherzustellen, dass Ihre Anwendungen den entsprechenden Zugriff haben, und um zu restriktive Regeln zu erkennen.

Sie können Informationen zu einer ACL-Richtlinie mit der gcloud CLI aufrufen. Verwenden Sie den Befehl gcloud memorystore acl-policies describe, um diese Informationen aufzurufen.

gcloud memorystore acl-policies describe ACL_POLICY_NAME \
--location=REGION

Ersetzen Sie die folgenden Werte:

  • ACL_POLICY_NAME: der Name der ACL-Richtlinie, zu der Sie Informationen aufrufen möchten
  • REGION: die Region, in der sich die ACL-Richtlinie befindet

Informationen zu ACL-Richtlinienversionen ansehen

Wenn Sie eine ACL-Richtlinie erstellen, wird in Memorystore for Valkey eine Version (Revision) für die Richtlinie erstellt. Jedes Mal, wenn Sie die Richtlinie ändern, erstellt Memorystore for Valkey eine nachfolgende Richtlinienrevision.

Da Memorystore for Valkey diese Überarbeitungen automatisch generiert, können Sie sie für interne Tracking- und Prüfzwecke verwenden. Außerdem können Sie sich die genauen Inhalte der ACL-Richtlinie in jeder früheren Version ansehen.

Mithilfe von ACL-Richtlinienversionen können Sie nachverfolgen, welche Instanzen welche Version einer Richtlinie verwenden. So behalten Sie die Sichtbarkeit und können dafür sorgen, dass Instanzen nach einer Richtlinienaktualisierung in Phasen der Eventual Consistency die richtige Version haben.

Sie können Informationen zu ACL-Richtlinienrevisionen entweder über dieGoogle Cloud Console oder die gcloud CLI aufrufen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.

    Memorystore for Valkey

  2. Klicken Sie im Navigationsbereich auf ACL-Richtlinien.

  3. Klicken Sie auf der Seite ACL-Richtlinien auf die ID der ACL-Richtlinie, deren Überarbeitungen Sie ansehen möchten. Auf der Seite ACL-Richtlinienversionen werden die folgenden Informationen angezeigt:

    • Versions-ID: Die ID jeder ACL-Richtlinienversion.
    • Überarbeitungsnummer: Die Nummer jeder ACL-Richtlinienversion.
    • Standort: Die Region, in der sich die einzelnen ACL-Richtlinienversionen befinden.
    • Erstellt am: Datum und Uhrzeit der Erstellung der jeweiligen ACL-Richtlinienversion
    • Angehängte Instanzen: Die Instanzen, die jeder ACL-Richtlinienversion zugewiesen sind.
    • Snapshot: Detaillierte Informationen zu jeder ACL-Richtlinienrevision

gcloud

Mit dem Befehl gcloud memorystore acl-policies revisions list können Sie Informationen zu ACL-Richtlinienversionen aufrufen.

gcloud memorystore acl-policies revisions list \
--acl-policy=ACL_POLICY_NAME \
--location=REGION

Ersetzen Sie die folgenden Werte:

  • ACL_POLICY_NAME: der Name der ACL-Richtlinie, die Überarbeitungen enthält, zu denen Sie Informationen aufrufen möchten
  • REGION: die Region, in der sich die ACL-Richtlinie befindet

Notieren Sie sich in der Ausgabe die Revisions-IDs. Sie benötigen diese IDs, um Informationen zu bestimmten ACL-Richtlinienversionen aufzurufen.

Informationen zu einer ACL-Richtlinienversion ansehen

Wenn Sie eine ACL-Richtlinienrevision aufrufen, sehen Sie die zugehörigen Regeln, Metadaten und eine Liste aller angehängten Instanzen. Sie können Informationen zu einer ACL-Richtlinienrevision entweder über die Google Cloud Console oder die gcloud CLI aufrufen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.

    Memorystore for Valkey

  2. Klicken Sie im Navigationsbereich auf ACL-Richtlinien.

  3. Klicken Sie auf der Seite ACL-Richtlinien auf die ID der ACL-Richtlinie, für die Sie eine Version aufrufen möchten.

  4. Klicken Sie auf der Seite ACL-Richtlinienversionen neben der ACL-Richtlinienversion, die Informationen enthält, die Sie aufrufen möchten, auf den Link Snapshot.

gcloud

Verwenden Sie den Befehl gcloud memorystore acl-policies revisions describe, um Informationen zu einer ACL-Richtlinienversion aufzurufen.

gcloud memorystore acl-policies revisions describe ACL_POLICY_REVISION_ID \
--acl-policy=ACL_POLICY_NAME \
--location=REGION

Ersetzen Sie die folgenden Werte:

  • ACL_POLICY_REVISION_ID: Die ID der ACL-Richtlinienversion, zu der Sie Informationen aufrufen möchten. Sie haben diese ID notiert, als Sie Informationen zu ACL-Richtlinienversionen aufgerufen haben.
  • ACL_POLICY_NAME: Der Name der ACL-Richtlinie, die die Überarbeitung enthält.
  • REGION: die Region, in der sich die ACL-Richtlinie befindet.

ACL-Richtlinie ändern

Durch Ändern einer ACL-Richtlinie in Memorystore for Valkey können Sie die Sicherheit erhöhen, den Zugriff nach dem Prinzip der geringsten Berechtigung erzwingen und die Betriebssicherheit verwalten. Sie können eine Richtlinie entweder mit der Google Cloud Console oder der gcloud CLI ändern.

Einer ACL-Richtlinie eine Regel hinzufügen

Um die Sicherheit einer ACL-Richtlinie zu erhöhen, fügen Sie ihr eine Regel hinzu.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.

    Memorystore for Valkey

  2. Klicken Sie im Navigationsbereich auf ACL-Richtlinien.

  3. Klicken Sie neben der ACL-Richtlinie, der Sie eine Regel hinzufügen möchten, auf Weitere Aktionen () und wählen Sie dann Bearbeiten aus.

  4. Klicken Sie im Fenster Richtlinie bearbeiten auf Regel hinzufügen.

  5. Geben Sie im Feld Nutzer-ID den Namen des Nutzers ein, auf den die ACL-Richtlinie angewendet werden soll.

  6. Geben Sie im Feld Zugriffsstring den Zugriffsstring für die Richtlinie ein. Weitere Informationen zu Zugriffsstrings für ACL-Richtlinien finden Sie unter ACL-Richtlinie erstellen.

  7. Wiederholen Sie die Schritte 4 bis 6 für zusätzliche ACL-Regeln, die Sie der Richtlinie hinzufügen möchten.

  8. Klicken Sie auf Speichern.

gcloud

Verwenden Sie den Befehl gcloud memorystore acl-policies update, um einer ACL-Richtlinie eine Regel hinzuzufügen.

gcloud memorystore acl-policies update ACL_POLICY_NAME \
--location=REGION \
--add-rules=rule="on ~list:*",username="lucian"

Ersetzen Sie die folgenden Werte:

  • ACL_POLICY_NAME: Der Name der ACL-Richtlinie, der Sie eine ACL-Regel hinzufügen möchten.
  • REGION: die Region, in der sich die ACL-Richtlinie befindet

Diese Regel gewährt lucian Zugriff auf alle Schlüssel, die mit list: beginnen.

Regel für eine ACL-Richtlinie ändern

Durch das Ändern einer ACL-Regel für eine ACL-Richtlinie wird die Sicherheit erhöht, die Betriebssicherheit verbessert und eine detailliertere Nutzerzugriffssteuerung ermöglicht. So können Sie beispielsweise Berechtigungen während der Incident Response widerrufen oder vorübergehenden Zugriff zu Debugging-Zwecken aktivieren.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.

    Memorystore for Valkey

  2. Klicken Sie im Navigationsbereich auf ACL-Richtlinien.

  3. Klicken Sie neben der ACL-Richtlinie, für die Sie eine Regel ändern möchten, auf das Dreipunkt-Menü Weitere Aktionen () und wählen Sie Bearbeiten aus.

  4. Klicken Sie im Fenster Richtlinie bearbeiten auf Regel hinzufügen.

  5. Ändern Sie in den Feldern User ID (Nutzer-ID) und Access string (Zugriffsstring) die Nutzer-ID oder den Zugriffsstring für die Richtlinie. Weitere Informationen zu Zugriffsstrings für ACL-Richtlinien finden Sie unter ACL-Richtlinie erstellen.

  6. Wiederholen Sie die Schritte 4 und 5 für zusätzliche ACL-Regeln, die Sie für die Richtlinie ändern möchten.

  7. Klicken Sie auf Speichern.

Regeln einer ACL-Richtlinie ersetzen

Ähnlich wie beim Ändern einer Regel für eine Richtlinie bietet das Ersetzen der Regeln einer Richtlinie eine höhere Sicherheit, eine verbesserte Betriebssicherheit und eine präzisere Nutzerzugriffssteuerung.

gcloud

Verwenden Sie den Befehl gcloud memorystore acl-policies update, um die Regeln einer ACL-Richtlinie zu ersetzen.

gcloud memorystore acl-policies update ACL_POLICY_NAME \
--location=REGION \
--rules=rule="on ~c*che",username="lucian"

Ersetzen Sie die folgenden Werte:

  • ACL_POLICY_NAME: Name der ACL-Richtlinie, für die Sie die ACL-Regeln ersetzen möchten
  • REGION: die Region, in der sich die ACL-Richtlinie befindet

Die Regel, die Sie für die Richtlinie ersetzen, gewährt lucian Zugriff auf alle Schlüssel, die dem Muster c*che entsprechen. Beispiel: cache, caache und ceche.

Regel aus einer ACL-Richtlinie entfernen

Wenn eine ACL-Regel nicht mehr für eine ACL-Richtlinie gilt, können Sie sie entfernen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.

    Memorystore for Valkey

  2. Klicken Sie im Navigationsbereich auf ACL-Richtlinien.

  3. Klicken Sie neben der ACL-Richtlinie, aus der Sie eine Regel entfernen möchten, auf das Dreipunkt-Menü () und wählen Sie Bearbeiten aus.

  4. Klicken Sie im Fenster Richtlinie bearbeiten neben einer Regel, die Sie aus der Richtlinie entfernen möchten, auf Regel löschen .

  5. Wiederholen Sie Schritt 4 für zusätzliche ACL-Regeln, die Sie aus der Richtlinie entfernen möchten.

  6. Klicken Sie auf Speichern.

gcloud

Verwenden Sie zum Entfernen einer Regel aus einer ACL-Richtlinie den Befehl gcloud memorystore acl-policies update.

gcloud memorystore acl-policies update ACL_POLICY_NAME \
--location=REGION \
--remove-rules=rule="on ~set",username="lucian"

Ersetzen Sie die folgenden Werte:

  • ACL_POLICY_NAME: Der Name der ACL-Richtlinie, aus der Sie eine ACL-Regel entfernen möchten.
  • REGION: die Region, in der sich die ACL-Richtlinie befindet

Wenn Sie diese Regel entfernen, werden die zugehörigen Berechtigungen für lucian widerrufen. Um auf die Instanz zuzugreifen, muss lucian jetzt eine Verbindung als default-Nutzer herstellen. Die Berechtigungen dieses Nutzers gelten.

ACL-Richtlinie aus einer Instanz entfernen

Wenn eine ACL-Richtlinie nicht mehr für eine Memorystore for Valkey-Instanz gilt, können Sie sie entfernen. Sie können eine Richtlinie entweder über dieGoogle Cloud -Konsole oder die gcloud CLI entfernen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.

    Memorystore for Valkey

  2. Klicken Sie auf die ID der Instanz, aus der Sie eine ACL-Richtlinie entfernen möchten.

  3. Scrollen Sie auf der Seite Instanz auf einen Blick zur Karte Sicherheit.

  4. Klicken Sie neben dem Feld ACL-Richtlinie auf Bearbeiten ().

  5. Führen Sie im Fenster ACL-Richtlinie bearbeiten die folgenden Schritte aus:

    1. Wählen Sie im Menü Richtlinie die Option Keine Richtlinie aus.

    2. Klicken Sie auf Instanz aktualisieren.

gcloud

Verwenden Sie den Befehl gcloud memorystore instances update, um eine ACL-Richtlinie aus einer Instanz zu entfernen.

gcloud memorystore instances update INSTANCE_ID \
--clear-acl-policy \
--location=REGION

Ersetzen Sie die folgenden Werte:

  • INSTANCE_ID: die ID der Instanz, aus der Sie die ACL-Richtlinie entfernen
  • REGION: die Region, in der sich die Instanz befindet.

ACL-Richtlinie löschen

Wenn Sie eine ACL-Richtlinie nicht mehr benötigen, können Sie sie löschen. Sie können eine Richtlinie entweder mit der Google Cloud -Konsole oder der gcloud CLI löschen.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.

    Memorystore for Valkey

  2. Klicken Sie im Navigationsbereich auf ACL-Richtlinien.

  3. Klicken Sie neben der ACL-Richtlinie, die Sie löschen möchten, auf Weitere Aktionen () und wählen Sie dann Löschen aus.

    Wenn das Menüelement Löschen deaktiviert ist, ist die Richtlinie Instanzen zugewiesen. Bevor Sie die Richtlinie löschen können, müssen Sie sie aus jeder Instanz entfernen.

  4. Führen Sie im Fenster Richtlinie löschen die folgenden Schritte aus:

    1. Geben Sie den Namen der Richtlinie in das Textfeld ein.

    2. Klicken Sie auf Löschen.

gcloud

Verwenden Sie zum Löschen einer ACL-Richtlinie den Befehl gcloud memorystore acl-policies delete.

gcloud memorystore acl-policies delete ACL_POLICY_NAME \
--location=REGION

Ersetzen Sie die folgenden Werte:

  • ACL_POLICY_NAME: Name der ACL-Richtlinie, die Sie löschen möchten
  • REGION: die Region, in der sich die ACL-Richtlinie befindet

Lua-Scripts deaktivieren

Mit ACL-Richtlinien können Sie die Lua-Scripting-Funktionen für Ihre Instanzen verwalten. Das Deaktivieren oder Einschränken von Lua-Scripts kann nützlich sein, um die Leistung zu optimieren, die Funktionalität Ihrer Instanzen zu vereinfachen oder die Sicherheitsrichtlinien Ihrer Organisation einzuhalten.

Scripting-Befehle für Nutzer deaktivieren

Wenn Sie Lua-Scripts deaktivieren möchten, damit Nutzer sie nicht ausführen können, müssen Sie ACL-Richtlinien verwenden und die Berechtigungen für die Scripting-Befehle aus dem ACL-Regelstring des Nutzers entfernen.

Valkey kategorisiert Befehle in Gruppen. Lua-Scripting fällt unter die Kategorie @scripting. Die primären Befehle, für die Sie Nutzerberechtigungen entfernen müssen, sind:

Sie können entweder alle Scripting-Befehle oder einen bestimmten Befehl für Nutzer deaktivieren. Wenn Sie Scripting-Befehle deaktivieren möchten, verwenden Sie die gcloud CLI und stellen Sie dem Befehl oder der Kategorie ein Minuszeichen (-) voran.

Alle Scripting-Befehle für einen Nutzer deaktivieren

Wenn Sie alle Scripting-Befehle für einen Nutzer deaktivieren möchten, erstellen Sie entweder eine ACL-Richtlinie und weisen Sie sie einer Instanz zu oder ändern Sie eine ACL-Richtlinie, die einer Instanz zugewiesen ist.

Richtlinie erstellen

Wenn Sie eine ACL-Richtlinie erstellen möchten, um alle Scripting-Befehle für einen Nutzer mit dem Namen lucian zu deaktivieren, verwenden Sie den Befehl gcloud memorystore acl-policies create.

gcloud memorystore acl-policies create POLICY_NAME \
--location=REGION \
--rules=rule="on ~* +@all -@scripting",username=lucian

Ersetzen Sie die folgenden Werte:

  • POLICY_NAME: der Name der ACL-Richtlinie
  • REGION: die Region, in der sich die ACL-Richtlinie befinden soll

Nachdem Sie die Richtlinie erstellt haben, müssen Sie sie einer neuen oder vorhandenen Instanz zuweisen.

Richtlinie ändern

Wenn Sie eine ACL-Richtlinie ändern möchten, um alle Scripting-Befehle für lucian zu deaktivieren, verwenden Sie den Befehl gcloud memorystore acl-policies update.

gcloud memorystore acl-policies update POLICY_NAME \
--location=REGION \
--rules=rule="on ~* +@all -@scripting",username=lucian

Ersetzen Sie die folgenden Werte:

  • POLICY_NAME: der Name der ACL-Richtlinie
  • REGION: die Region, in der sich die ACL-Richtlinie befindet

Wenn Sie nur bestimmte Berechtigungen gewähren möchten, die ein Nutzer benötigt, ändern Sie den Wert +@all. Wenn der Nutzer beispielsweise nur Zugriff auf schreibgeschützte Befehle haben soll, ändern Sie +@all in +@read. Weitere Informationen zu den Nutzerberechtigungen, die Sie festlegen können, finden Sie in der Valkey-ACL-Dokumentation.

Scripting-Befehl für einen Nutzer deaktivieren

Sie können bestimmte Befehle auswählen, die für einen Nutzer deaktiviert werden sollen. Sie können dem Nutzer beispielsweise erlauben, alle Scripting-Befehle mit Ausnahme des Befehls SCRIPT FLUSH auszuführen. Wenn Sie einen Scripting-Befehl für einen Nutzer deaktivieren möchten, erstellen Sie entweder eine ACL-Richtlinie und weisen Sie sie einer Instanz zu oder ändern Sie eine ACL-Richtlinie, die einer Instanz zugewiesen ist.

Sie können jeden Scripting-Befehl deaktivieren. In den Beispielen in diesem Abschnitt deaktivieren Sie den Befehl SCRIPT FLUSH für den Nutzer. Eine Liste der Scripting-Befehle finden Sie unter Scripting-Befehle für Nutzer deaktivieren.

Richtlinie erstellen

Verwenden Sie den Befehl gcloud memorystore acl-policies create, um eine ACL-Richtlinie zu erstellen, mit der der Scripting-Befehl SCRIPT FLUSH für lucian deaktiviert wird.

gcloud memorystore acl-policies create POLICY_NAME \
--location=REGION \
--rules=rule="on ~* -script|flush",username=lucian

Ersetzen Sie die folgenden Werte:

  • POLICY_NAME: der Name der ACL-Richtlinie
  • REGION: die Region, in der sich die ACL-Richtlinie befinden soll

Nachdem Sie die Richtlinie erstellt haben, müssen Sie sie einer neuen oder vorhandenen Instanz zuweisen.

Richtlinie ändern

Wenn Sie eine ACL-Richtlinie ändern möchten, um alle Scripting-Befehle für lucian zu deaktivieren, verwenden Sie den Befehl gcloud memorystore acl-policies update.

gcloud memorystore acl-policies update POLICY_NAME \
--location=REGION \
--rules=rule="on ~* -script|flush",username=lucian

Ersetzen Sie die folgenden Werte:

  • POLICY_NAME: der Name der ACL-Richtlinie
  • REGION: die Region, in der sich die ACL-Richtlinie befindet

Wenn Sie nur bestimmte Berechtigungen gewähren möchten, die ein Nutzer benötigt, ändern Sie den Wert +@all. Wenn der Nutzer beispielsweise nur Zugriff auf schreibgeschützte Befehle haben soll, ändern Sie +@all in +@read. Weitere Informationen zu den Nutzerberechtigungen, die Sie festlegen können, finden Sie in der Valkey-ACL-Dokumentation.

Standardnutzerkonto sichern

Wenn Sie die Scripting-Berechtigungen für den default-Superuser deaktivieren möchten, erstellen Sie entweder eine ACL-Richtlinie und weisen Sie sie einer Instanz zu oder ändern Sie eine ACL-Richtlinie, die einer Instanz zugewiesen ist.

Richtlinie erstellen

Verwenden Sie den Befehl gcloud memorystore acl-policies create, um eine ACL-Richtlinie zu erstellen, mit der alle Scripting-Befehle für den Nutzer default deaktiviert werden.

gcloud memorystore acl-policies create POLICY_NAME \
--location=REGION \
--rules=rule="on ~* +@all -@scripting",username=default

Ersetzen Sie die folgenden Werte:

  • POLICY_NAME: der Name der ACL-Richtlinie
  • REGION: die Region, in der sich die ACL-Richtlinie befinden soll

Nachdem Sie die Richtlinie erstellt haben, müssen Sie sie einer neuen oder vorhandenen Instanz zuweisen.

Richtlinie ändern

Wenn Sie eine ACL-Richtlinie ändern möchten, um alle Scripting-Befehle für den Nutzer default zu deaktivieren, verwenden Sie den Befehl gcloud memorystore acl-policies update.

gcloud memorystore acl-policies update POLICY_NAME \
--location=REGION \
--rules=rule="on ~* +@all -@scripting",username=default

Ersetzen Sie die folgenden Werte:

  • POLICY_NAME: der Name der ACL-Richtlinie
  • REGION: die Region, in der sich die ACL-Richtlinie befindet

Wenn Sie nur bestimmte Berechtigungen gewähren möchten, die der default-Nutzer benötigt, ändern Sie den +@all-Wert. Wenn dieser Nutzer beispielsweise nur Zugriff auf schreibgeschützte Befehle haben soll, ändern Sie +@all in +@read. Weitere Informationen zu den Nutzerberechtigungen, die Sie festlegen können, finden Sie in der Dokumentation zu Valkey-ACLs.

Fehlerbehebung

In diesem Abschnitt werden Fehlermeldungen aufgeführt, die Sie bei der Verwendung von ACL-Richtlinien erhalten können. Außerdem werden die Gründe für diese Meldungen und Tipps zur Fehlerbehebung beschrieben.

Fehlermeldung Ursache Fehlerbehebung
username cannot be empty Sie haben in einer ACL-Richtlinie einen leeren String oder einen String mit nur Leerzeichen für einen Nutzernamen festgelegt. Verwenden Sie einen Nutzernamen mit alphanumerischen Zeichen oder Sonderzeichen. Erstellen Sie dann die ACL-Richtlinie noch einmal.
duplicate username found in ACL policy Sie haben doppelte Nutzernamen in einer ACL-Richtlinie. Suchen Sie in den Fehlerlogs nach dem doppelten Nutzernamen. Ändern Sie die Anfrage zum Erstellen der ACL-Richtlinie so, dass genau eine Regel für den Nutzernamen angegeben wird. Erstellen Sie dann die ACL-Richtlinie noch einmal.
ACL rule token cannot contain token. use either IAM or Basic Auth features to enable authentication Sie können in einer ACL-Richtlinie keine Passwortzeichen (z. B. <, >, # und !) oder zugehörige Befehle (z. B. nopass, resetpass und reset) verwenden. Entfernen Sie alle Passwortzeichen und zugehörigen Befehle aus den Regeln der ACL-Richtlinie. Erstellen Sie dann die ACL-Richtlinie noch einmal. Um die Authentifizierung einzurichten, aktivieren Sie die Standardauthentifizierung oder die IAM-basierte Authentifizierung.
passwords not allowed in ACL rules (token starts with char). use either IAM or Basic Auth features to enable authentication Sie können in einer ACL-Richtlinie keine Passwortzeichen (z. B. <, >, # und !) oder zugehörige Befehle (z. B. nopass, resetpass und reset) verwenden. Entfernen Sie alle Passwortzeichen und zugehörigen Befehle aus den Regeln der ACL-Richtlinie. Erstellen Sie dann die ACL-Richtlinie noch einmal. Um die Authentifizierung einzurichten, aktivieren Sie die Standardauthentifizierung oder die IAM-basierte Authentifizierung.
invalid ACL rule syntax Sie haben einen Zugriffsstring in einer oder mehreren Regeln der ACL-Richtlinie nicht richtig formatiert. Formatieren Sie den Zugriffsstring richtig.
ACL policy is in DELETING state and cannot be used Sie versuchen, einer Instanz eine ACL-Richtlinie zuzuweisen, die den Status DELETING hat. Weisen Sie der Instanz eine andere ACL-Richtlinie zu.
ACL_POLICY_IN_USE: ACL policy is in use by 1 or more instances Sie versuchen, eine ACL-Richtlinie zu löschen, die mindestens einer Instanz zugewiesen ist. Bevor Sie eine ACL-Richtlinie löschen können, müssen Sie sie aus allen Instanzen entfernen, denen sie zugewiesen ist. Informationen dazu, welche Instanzen einer Richtlinie zugewiesen sind, finden Sie unter Informationen zu ACL-Richtlinien ansehen.
fast-failing the workflow as the resource is in DELETING state Sie versuchen, eine ACL-Richtlinie mit dem Status DELETING zu ändern. Wenn eine ACL-Richtlinie den Status DELETING hat, können Sie sie nicht ändern.