Partager via


Configurer des stratégies d’accès aux données personnalisées

La gestion de l’accès à votre instance de cache Redis Azure est essentielle pour garantir que les utilisateurs appropriés ont accès au bon jeu de données et de commandes. Redis version 6 a introduit la liste de contrôle d’accès (ACL), qui répertorie les clés auxquelles des utilisateurs spécifiques peuvent accéder et les commandes qu’ils peuvent exécuter. Par exemple, vous pouvez empêcher des utilisateurs spécifiques d’utiliser la commande DEL pour supprimer des clés dans le cache.

Azure Cache pour Redis intègre cette fonctionnalité de liste de contrôle d’accès à Microsoft Entra pour vous permettre de configurer et d’affecter des stratégies d’accès aux données pour les utilisateurs, le principal de service et l’identité managée de votre application. Azure Cache pour Redis propose trois stratégies d’accès intégrées que vous pouvez attribuer via le contrôle d’accès en fonction du rôle (RBAC) : Propriétaire des données, Contributeur de données et Lecteur de données.

Si les stratégies d’accès intégrées ne répondent pas à vos exigences de protection et d’isolation des données, vous pouvez créer et utiliser vos propres stratégies d’accès aux données personnalisées. Cet article décrit la configuration d’une stratégie d’accès aux données personnalisée pour Azure Cache pour Redis et l’activation du RBAC via l’authentification Microsoft Entra.

Étendue de la disponibilité

Niveau De base, Standard, Premium Enterprise, Enterprise Flash
Disponibilité Oui Non

Limites

  • La configuration des stratégies d’accès aux données n’est pas prise en charge sur les niveaux Enterprise et Enterprise Flash.
  • Les stratégies DCL et d’accès aux données Redis ne sont pas prises en charge sur les instances Redis Azure qui exécutent Redis version 4.
  • L’authentification et l’autorisation Microsoft Entra sont prises en charge uniquement pour les connexions SSL (Secure Socket Layer).
  • Certaines commandes Redis sont bloquées dans le Cache Azure pour Redis. Pour plus d’informations, consultez Commandes Redis non prises en charge dans le Cache Azure pour Redis.

Permissions ACL de Redis

La liste de contrôle d’accès Redis dans Redis version 6.0 permet de configurer les autorisations d’accès pour trois domaines : catégories de commandes, commandes et clés.

Catégories de commandes

Redis a créé des catégories de commandes, telles que des commandes d’administration et des commandes dangereuses, pour faciliter la définition des autorisations sur un groupe de commandes. Dans une chaîne d’autorisations, utilisez cette option +@<category> pour autoriser une catégorie de commandes ou -@<category> pour interdire une catégorie de commandes.

Redis prend en charge les catégories de commandes utiles suivantes. Pour plus d’informations et une liste complète, consultez le titre Catégories de commandes dans la documentation de la liste de contrôle d’accès Redis.

Catégorie Descriptif
admin Commandes administratives, telles que MONITOR et SHUTDOWN. Les applications normales n’ont jamais besoin d’utiliser ces commandes.
dangerous Commandes potentiellement dangereuses, y compris FLUSHALL, , RESTORE, SORTKEYSCLIENT, DEBUG, , INFO, et .CONFIG Considérez chacun avec soin, pour différentes raisons.
keyspace Inclut DEL, RESTORE, DUMP, RENAME, EXISTS, DBSIZE, KEYS, EXPIRE, TTL et FLUSHALL. Écriture ou lecture à partir de clés, de bases de données ou de leurs métadonnées d’une manière indépendante de type. Les commandes qui lisent uniquement l’espace de clés, la clé ou les métadonnées appartiennent à la catégorie read. Les commandes qui peuvent modifier l’espace de clés, la clé ou les métadonnées ont également la write catégorie.
pubsub Commandes liées à PubSub.
read Lecture à partir de clés, de valeurs ou de métadonnées. Les commandes qui n’interagissent pas avec les clés n’ont ni read ni write.
set Type de données : jeux liés.
sortedset Type de données : ensembles triés connexes.
stream Type de données : flux liés.
string Type de données : chaînes liées.
write Écriture de valeurs ou de métadonnées dans des clés.

Remarque

Les commandes bloquées pour Azure Redis restent bloquées dans les catégories.

Commandes

Les commandes vous permettent de contrôler les commandes spécifiques qu’un utilisateur Redis particulier peut exécuter. Dans une chaîne d’autorisations, utilisez +<command> pour autoriser une commande ou -<command> pour interdire une commande.

Clés

Les clés vous permettent de contrôler l’accès à des clés ou groupes de clés spécifiques stockés dans le cache. Utiliser ~<pattern> dans une chaîne d’autorisation pour fournir un modèle pour les clés. Utilisez soit ~* soit allkeys pour indiquer que les autorisations s’appliquent à toutes les clés du cache.

Configurer une stratégie d’accès aux données personnalisée pour votre application

Pour configurer une stratégie d’accès aux données personnalisées, vous créez une chaîne d’autorisations à utiliser comme stratégie d’accès personnalisée et activez l’authentification Microsoft Entra pour votre cache.

Spécifier des autorisations

Configurez les chaînes d’autorisation en fonction de vos besoins. Les exemples suivants montrent les chaînes d’autorisation pour différents scénarios :

Chaîne d’autorisations Descriptif
+@all allkeys Autoriser l’application à exécuter toutes les commandes sur toutes les clés.
+@read ~* Autoriser l’application à exécuter uniquement read la catégorie de commandes.
+@read +set ~Az* Autoriser l’application à exécuter la read catégorie de commandes et à définir la commande sur les clés avec le préfixe Az.

Créer la stratégie d’accès aux données personnalisée

  1. Dans le portail Azure, sélectionnez le cache Redis Azure dans lequel vous souhaitez créer la stratégie d’accès aux données.

  2. Sélectionnez Configuration de l’accès aux données sous Paramètres dans le menu de navigation de gauche.

    Capture d’écran montrant la configuration de l’accès aux données mise en surbrillance dans le menu Ressource.

  3. Dans la page Configuration de l’accès aux données , sélectionnez Ajouter>une nouvelle stratégie d’accès.

  4. Dans l’écran Ajouter/Modifier une stratégie d’accès personnalisée , indiquez un nom pour votre stratégie d’accès.

  5. Sous Autorisations, ajoutez votre chaîne d’autorisations personnalisées, puis sélectionnez Appliquer.

    Capture d’écran montrant un formulaire pour l’ajout d’une stratégie d’accès personnalisée.

La stratégie personnalisée apparaît désormais sous l’onglet Stratégies d’accès de la page Configuration de l’accès aux données , ainsi que les trois stratégies Azure Redis intégrées.

Activez l’authentification Microsoft Entra

Pour affecter un utilisateur à une stratégie d’accès à l’aide de Microsoft Entra, vous devez avoir Microsoft Entra plutôt que l’authentification des clés d’accès activée sur votre cache. Pour vérifier votre méthode d’authentification, sélectionnez Authentification sous Paramètres dans le menu de navigation de gauche de votre cache.

Dans l’écran Authentification, si Désactiver l'authentification par clé d'accès est sélectionné et qu’aucune clé d’accès n’apparaît sur l’écran, votre cache utilise déjà l’authentification Microsoft Entra. Sinon, cochez la case en regard de Désactiver l’authentification des clés d’accès , puis sélectionnez Enregistrer.

Capture d’écran de la désactivation de l’authentification des clés d’accès.

Répondez Oui à la boîte de dialogue contextuelle vous demandant si vous souhaitez désactiver l’authentification des clés d’accès.

Important

Une fois l’opération d’activation de Microsoft Entra terminée, les nœuds de votre instance de cache redémarrent pour charger la nouvelle configuration. L’opération peut prendre jusqu’à 30 minutes. Il est préférable d’effectuer cette opération pendant votre fenêtre de maintenance ou en dehors des heures de pointe.

Configurer votre client Redis pour utiliser Microsoft Entra ID

La plupart des clients Azure Cache pour Redis supposent qu’un mot de passe et une clé d’accès sont utilisés pour l’authentification. Vous devrez peut-être mettre à jour votre flux de travail client pour prendre en charge l’authentification et l’autorisation à l’aide d’un nom d’utilisateur et d’un mot de passe Microsoft Entra spécifiques. Pour savoir comment configurer votre application cliente pour vous connecter à votre instance de cache en tant qu’utilisateur Redis spécifique, consultez Configurer votre client Redis pour utiliser l’ID Microsoft Entra.