Freigeben über


Konfigurieren von benutzerdefinierten Datenzugriffsrichtlinien

Die Verwaltung des Zugriffs auf Ihre Azure Redis-Cacheinstanz ist wichtig, um sicherzustellen, dass die richtigen Benutzer Zugriff auf die richtigen Daten und Befehle haben. Redis, Version 6, hat die Zugriffssteuerungsliste (Access Control List , ACL) eingeführt, die die Tasten auflistet, auf die bestimmte Benutzer zugreifen können, und die Befehle, auf die sie ausführen können. Sie können beispielsweise verhindern, dass bestimmte Benutzer den DEL-Befehl zum Löschen von Schlüsseln im Cache verwenden.

Azure Cache for Redis integriert diese ACL-Funktionalität in Microsoft Entra, damit Sie Datenzugriffsrichtlinien für die Benutzer, den Dienstprinzipal und die verwaltete Identität Ihrer Anwendung konfigurieren und zuweisen können. Azure Cache for Redis bietet drei integrierte Zugriffsrichtlinien, die Sie über rollenbasierte Zugriffssteuerung (RBAC) zuweisen können: Datenbesitzer, Datenmitwirkender und Datenleser.

Wenn die integrierten Zugriffsrichtlinien Ihre Datenschutz- und Isolationsanforderungen nicht erfüllen, können Sie eigene benutzerdefinierte Datenzugriffsrichtlinien erstellen und verwenden. In diesem Artikel wird beschrieben, wie Sie eine benutzerdefinierte Datenzugriffsrichtlinie für Azure Cache für Redis konfigurieren und RBAC über die Microsoft Entra-Authentifizierung aktivieren.

Umfang der Verfügbarkeit

Dienstebene Basic, Standard und Premium Enterprise, Enterprise Flash
Verfügbarkeit Ja Nein

Einschränkungen

  • Das Konfigurieren von Datenzugriffsrichtlinien wird für Enterprise- und Enterprise Flash-Ebenen nicht unterstützt.
  • Redis ACL- und Datenzugriffsrichtlinien werden für Azure Redis-Instanzen, die Redis Version 4 ausführen, nicht unterstützt.
  • Microsoft Entra-Authentifizierung und Autorisierung werden nur für SSL-Verbindungen (Secure Socket Layer) unterstützt.
  • Einige Redis-Befehle werden im Azure Cache für Redis blockiert. Weitere Informationen finden Sie unter Redis-Befehle, die im Azure-Cache für Redis nicht unterstützt werden.

Redis ACL-Berechtigungen

Redis ACL in Redis Version 6.0 ermöglicht das Konfigurieren von Zugriffsberechtigungen für drei Bereiche: Befehlskategorien, Befehle und Tasten.

Befehlskategorien

Redis hat Befehlskategorien wie administrative Befehle und gefährliche Befehle erstellt, um das Festlegen von Berechtigungen für eine Gruppe von Befehlen zu vereinfachen. Verwenden Sie +@<category> in einer Berechtigungszeichenfolge, um eine Befehlskategorie zuzulassen oder -@<category> eine Befehlskategorie zu verbieten.

Redis unterstützt die folgenden nützlichen Befehlskategorien. Weitere Informationen und eine vollständige Liste finden Sie in der Redis ACL-Dokumentation in der Überschrift "Befehlskategorien".

Kategorie BESCHREIBUNG
admin Administrative Befehle, wie MONITOR und SHUTDOWN. Normale Anwendungen müssen diese Befehle niemals verwenden.
dangerous Potenziell gefährliche Befehle, einschließlich FLUSHALL, , RESTORESORT, KEYS, CLIENT, , DEBUG, und INFOCONFIG. Berücksichtigen Sie jede mit Sorgfalt aus verschiedenen Gründen.
keyspace Enthält DEL, , RESTORE, DUMP, RENAMEEXISTS, DBSIZE, KEYS, , EXPIREund TTLFLUSHALL. Schreiben oder Lesen aus Schlüsseln, Datenbanken oder deren Metadaten auf typunabhängige Weise. Befehle, die nur den Keyspace, Schlüssel oder Metadaten lesen, gehören zur Kategorie read. Befehle, die den Schlüsselraum, Schlüssel oder Metadaten ändern können, gehören ebenfalls zur write Kategorie.
pubsub PubSub-bezogene Befehle.
read Lesen aus Schlüsseln, Werten oder Metadaten. Befehle, die nicht mit Tasten interagieren, haben entweder read oder write nicht.
set Datentyp: verwandte Mengen.
sortedset Datentyp: verwandte sortierte Mengen.
stream Datentyp: verwandte Datenströme.
string Datentyp: verwandte Zeichenfolgen.
write Schreiben von Werten oder Metadaten in Schlüssel.

Hinweis

Befehle, die für Azure Redis blockiert sind, bleiben innerhalb der Kategorien blockiert.

Befehle

Mit Befehlen können Sie steuern, welche bestimmten Befehle ein bestimmter Redis-Benutzer ausführen kann. Verwenden Sie +<command> in einer Berechtigungszeichenfolge, um einen Befehl zuzulassen oder -<command> einen Befehl zu verbieten.

Tasten

Mithilfe von Schlüsseln können Sie den Zugriff auf bestimmte Schlüssel oder Gruppen von Schlüsseln steuern, die im Cache gespeichert sind. Verwenden Sie ~<pattern> in einer Berechtigungszeichenfolge, um ein Muster für Schlüssel bereitzustellen. Verwenden Sie entweder ~* oder allkeys geben Sie an, dass die Berechtigungen für alle Schlüssel im Cache gelten.

Konfigurieren einer benutzerdefinierten Datenzugriffsrichtlinie für Ihre Anwendung

Zum Konfigurieren einer benutzerdefinierten Datenzugriffsrichtlinie erstellen Sie eine Berechtigungszeichenfolge, die als benutzerdefinierte Zugriffsrichtlinie verwendet werden soll, und aktivieren sie die Microsoft Entra-Authentifizierung für Ihren Cache.

Berechtigungen angeben

Konfigurieren Sie Berechtigungszeichenfolgen gemäß Ihren Anforderungen. Die folgenden Beispiele zeigen Berechtigungszeichenfolgen für verschiedene Szenarien:

Berechtigungszeichenfolge BESCHREIBUNG
+@all allkeys Zulassen, dass die Anwendung alle Befehle auf allen Tasten ausführt.
+@read ~* Zulassen, dass die Anwendung nur read Befehlskategorie ausführt.
+@read +set ~Az* Erlauben, dass die Anwendung die Befehlskategorie read ausführt und den Befehl auf Tasten mit dem Präfix Az festlegt.

Erstellen der benutzerdefinierten Datenzugriffsrichtlinie

  1. Wählen Sie im Azure-Portal den Azure Redis-Cache aus, in dem Sie die Datenzugriffsrichtlinie erstellen möchten.

  2. Wählen Sie unter "Einstellungen" im linken Navigationsmenü die Option "Datenzugriffskonfiguration" aus.

    Screenshot mit hervorgehobener Datenzugriffskonfiguration im Menü

  3. Wählen Sie auf der Seite "Datenzugriffskonfiguration" die Option"Neue Zugriffsrichtlinie>" aus.

  4. Geben Sie auf dem Bildschirm " Hinzufügen/Bearbeiten einer benutzerdefinierten Zugriffsrichtlinie " einen Namen für Ihre Zugriffsrichtlinie an.

  5. Fügen Sie unter Berechtigungen Ihre benutzerdefinierte Berechtigungszeichenfolge hinzu, und wählen Sie dann Übernehmen aus.

    Screenshot eines Formulars zum Hinzufügen einer benutzerdefinierten Zugriffsrichtlinie.

Die benutzerdefinierte Richtlinie wird nun auf der Registerkarte "Zugriffsrichtlinien " auf der Seite " Datenzugriffskonfiguration " zusammen mit den drei integrierten Azure Redis-Richtlinien angezeigt.

Microsoft Entra-Authentifizierung aktivieren

Um einem Benutzer eine Zugriffsrichtlinie mithilfe von Microsoft Entra zuzuweisen, müssen Sie microsoft Entra anstelle der Zugriffstastenauthentifizierung im Cache aktiviert haben. Um Ihre Authentifizierungsmethode zu überprüfen, wählen Sie unter "Einstellungen" im linken Navigationsmenü für Den Cache die Option "Authentifizierung" aus.

Wenn auf dem Authentifizierungsbildschirmdie Zugriffstastenauthentifizierung deaktiviert ist und keine Zugriffstasten auf dem Bildschirm angezeigt werden, verwendet Ihr Cache bereits die Microsoft Entra-Authentifizierung. Aktivieren Sie andernfalls das Kontrollkästchen neben " Zugriffstastenauthentifizierung deaktivieren ", und wählen Sie dann " Speichern" aus.

Screenshot der Deaktivierung der Zugriffstastenauthentifizierung.

Antworten Sie auf das Popupdialogfeld, in dem Sie gefragt werden, ob Sie die Zugriffstastenauthentifizierung deaktivieren möchten.

Wichtig

Sobald der Microsoft Entra-Aktivierungsvorgang abgeschlossen ist, starten die Knoten in Ihrer Cacheinstanz neu, um die neue Konfiguration zu laden. Dieser Vorgang kann bis zu 30 Minuten in Anspruch nehmen. Es ist am besten, diesen Vorgang während Ihres Wartungsfensters oder außerhalb der Spitzenzeiten auszuführen.

Konfigurieren des Redis-Clients für die Verwendung von Microsoft Entra ID

Die meisten Azure Cache für Redis-Clients gehen davon aus, dass ein Kennwort und ein Zugriffsschlüssel für die Authentifizierung verwendet werden. Möglicherweise müssen Sie Ihren Clientworkflow aktualisieren, um die Authentifizierung und Autorisierung mithilfe eines bestimmten Microsoft Entra-Benutzernamens und Kennworts zu unterstützen. Informationen zum Konfigurieren Ihrer Clientanwendung zum Herstellen einer Verbindung mit Ihrer Cacheinstanz als bestimmter Redis-Benutzer finden Sie unter Konfigurieren Ihres Redis-Clients für die Verwendung von Microsoft Entra ID.