Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano sposób używania platformy Spring Cloud i usługi Spring Data Redis razem oraz udostępniania różnych typów poświadczeń na potrzeby uwierzytelniania w usłudze Azure Cache for Redis.
usługa Azure Cache for Redis udostępnia magazyn danych w pamięci oparty na oprogramowaniu Redis. Redis zwiększa wydajność i skalowalność aplikacji korzystającej z magazynów danych zaplecza.
Obsługiwane wersje usługi Redis
Aby uzyskać informacje o obsługiwanych wersjach, zobacz Bieżące wersje.
Podstawowe funkcje
Połączenie bez hasła
Połączenie bez hasła używa uwierzytelniania Entra firmy Microsoft do nawiązywania połączenia z usługami platformy Azure bez przechowywania poświadczeń w aplikacji, jej plikach konfiguracji lub zmiennych środowiskowych. Uwierzytelnianie Microsoft Entra to mechanizm nawiązywania połączenia z usługą Azure Cache for Redis przy użyciu tożsamości zdefiniowanych w usłudze Microsoft Entra ID. Dzięki uwierzytelnianiu Microsoft Entra można zarządzać tożsamościami pamięci podręcznej i innymi usługami firmy Microsoft w jednym centralnym miejscu, co upraszcza zarządzanie uprawnieniami.
Jak to działa
Platforma Spring Cloud Azure najpierw tworzy jeden z następujących typów poświadczeń w zależności od konfiguracji uwierzytelniania aplikacji:
ClientSecretCredentialClientCertificateCredentialUsernamePasswordCredentialManagedIdentityCredential
Jeśli żaden z tych typów poświadczeń nie zostanie znaleziony, łańcuch poświadczeń za pośrednictwem DefaultTokenCredential jest używany do uzyskiwania poświadczeń z właściwości aplikacji, zmiennych środowiskowych, tożsamości zarządzanej lub środowisk IDE. Aby uzyskać więcej informacji, zobacz Spring Cloud Azure authentication.
Konfiguracja
Konfigurowalne właściwości w przypadku korzystania z obsługi usługi Redis:
| Własność | Opis | Wartość domyślna | Wymagane |
|---|---|---|---|
spring.cloud.azure.redis.enabled |
Określa, czy usługa Azure Cache for Redis jest włączona. | prawdziwy | Nie |
spring.cloud.azure.redis.name |
Nazwa wystąpienia usługi Azure Cache for Redis. | Tak | |
spring.cloud.azure.redis.resource.resource-group |
Grupa zasobów usługi Azure Cache for Redis. | Tak | |
spring.cloud.azure.profile.subscription-id |
Identyfikator subskrypcji. | Tak | |
spring.data.redis.azure.passwordless-enabled |
Czy włączyć uwierzytelnianie bezhasłowe dla usługi Azure Cache for Redis. | fałszywy | Nie |
Podstawowe użycie
W poniższych sekcjach przedstawiono klasyczne scenariusze użycia aplikacji Spring Boot.
Nawiązywanie połączenia z usługą Azure Cache for Redis bez hasła
Dodaj następującą zależność do projektu. Ta konfiguracja automatycznie obejmuje zależność
spring-boot-starterw projekcie jako zależność przechodnią.<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>Uwaga
Pamiętaj, aby dodać element
spring-cloud-azure-dependenciesBOM wraz z tą zależnością. Aby uzyskać więcej informacji, zobacz sekcję Wprowadzenie w przewodniku deweloperów platformy Azure Spring Cloud.Skonfiguruj następujące właściwości w pliku application.yml:
spring: data: redis: host: ${AZURE_CACHE_REDIS_HOST} username: ${AZURE_CACHE_REDIS_USERNAME} port: 6380 ssl: enabled: true azure: passwordless-enabled: trueWażny
Połączenie bez hasła korzysta z uwierzytelniania firmy Microsoft Entra. Aby użyć uwierzytelniania Microsoft Entra, należy włączyć uwierzytelnianie Microsoft Entra i wybrać
user(managed identity/service principal), aby przypisaćData Owner Access Policy.Aby uzyskać więcej informacji oraz wartość
username, zobacz sekcję Włączanie uwierzytelniania Microsoft Entra ID w pamięci podręcznej w artykule Używanie Microsoft Entra ID do uwierzytelniania pamięci podręcznej.
Nawiązywanie połączenia z usługą Azure Cache for Redis przy użyciu tożsamości zarządzanej
Aby użyć tożsamości zarządzanej, musisz włączyć tożsamość zarządzaną dla swojej usługi oraz włączyć uwierzytelnianie Microsoft Entra dla pamięci podręcznej.
Następnie dodaj następujące właściwości w pliku application.yml:
spring: cloud: azure: credential: managed-identity-enabled: trueWażny
Element
redis.usernamenależy zmienić na identyfikator obiektu (podmiotu zabezpieczeń) tożsamości zarządzanej.Jeśli używasz tożsamości zarządzanej przypisanej przez użytkownika, musisz również dodać właściwość
spring.cloud.azure.credential.client-idprzy użyciu identyfikatora klienta tożsamości zarządzanej przypisanej przez użytkownika.
Nawiązywanie połączenia z usługą Azure Cache for Redis za pośrednictwem usługi Azure Resource Manager
Aby nawiązać połączenie z usługą Azure Cache for Redis, wykonaj następujące kroki:
Dodaj następującą zależność do projektu. Ta konfiguracja automatycznie uwzględnia zależność
spring-boot-starterw projekcie jako zależność przechodnią.<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>Uwaga
Pamiętaj, aby dodać element
spring-cloud-azure-dependenciesBOM wraz z tą zależnością. Aby uzyskać więcej informacji, zobacz sekcję Wprowadzenie w przewodniku deweloperów platformy Azure Spring Cloud.
Skonfiguruj następujące właściwości w pliku application.yml:
spring: cloud: azure: profile: subscription-id: ${AZURE_SUBSCRIPTION_ID} redis: name: ${AZURE_CACHE_REDIS_NAME} resource: resource-group: ${AZURE_RESOURCE_GROUP}
Próbki
Zobacz repozytorium azure-spring-boot-samples w serwisie GitHub.