Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel wird beschrieben, wie Sie Spring Cloud Azure und Spring Data Redis zusammen verwenden und verschiedene Arten von Anmeldeinformationen für die Authentifizierung für Azure Cache für Redis bereitstellen können.
Azure Cache für Redis stellt einen In-Memory-Datenspeicher bereit, der auf der Redis-Software basiert. Redis verbessert die Leistung und Skalierbarkeit einer Anwendung, die stark Back-End-Datenspeicher verwendet.
Unterstützte Redis-Versionen
Unterstützte Versionen finden Sie unter Aktuelle Versionen.
Kernfunktionen
Kennwortlose Verbindung
Die kennwortlose Verbindung verwendet die Microsoft Entra-Authentifizierung zum Herstellen einer Verbindung mit Azure-Diensten, ohne Anmeldeinformationen in der Anwendung, den Konfigurationsdateien oder in Umgebungsvariablen zu speichern. Die Microsoft Entra-Authentifizierung ist ein Mechanismus zum Herstellen einer Verbindung mit Azure Cache für Redis mithilfe von Identitäten, die in Microsoft Entra ID definiert sind. Mit der Microsoft Entra-Authentifizierung können Sie Cacheidentitäten und andere Microsoft-Dienste an einem zentralen Ort verwalten, wodurch die Berechtigungsverwaltung vereinfacht wird.
Funktionsweise
Spring Cloud Azure erstellt zunächst je nach Anwendungsauthentifizierungskonfiguration eine der folgenden Arten von Anmeldeinformationen:
ClientSecretCredentialClientCertificateCredentialUsernamePasswordCredentialManagedIdentityCredential
Wenn keine dieser Arten von Anmeldeinformationen gefunden wird, wird die Anmeldeinformationskette über DefaultTokenCredential verwendet, um Anmeldeinformationen von Anwendungseigenschaften, Umgebungsvariablen, verwalteter Identität oder IDEs abzurufen. Weitere Informationen finden Sie unter Spring Cloud Azure authentication.
Konfiguration
Konfigurierbare Eigenschaften bei Verwendung der Redis-Unterstützung:
| Eigentum | Beschreibung | Standardwert | Erforderlich |
|---|---|---|---|
spring.cloud.azure.redis.enabled |
Gibt an, ob ein Azure-Cache für Redis aktiviert ist. | wahr | Nein |
spring.cloud.azure.redis.name |
Azure Cache für Redis-Instanzname. | Ja | |
spring.cloud.azure.redis.resource.resource-group |
Die Ressourcengruppe von Azure Cache für Redis. | Ja | |
spring.cloud.azure.profile.subscription-id |
Die Abonnement-ID. | Ja | |
spring.data.redis.azure.passwordless-enabled |
Gibt an, ob kennwortlos für Azure Cache für Redis aktiviert werden soll. | FALSCH | Nein |
Grundlegende Nutzung
Die folgenden Abschnitte zeigen die klassischen Anwendungsverwendungsszenarien für Spring Boot.
Verbinden Sie sich kennwortlos mit Azure Cache for Redis
Fügen Sie dem Projekt die folgende Abhängigkeit hinzu. Diese Konfiguration bindet die
spring-boot-starter-Abhängigkeit automatisch transitiv in Ihr Projekt ein.<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <groupId>com.azure.spring</groupId> <artifactId>spring-cloud-azure-starter-data-redis-lettuce</artifactId> </dependency>Anmerkung
Denken Sie daran, die
spring-cloud-azure-dependenciesBOM zusammen mit dieser Abhängigkeit hinzuzufügen. Weitere Informationen finden Sie im Abschnitt Erste Schritte abschnitt des Spring Cloud Azure-Entwicklerhandbuchs.Konfigurieren Sie die folgenden Eigenschaften in Ihrer application.yml Datei:
spring: data: redis: host: ${AZURE_CACHE_REDIS_HOST} username: ${AZURE_CACHE_REDIS_USERNAME} port: 6380 ssl: enabled: true azure: passwordless-enabled: trueWichtig
Die kennwortlose Verbindung verwendet die Microsoft Entra-Authentifizierung. Um die Microsoft Entra-Authentifizierung zu verwenden, sollten Sie die Microsoft Entra-Authentifizierung aktivieren und
user(managed identity/service principal)auswählen, umData Owner Access Policyzuzuweisen.Weitere Informationen sowie den Wert für
usernamefinden Sie im Abschnitt Microsoft Entra ID-Authentifizierung für Ihren Cache aktivieren von Verwenden von Microsoft Entra ID für die Cacheauthentifizierung.
Herstellen einer Verbindung mit Azure Cache für Redis mit verwalteter Identität
Um die verwaltete Identität zu verwenden, müssen Sie die verwaltete Identität für Ihren Dienst aktivieren und die Microsoft Entra-Authentifizierung im Cacheaktivieren.
Fügen Sie dann die folgenden Eigenschaften in Ihrer application.yml Datei hinzu:
spring: cloud: azure: credential: managed-identity-enabled: trueWichtig
Die
redis.usernamesollte in die ID des verwalteten Identitätsobjekts (Prinzipal) geändert werden.Wenn Sie eine benutzerseitig zugewiesene verwaltete Identität verwenden, müssen Sie auch die Eigenschaft
spring.cloud.azure.credential.client-idhinzufügen und dabei die Client-ID Ihrer benutzerseitig zugewiesenen verwalteten Identität angeben.
Herstellen einer Verbindung mit Azure Cache für Redis über Azure Resource Manager
Führen Sie die folgenden Schritte aus, um eine Verbindung mit Azure Cache für Redis herzustellen:
Fügen Sie dem Projekt die folgende Abhängigkeit hinzu. Diese Konfiguration bindet die Abhängigkeit
spring-boot-starterautomatisch transitiv in Ihr Projekt ein.<dependency> <groupId>com.azure.spring</groupId> <artifactId>spring-cloud-azure-starter-data-redis-lettuce</artifactId> </dependency> <dependency> <groupId>com.azure.spring</groupId> <artifactId>spring-cloud-azure-resourcemanager</artifactId> </dependency> <dependency> <groupId>com.azure.spring</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>Anmerkung
Denken Sie daran, die
spring-cloud-azure-dependenciesBOM zusammen mit dieser Abhängigkeit hinzuzufügen. Weitere Informationen finden Sie im Abschnitt Erste Schritte abschnitt des Spring Cloud Azure-Entwicklerhandbuchs.
Konfigurieren Sie die folgenden Eigenschaften in Ihrer application.yml Datei:
spring: cloud: azure: profile: subscription-id: ${AZURE_SUBSCRIPTION_ID} redis: name: ${AZURE_CACHE_REDIS_NAME} resource: resource-group: ${AZURE_RESOURCE_GROUP}
Proben
Sehen Sie sich das azure-spring-boot-samples Repository auf GitHub an.