Memorystore bietet die IAM-Authentifizierung (Identity and Access Management), mit der Sie den Anmeldezugriff für Nutzer und Dienstkonten besser verwalten können. Die IAM-basierte Authentifizierung ist in Valkey AUTH eingebunden, sodass Sie Anmeldedaten (IAM-Tokens) nahtlos rotieren können, ohne auf statische Passwörter angewiesen zu sein.
Eine Anleitung zum Einrichten der IAM-Authentifizierung für Ihre Memorystore-Instanz finden Sie unter IAM-Authentifizierung verwalten.
IAM-Authentifizierung für Valkey
Bei Verwendung der IAM-Authentifizierung wird dem Endnutzer die Berechtigung für den Zugriff auf eine Memorystore-Instanz nicht direkt gewährt. Stattdessen werden Berechtigungen in Rollen gruppiert, die dann Hauptkonten zugewiesen werden. Weitere Informationen finden Sie in der IAM-Übersicht.
Administratoren, die sich mit IAM authentifizieren, können mit der Memorystore-IAM-Authentifizierung die Zugriffssteuerung für ihre Instanzen zentral über IAM-Richtlinien verwalten. IAM-Richtlinien umfassen die folgenden Entitäten:
Hauptkonten. In Memorystore können Sie zwei Arten von Hauptkonten verwenden: ein Nutzerkonto und ein Dienstkonto (für Anwendungen). Andere Arten von Hauptkonten, wie Google Groups-Gruppen, Google Workspace-Domains oder Cloud Identity-Domains werden für die IAM-Authentifizierung noch nicht unterstützt. Weitere Informationen finden Sie unter Identitätskonzepte.
Rollen. Für die Memorystore-IAM-Authentifizierung benötigt ein Nutzer die memorystore.instances.connect Berechtigung, um sich bei einer Instanz zu authentifizieren. Damit der Nutzer diese Berechtigung erhält, können Sie ihn oder das Dienstkonto an die vordefinierte Rolle Memorystore DB Connection User (roles/memorystore.dbConnectionUser) binden. Weitere Informationen zu IAM-Rollen finden Sie unter Rollen.
Ressourcen. Die Ressourcen, auf die Hauptkonten zugreifen, sind Memorystore Instanzen. Standardmäßig werden IAM-Richtlinienbindungen auf Projektebene angewendet, sodass Hauptkonten Rollenberechtigungen für alle Memorystore-Instanzen im Projekt erhalten. IAM Richtlinienbindungen können jedoch auf eine bestimmte Instanz beschränkt werden. Eine Anleitung finden Sie unter Berechtigungen für die IAM-Authentifizierung verwalten.
Valkey AUTH-Befehl
Die IAM-Authentifizierung verwendet den Valkey AUTH-Befehl zur Einbindung in IAM. So können Clients ein IAM-Zugriffstoken bereitstellen, das von der Valkey-Instanz überprüft wird, bevor der Zugriff auf Daten gewährt wird.
Wie jeder Befehl wird auch der AUTH-Befehl unverschlüsselt gesendet, es sei denn, die Verschlüsselung während der Übertragung ist aktiviert.
Ein Beispiel für den AUTH-Befehl finden Sie unter Verbindung zu einer Instanz herstellen, die die IAM-Authentifizierung verwendet.
Zeitraum für IAM-Zugriffstoken
Standardmäßig läuft das IAM-Zugriffstoken, das Sie im Rahmen der Authentifizierung abrufen, eine Stunde nach dem Abruf ab. Alternativ können Sie beim Generieren des Zugriffstokens die Ablaufzeit des Tokens auf bis zu 12 Stunden verlängern.
Wenn Sie eine neue Valkey-Verbindung herstellen, müssen Sie mit dem AUTH Befehl ein gültiges Zugriffstoken präsentieren. Wenn das Token abläuft, müssen Sie ein neues
Token abrufen, um neue Verbindungen herzustellen. Wenn Sie jedoch bereits eine
vorhandene Verbindung authentifiziert haben, funktioniert sie weiterhin, auch wenn das Token abläuft.
Authentifizierte Verbindung beenden
Verwenden Sie den Valkey CLIENT KILL-Befehl, um eine Verbindung zu beenden. Führen Sie zuerst CLIENT LIST aus, um die Verbindung zu
identifizieren, und dann CLIENT KILL aus, um sie zu beenden.
IAM-Authentifizierung aktivieren
Das Aktivieren der IAM-Authentifizierung beeinträchtigt die Leistung im Normalzustand nicht. Es wirkt sich jedoch auf die Rate aus, mit der Sie eine Verbindung herstellen können.
Durch das Aktivieren der IAM-Authentifizierung wird die Rate der Client verbindungen, die pro Sekunde hergestellt werden, gedrosselt. Das liegt daran, dass die IAM-Authentifizierung von Google Cloud jede neue Verbindung authentifizieren muss. Im Normalzustand aktiviert eine Anwendung Verbindungspools, sodass diese Auswirkungen vernachlässigbar sind. Wenn Clientanwendungen jedoch neu gestartet oder bereitgestellt werden, kann es zu einem Anstieg neuer Verbindungen kommen. Wenn Sie Ihre Clients schrittweise aktualisieren und Sie exponentiellen Backoff implementieren, können Sie diese reduzierte Rate ausgleichen.
Ein Codebeispiel zur Verwendung der IAM-Authentifizierung finden Sie unter Codebeispiel für IAM-Authentifizierung und Verschlüsselung während der Übertragung.
Sicherheit und Datenschutz
Mit der IAM-Authentifizierung können Sie dafür sorgen, dass auf Ihre Valkey-Instanz nur von autorisierten IAM-Hauptkonten zugegriffen werden kann. Die TLS-Verschlüsselung ist nur verfügbar, wenn die Verschlüsselung während der Übertragung aktiviert ist. Daher wird empfohlen, die Verschlüsselung während der Übertragung zu aktivieren, wenn Sie die IAM-Authentifizierung verwenden.
Verbindung mit einer Compute Engine-VM herstellen
Cloud Platform API-Bereich. Eine Anleitung zum Aktivieren dieses Bereichs finden Sie unter Dienstkonto anhängen und Zugriffsbereich aktualisieren. Eine Beschreibung der Best Practices für diesen Zugriffsbereich finden Sie unter Best Practices für Bereiche.
Memorystore for Valkey API. Klicken Sie auf die folgende Schaltfläche, um die API zu aktivieren:
Memorystore for Valkey