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-Kanäle beschränken.
Im Folgenden finden Sie Beispielanwendungsfälle für die Verwendung von ACL-Richtlinien zum Sichern des Zugriffs auf Instanzen:
- Rollenbasierte Zugriffssteuerung (RBAC) bereitstellen: Erstellen Sie separate Nutzerprofile für verschiedene Komponenten Ihrer Anwendungen. Ein Web-Frontend kann beispielsweise nur Lesezugriff 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,FLUSHDBoderCONFIGauf Administratoren der obersten Ebene. So wird die Datenintegrität vor Softwarefehlern oder manuellen Fehlern geschützt. Anwendungssicherheit für Mehrmandantenanwendungen 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 Mehrmandantenfä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
GEToder andere Befehle mit Lesezugriff (z. B.SCANoderTYPE) 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:*). Dadurch wird eine logische Trennung der Daten innerhalb einer Instanz erreicht.Lua-Skripts deaktivieren: Verwenden Sie ACL-Richtlinien, um Lua-Skriptfunktionen 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 können, müssen Sie die Anleitung in diesem Abschnitt ausführen.
Google Cloud -Konsole, Google Cloud CLI und APIs verwenden
So verwenden Sie die Google Cloud Console, die Google Cloud CLI und APIs:
- Wählen Sie in der Google Cloud Console auf der Seite für die Projektauswahl ein-Projekt aus oder erstellen Sie Google Cloud 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 ihm verknüpften Ressourcen entfernen.
Zur Projektauswahl - Die Abrechnung für Ihr Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.
Installieren und initialisieren Sie die Google Cloud CLI.
Hinweis: Wenn Sie die gcloud CLI zuvor installiert haben, prüfen Sie, ob Sie die aktuelle Version haben, indem Sie
gcloud components updateausführen. Sie benötigen mindestens die gcloud CLI-Version489.0.0, um auf die gcloud CLI-Befehle für Memorystore for Valkey zuzugreifen.-
Aktivieren Sie die Memorystore for Valkey API.
Memorystore for Valkey -
Aktivieren Sie die Network Connectivity API.
Network Connectivity API -
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 erhöhen Sie die Sicherheit Ihrer Instanzen, indem Sie den Nutzerzugriff auf bestimmte Schlüssel, Befehle und Pub/Sub-Kanäle einschränken.
Sie können eine ACL-Richtlinie entweder mit der Google Cloud Console oder der gcloud CLI erstellen.
Console
Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.
Klicken Sie in der Seitenleiste auf ACL-Richtlinien.
Klicken Sie auf der Seite ACL-Richtlinien auf Richtlinie erstellen.
Führen Sie im Fenster Richtlinie erstellen die folgenden Schritte aus:
Geben Sie im Feld Richtlinienname einen Namen für die ACL-Richtlinie ein. Der Richtlinienname darf nur Kleinbuchstaben, Ziffern und Bindestriche enthalten. Sie muss außerdem mit einem Buchstaben beginnen und in ihrer Region eindeutig sein.
Wählen Sie im Menü Region die Region aus, in der Memorystore for Valkey die ACL-Richtlinie erstellen soll.
Klicken Sie auf Regel hinzufügen.
Geben Sie im Feld Nutzer-ID den Namen des Nutzers ein, auf den die ACL-Richtlinie angewendet werden soll.
Geben Sie im Feld Zugriffsstring den Zugriffsstring für die Richtlinie ein. Der Zugriffsstring ist eine menschenlesbare Regel, die die spezifischen Berechtigungen für den Nutzer definiert.
Wenn Sie beispielsweise dem Superuser
defaultLese- und Schreibberechtigungen für alle ACL-Schlüssel der Instanz gewähren möchten, füllen Sie die Felder Nutzer-ID und Zugriffsstring so aus:Nutzer-ID Zugriffsstring defaulton ~* &* +@allMit 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-Kanäle.+@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.
Wiederholen Sie die Schritte c bis e für weitere ACL-Regeln, die Sie für die Richtlinie erstellen möchten.
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. Sie muss außerdem mit einem Buchstaben beginnen und in ihrer Region eindeutig sein.
- REGION: Die Region, in der sich die ACL-Richtlinie befinden soll.
Diese Richtlinie verwendet eine einfache tokenbasierte Authentifizierung und enthält Regeln, die die folgenden Aktionen ausführen:
- Die erste Regel gewährt
luciandie Berechtigung~* +@all. Mit dieser Berechtigung kann der Nutzer auf alle Schlüssel zugreifen und alle Befehle ausführen. - Die zweite Regel gewährt
taylordie Berechtigungget. Mit dieser Berechtigung kann der Nutzer die mit Schlüsseln verknüpften Werte abrufen. Der Zugriff des Nutzers wird auf schreibgeschützte Datenvorgänge beschränkt und der Nutzer kann keine Schlüssel ändern.
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 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.
ACL-Richtlinie einer Instanz 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 wird der Nutzerzugriff auf bestimmte Schlüssel, Befehle und Pub/Sub-Kanäle beschränkt.
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 zum Zuweisen einer ACL-Richtlinie zu dieser Instanz finden Sie unter Instanzen erstellen.
Richtlinie einer vorhandenen Instanz zuweisen
Wenn Sie die Sicherheit einer vorhandenen Instanz erhöhen möchten, können Sie der Instanz eine ACL-Richtlinie zuweisen.
Console
Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.
Klicken Sie auf die ID der Instanz, der Sie eine ACL-Richtlinie zuweisen möchten.
Scrollen Sie auf der Seite Instanz auf einen Blick zur Karte Sicherheit.
Klicken Sie neben dem Feld ACL-Richtlinie auf Bearbeiten (edit).
Führen Sie im Fenster ACL-Richtlinie bearbeiten die folgenden Schritte aus:
Wählen Sie im Menü Richtlinie die Richtlinie aus, die Sie der Instanz zuweisen möchten.
Klicken Sie auf Instanz aktualisieren.
gcloud
Verwenden Sie den Befehl gcloud memorystore instances update, um einer vorhandenen Instanz eine ACL-Richtlinie zuzuweisen.
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
Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.
Klicken Sie in der Seitenleiste 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: Datum und 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 zu prüfen, ob Ihre Anwendungen den entsprechenden Zugriff haben, und um zu großzügige Regeln zu erkennen.
Informationen zu einer ACL-Richtlinie können Sie 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, erstellt Memorystore for Valkey eine Version (Revision) für die Richtlinie. Jedes Mal, wenn Sie die Richtlinie ändern, erstellt Memorystore for Valkey eine nachfolgende Richtlinienrevision.
Da Memorystore for Valkey diese Versionen automatisch generiert, können Sie sie für interne Tracking- und Prüfzwecke verwenden. Außerdem können Sie sich die Versionen ansehen, um den genauen Inhalt der ACL-Richtlinie für jede frühere Version aufzurufen.
Mithilfe von ACL-Richtlinienversionen können Sie nachvollziehen, welche Instanzen welche Version einer Richtlinie verwenden. So behalten Sie den Überblick 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
Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.
Klicken Sie in der Seitenleiste auf ACL-Richtlinien.
Klicken Sie auf der Seite ACL-Richtlinien auf die ID der ACL-Richtlinie, deren Versionen Sie sich ansehen möchten. Auf der Seite ACL-Richtlinienversionen werden die folgenden Informationen angezeigt:
- Versions-ID: die ID der jeweiligen ACL-Richtlinienversion
- Versionsnummer: die Nummer der jeweiligen 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-Richtlinienversion
gcloud
Verwenden Sie den Befehl gcloud memorystore acl-policies revisions list, um Informationen zu ACL-Richtlinienversionen aufzurufen.
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 die Überarbeitungen enthält, zu denen Sie Informationen aufrufen möchten
- REGION: die Region, in der sich die ACL-Richtlinie befindet
Notieren Sie sich die Überarbeitungs-IDs in der Ausgabe. Sie benötigen diese IDs, um Informationen zu bestimmten ACL-Richtlinienversionen aufzurufen.
Informationen zu einer ACL-Richtlinienversion ansehen
Wenn Sie eine ACL-Richtlinienversion aufrufen, können Sie die zugehörigen Regeln, Metadaten und eine Liste aller angehängten Instanzen sehen. Sie können Informationen zu einer ACL-Richtlinienversion entweder über die Google Cloud Console oder die gcloud CLI aufrufen.
Console
Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.
Klicken Sie im seitlichen Navigationsbereich auf ACL-Richtlinien.
Klicken Sie auf der Seite ACL-Richtlinien auf die ID der ACL-Richtlinie, für die Sie eine Version ansehen möchten.
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 Version enthält.
- REGION: die Region, in der sich die ACL-Richtlinie befindet.
ACL-Richtlinie ändern
Durch das Ä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.
Regel zu einer ACL-Richtlinie hinzufügen
Um die Sicherheit einer ACL-Richtlinie zu erhöhen, fügen Sie ihr eine Regel hinzu.
Console
Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.
Klicken Sie in der Seitenleiste auf ACL-Richtlinien.
Klicken Sie neben der ACL-Richtlinie, der Sie eine Regel hinzufügen möchten, auf Weitere Aktionen (more_vert) und wählen Sie Bearbeiten aus.
Klicken Sie im Fenster Richtlinie bearbeiten auf Regel hinzufügen.
Geben Sie im Feld Nutzer-ID den Namen des Nutzers ein, auf den die ACL-Richtlinie angewendet werden soll.
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.
Wiederholen Sie die Schritte 4 bis 6 für zusätzliche ACL-Regeln, die Sie der Richtlinie hinzufügen möchten.
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
Das Ändern einer ACL-Regel für eine ACL-Richtlinie bietet mehr Sicherheit, eine verbesserte Betriebssicherheit und eine detailliertere Nutzerzugriffssteuerung. Sie können beispielsweise Berechtigungen während einer Incident Response widerrufen oder temporären Zugriff für die Fehlerbehebung aktivieren.
Console
Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.
Klicken Sie im seitlichen Navigationsbereich auf ACL-Richtlinien.
Klicken Sie neben der ACL-Richtlinie, für die Sie eine Regel ändern möchten, auf Weitere Aktionen (more_vert) und wählen Sie dann Bearbeiten aus.
Klicken Sie im Fenster Richtlinie bearbeiten auf Regel hinzufügen.
Ä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.
Wiederholen Sie die Schritte 4 und 5 für weitere ACL-Regeln, die Sie für die Richtlinie ändern möchten.
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: der 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
Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.
Klicken Sie im seitlichen Navigationsbereich auf ACL-Richtlinien.
Klicken Sie neben der ACL-Richtlinie, aus der Sie eine Regel entfernen möchten, auf Weitere Aktionen (more_vert) und wählen Sie dann Bearbeiten aus.
Klicken Sie im Fenster Richtlinie bearbeiten neben einer Regel, die Sie aus der Richtlinie entfernen möchten, auf Regel löschen delete.
Wiederholen Sie Schritt 4 für weitere ACL-Regeln, die Sie aus der Richtlinie entfernen möchten.
Klicken Sie auf Speichern.
gcloud
Verwenden Sie den Befehl gcloud memorystore acl-policies update, um eine Regel aus einer ACL-Richtlinie zu entfernen.
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 Nutzer default herstellen und unterliegt den Berechtigungen dieses Nutzers.
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 Console oder die gcloud CLI entfernen.
Console
Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.
Klicken Sie auf die ID der Instanz, aus der Sie eine ACL-Richtlinie entfernen möchten.
Scrollen Sie auf der Seite Instanz auf einen Blick zur Karte Sicherheit.
Klicken Sie neben dem Feld ACL-Richtlinie auf Bearbeiten (edit).
Führen Sie im Fenster ACL-Richtlinie bearbeiten die folgenden Schritte aus:
Wähle im Menü Richtlinie die Option Keine Richtlinie aus.
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 über die Google Cloud Console oder die gcloud CLI löschen.
Console
Rufen Sie in der Google Cloud Console die Seite Memorystore for Valkey auf.
Klicken Sie in der Seitenleiste auf ACL-Richtlinien.
Klicken Sie neben der ACL-Richtlinie, die Sie löschen möchten, auf Weitere Aktionen (more_vert) und wählen Sie dann Löschen aus.
Wenn der Menüpunkt 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.
Führen Sie im Fenster Richtlinie löschen die folgenden Schritte aus:
Geben Sie im Textfeld den Namen der Richtlinie ein.
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: der 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 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:
EVAL: Ein Lua-Script ausführen, das als String bereitgestellt wirdEVALSHA: Führt ein Lua-Skript aus, das mit dem BefehlSCRIPT LOADim Cache gespeichert wurde.SCRIPT: Skript-Cache verwalten (z. B.LOAD,FLUSH,EXISTSundKILL)Der Befehl
SCRIPTenthält die folgenden Unterbefehle:
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 Nutzernamen 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 +@all-Wert. Wenn der Nutzer beispielsweise nur Lesezugriff auf 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 festlegen, 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 Skriptbefehl 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 +@all-Wert. Wenn der Nutzer beispielsweise nur Lesezugriff auf 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.
Standardnutzer 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 Sie beispielsweise möchten, dass dieser Nutzer nur Lesezugriff auf Befehle hat, ändern Sie +@all in +@read. Weitere Informationen zu den Nutzerberechtigungen, die Sie festlegen können, finden Sie in der Valkey-ACL-Dokumentation.
Fehlerbehebung
In diesem Abschnitt werden Fehlermeldungen aufgeführt, die bei der Verwendung von ACL-Richtlinien auftreten können, sowie die Gründe für diese Meldungen und Tipps zur Fehlerbehebung.
| 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 die ACL-Richtlinie dann noch einmal. |
duplicate username found in ACL policy |
In einer ACL-Richtlinie sind doppelte Nutzernamen vorhanden. | Suchen Sie in den Fehlerprotokollen 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. Aktivieren Sie die Basisauthentifizierung oder die IAM-basierte Authentifizierung, um die Authentifizierung einzurichten. |
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. Aktivieren Sie die Basisauthentifizierung oder die IAM-basierte Authentifizierung, um die Authentifizierung einzurichten. |
invalid ACL rule syntax |
Sie haben einen Zugriffsstring in mindestens einer der 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, aber die Richtlinie hat den Status DELETING. |
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 die Richtlinie nicht ändern. |