Authentification des utilisateurs avec le contrôle d'accès basé sur les rôles (RBAC) - Amazon ElastiCache for Redis

Authentification des utilisateurs avec le contrôle d'accès basé sur les rôles (RBAC)

Au lieu d’authentifier les utilisateurs avec la commande Redis AUTH comme décrit dans Authentification des utilisateurs avec la commande Redis AUTH, à partir de Redis 6.0, vous pouvez utiliser une fonction appelée contrôle d’accès basé sur les rôles (RBAC).

Contrairement à Redis AUTH, où tous les clients authentifiés disposent d'un accès complet au groupe de réplication si leur jeton est authentifié, RBAC vous permet de contrôler l'accès au cluster via des groupes d'utilisateurs. Ces groupes d'utilisateurs sont conçus comme un moyen d'organiser l'accès aux groupes de réplication.

Avec RBAC, vous créez des utilisateurs et leur attribuez des autorisations spécifiques à l'aide d'une chaîne d'accès, comme décrit ci-dessous. Vous affectez les utilisateurs à des groupes d'utilisateurs alignés sur un rôle spécifique (administrateurs, ressources humaines) qui sont ensuite déployés sur un ou plusieurs groupes de réplication ElastiCache for Redis. Ce faisant, vous pouvez établir des limites de sécurité entre les clients utilisant le même groupe ou les mêmes groupes de réplication Redis et empêcher les clients d'accéder aux données de l'autre.

RBAC est conçu pour prendre en charge l'introduction de la liste ACL Redisdans Redis 6. Lorsque vous utilisez RBAC avec votre cluster ElastiCache for Redis, il y a quelques limites :

  • Vous ne pouvez pas spécifier de mots de passe dans une chaîne d'accès. Vous définissez des mots de passe avec les appels CreateUser ou ModifyUser.

  • Pour les droits d'utilisateur, vous passez on et off dans le cadre de la chaîne d'accès. Si ni l'un ni l'autre n'est spécifié dans la chaîne d'accès, l'utilisateur se voit attribuer off et ne dispose pas de droits d'accès au groupe de réplication.

  • Vous ne pouvez pas utiliser les commandes interdites et renommées. Si vous spécifiez une commande interdite ou renommée, une exception est émise. Si vous souhaitez utiliser des listes de contrôle d'accès (ACL) pour une commande renommée, spécifiez le nom d'origine de la commande, en d'autres termes le nom de la commande avant qu'elle ne soit renommée.

  • Vous ne pouvez pas utiliser la commande reset dans le cadre d'une chaîne d'accès. Vous spécifiez des mots de passe avec des paramètres d'API, et ElastiCache for Redis gère les mots de passe. Par conséquent, vous ne pouvez pas utiliser reset car il supprimerait tous les mots de passe d'un utilisateur.

  • Redis 6 introduit la commande ACL LIST. Cette commande renvoie une liste d'utilisateurs ainsi que les règles de liste ACL appliquées à chaque utilisateur. ElastiCache for Redis prend en charge la commande ACL LIST, mais n'inclut pas la prise en charge des hachages de mot de passe comme Redis le fait. Avec ElastiCache for Redis, vous pouvez utiliser l'opération describe-users pour obtenir des informations similaires, y compris les règles contenues dans la chaîne d'accès. Toutefois, describe-users ne récupère pas un mot de passe utilisateur.

    Les autres commandes en lecture seule prises en charge par ElastiCache for Redis incluent ACL WHOAMI, ACL USERS et ACL CAT. ElastiCache for Redis ne prend pas en charge les autres commandes de liste ACL basées sur l'écriture.

  • Les contraintes suivantes s'appliquent :

    Ressource Maximum autorisé
    Utilisateurs par groupe d'utilisateurs 100
    Nombre d'utilisateurs 1000
    Nombre de groupes d'utilisateurs 100

L'utilisation de RBAC avec ElastiCache for Redis est décrite plus en détail ci-dessous.

Définition des autorisations à l'aide d'une chaîne d'accès

Pour définir les autorisations d'un groupe de réplication ElastiCache for Redis, vous créez une chaîne d'accès et l'attribuez à un utilisateur, à l'aide de la AWS CLI ou de l'AWS Management Console.

Les chaînes d'accès sont définies comme une liste de règles délimitées par des espaces qui sont appliquées à l'utilisateur. Elles définissent les commandes qu'un utilisateur peut exécuter et les clés qu'un utilisateur peut utiliser. Pour exécuter une commande, un utilisateur doit avoir accès à la commande en cours d'exécution et à toutes les clés accessibles par la commande. Les règles sont appliquées de gauche à droite de manière cumulative, et une chaîne plus simple peut être utilisée à la place de celle fournie s'il y a des redondances dans la chaîne fournie.

Pour plus d'informations sur la syntaxe des règles de liste ACL, veuillez consulter Listes ACL.

Dans l'exemple suivant, la chaîne d'accès représente un utilisateur actif ayant accès à toutes les clés et commandes disponibles.

on ~* +@all

La syntaxe de la chaîne d'accès se décompose comme suit :

  • on : l'utilisateur est un utilisateur actif.

  • ~* : l'accès est accordé à toutes les clés disponibles.

  • +@all : l'accès est accordé à toutes les commandes disponibles.

Les paramètres précédents sont les moins restrictifs. Vous pouvez modifier ces paramètres pour les rendre plus sécurisés.

Dans l'exemple suivant, la chaîne d'accès représente un utilisateur dont l'accès est restreint à l'accès en lecture sur les clés commençant par un keyspace « app:: »

on ~app::* -@all +@read

Vous pouvez affiner ces autorisations en listant les commandes auxquelles l'utilisateur a accès :

+command1 – l'accès de l'utilisateur aux commandes est limité à command1.

+@category : l'accès de l'utilisateur est limité à une catégorie de commandes.

Pour plus d'informations sur l'attribution d'une chaîne d'accès à un utilisateur, veuillez consulter Création d'utilisateurs et de groupes d'utilisateurs avec la console et la CLI.

Si vous migrez une charge de travail existante vers ElastiCache, vous pouvez récupérer la chaîne d'accès en appelant ACL LIST, à l'exclusion de l'utilisateur et des hachages de mot de passe.

Application de RBAC à un groupe de réplication pour ElastiCache for Redis

Pour utiliser le RBAC ElastiCache for Redis, procédez comme suit :

  1. Créez un ou plusieurs utilisateurs.

  2. Créez un groupe d'utilisateurs puis ajoutez-y des utilisateurs.

  3. Attribuez le groupe d'utilisateurs à un groupe de réplication ayant le chiffrement en transit activé.

Ces étapes sont décrites en détail ci-dessous.

Création d'utilisateurs et de groupes d'utilisateurs avec la console et la CLI

Les informations utilisateur pour les utilisateurs RBAC sont un ID utilisateur, un nom d'utilisateur et éventuellement un mot de passe et une chaîne d'accès. La chaîne d'accès fournit le niveau d'autorisation relatif aux clés et commandes. L'ID utilisateur est unique à l'utilisateur, et le nom d'utilisateur est celui qui est transmis au moteur.

Assurez-vous que les autorisations d'utilisateur que vous fournissez correspondent à l'objectif visé du groupe d'utilisateurs. Par exemple, si vous créez un groupe d'utilisateurs appelé Administrators, tout utilisateur que vous ajoutez à ce groupe doit avoir sa chaîne d'accès définie pour un accès complet aux clés et aux commandes. Pour les utilisateurs d'un groupe d'utilisateurs e-commerce, vous pouvez définir leurs chaînes d'accès en lecture seule.

ElastiCache configure automatiquement un utilisateur par défaut avec l'ID utilisateur et le nom d'utilisateur "default" et l'ajoute à tous les groupes d'utilisateurs. Vous ne pouvez pas le supprimer ou le modifier. Cet utilisateur est destiné à être compatible avec le comportement par défaut des versions précédentes de Redis et dispose d'une chaîne d'accès qui lui permet d'appeler toutes les commandes et d'accéder à toutes les clés.

Pour ajouter un contrôle d'accès approprié à un cluster, remplacez cet utilisateur par défaut par un nouvel utilisateur qui n'est pas activé ou qui utilise un mot de passe fort. Pour modifier l'utilisateur par défaut, créez un nouvel utilisateur avec le nom d'utilisateur défini sur default. Vous pouvez ensuite l'échanger avec l'utilisateur par défaut d'origine.

Les procédures suivantes montrent comment échanger l'utilisateur default d'origine avec un autre utilisateur default qui a une chaîne d'accès modifiée.

Pour créer un utilisateur par défaut sur la console

  1. Connectez-vous à la AWS Management Console et ouvrez la console Amazon ElastiCache à partir de l'adresse https://console.aws.amazon.com/elasticache/.

  2. Dans le volet de navigation de gauche, choisissez Redis.

  3. Choisissez User Group Management (Gestion des groupes d'utilisateurs).

  4. Pour User Group ID (ID du groupe d'utilisateurs), choisissez l'ID que vous souhaitez modifier. Assurez-vous de sélectionner le lien et non pas la case à cocher.

  5. Choisissez Swap Default (Échangez la valeur par défaut).

  6. Dans Swap Default (Échangez la valeur par défaut), pour Default User (Utilisateur par défaut), sélectionnez l'utilisateur souhaité comme utilisateur par défaut.

  7. Choisissez Permuter. Lorsque vous effectuez cette opération, toutes les connexions existantes à un groupe de réplication que possède l'utilisateur par défaut d'origine sont interrompues.

Pour créer un utilisateur par défaut à l'aide de l' AWS CLI

  1. Créez un utilisateur avec le nom d'utilisateur default à l'aide des commandes suivantes.

    Pour Linux, macOS ou Unix :

    aws elasticache create-user \ --user-id "new-default-user" \ --user-name "default" \ --engine "REDIS" \ --passwords "a-str0ng-pa))word" \ --access-string "off +get ~keys*"

    Pour Windows :

    aws elasticache create-user ^ --user-id "new-default-user" ^ --user-name "default" ^ --engine "REDIS" ^ --passwords "a-str0ng-pa))word" ^ --access-string "off +get ~keys*"
  2. Créez un groupe d'utilisateurs et ajoutez l'utilisateur que vous avez créé précédemment.

    Pour Linux, macOS ou Unix :

    aws elasticache create-user-group \ --user-group-id "new-group-2" \ --engine "REDIS" \ --user-ids "new-default-user"

    Pour Windows :

    aws elasticache create-user-group ^ --user-group-id "new-group-2" ^ --engine "REDIS" ^ --user-ids "new-default-user"
  3. Échangez le nouvel utilisateur default avec l'utilisateur default d'origine.

    Pour Linux, macOS ou Unix :

    aws elasticache modify-user-group \ --user-group-id test-group \ --user-ids-to-add "new-default-user" \ --user-ids-to-remove "default"

    Pour Windows :

    aws elasticache modify-user-group ^ --user-group-id test-group ^ --user-ids-to-add "new-default-user" ^ --user-ids-to-remove "default"

    Lorsque cette opération de modification est appelée, toutes les connexions existantes à un groupe de réplication que possède l'utilisateur par défaut d'origine sont interrompues.

Lors de la création d'un utilisateur, vous pouvez configurer jusqu'à deux mots de passe. Lorsque vous modifiez un mot de passe, toutes les connexions existantes aux groupes de réplication sont maintenues.

En particulier, prêtez attention à ces contraintes de mots de passe utilisateur lors de l'utilisation de RBAC avec ElastiCache for Redis :

  • Les mots de passe doivent comporter de 16 à 128 caractères imprimables.

  • Les caractères non alphanumériques suivants ne sont pas autorisés: , "" / @.

Gestion des utilisateurs avec la console et la CLI

Utilisez la procédure suivante pour gérer les utilisateurs sur la console.

Pour gérer les utilisateurs sur la console

  1. Connectez-vous à la AWS Management Console et ouvrez la console Amazon ElastiCache à partir de l'adresse https://console.aws.amazon.com/elasticache/.

  2. Dans le tableau de bord Amazon ElastiCache, choisissez User Management (Gestion des utilisateurs). Les options suivantes sont disponibles :

    • Create User (Créer un utilisateur) : lors de la création d'un utilisateur, vous entrez un ID utilisateur, un nom d'utilisateur, un mot de passe et une chaîne d'accès. La chaîne d'accès définit le niveau d'autorisation accordé à l'utilisateur pour les clés et commandes.

      Lors de la création d'un utilisateur, vous pouvez configurer jusqu'à deux mots de passe. Lorsque vous modifiez un mot de passe, toutes les connexions existantes aux groupes de réplication sont maintenues.

    • Modify User (Modifier l'utilisateur) : permet de mettre à jour le mot de passe d'un utilisateur ou de modifier sa chaîne d'accès.

    • Delete User (Supprimer l'utilisateur) : le compte de l'utilisateur sera supprimé de tous les groupes de gestion d'utilisateurs auxquels il appartient.

Utilisez les procédures suivantes pour gérer les utilisateurs avec l' AWS CLI.

Pour modifier un utilisateur à l'aide de la CLI

  • Utilisez la commande modify-user pour mettre à jour le mot de passe ou les mots de passe d'un utilisateur ou modifier les autorisations d'accès d'un utilisateur.

    Lorsqu'un utilisateur est modifié, les groupes d'utilisateurs associés à l'utilisateur sont mis à jour, ainsi que les groupes de réplication associés au groupe d'utilisateurs. Toutes les connexions existantes sont maintenues. Voici quelques exemples.

    Pour Linux, macOS ou Unix :

    aws elasticache modify-user \ --user-id user-id-1 \ --access-string "~objects:* ~items:* ~public:*" \ --no-password-required

    Pour Windows :

    aws elasticache modify-user ^ --user-id user-id-1 ^ --access-string "~objects:* ~items:* ~public:*" ^ --no-password-required

    Les exemples précédents renvoient la réponse suivante.

    { "UserId": "user-id-1", "UserName": "user-name-1", "Status": "modifying", "Engine": "redis", "AccessString": "off ~objects:* ~items:* ~public:* -@all", "UserGroupIds": [ "new-group-1" ], "Authentication": { "Type": "no-password" }, "ARN": "arn:aws:elasticache:us-east-1:493071037918:user:user-id-1" }
Note

Nous vous déconseillons d'utiliser l'option nopass. Si vous le faites, nous vous recommandons de définir les autorisations de l'utilisateur en lecture seule avec accès à un ensemble limité de clés.

Pour supprimer un utilisateur à l'aide de la CLI

  • Utilisez la commande delete-user pour supprimer un utilisateur. Le compte de l'utilisateur est supprimé et retiré des groupes d'utilisateurs auxquels il appartient. En voici un exemple.

    Pour Linux, macOS ou Unix :

    aws elasticache delete-user \ --user-id user-id-2

    Pour Windows :

    aws elasticache delete-user ^ --user-id user-id-2

    Les exemples précédents renvoient la réponse suivante.

    { "UserId": "user-id-2", "UserName": "user-name-2", "Status": "deleting", "Engine": "redis", "AccessString": "on ~keys* -@all +get", "UserGroupIds": [ "new-group-1" ], "Authentication": { "Type": "password", "PasswordCount": 1 }, "ARN": "arn:aws:elasticache:us-east-1:493071037918:user:user-id-2" }

Pour afficher une liste des utilisateurs, appelez l'opération describe-users.

aws elasticache describe-users { "Users": [ { "UserId": "user-id-1", "UserName": "user-id-1", "Status": "active", "Engine": "redis", "AccessString": "+get ~keys*", "UserGroupIds": [], "Authentication": { "Type": "password", "PasswordCount": 1 } } ] }

Gestion des groupes d'utilisateurs avec la console et la CLI

Vous pouvez créer des groupes d'utilisateurs pour organiser et contrôler l'accès des utilisateurs à un ou plusieurs groupes de réplication, comme indiqué ci-dessous.

Utilisez la procédure suivante pour gérer des groupes d'utilisateurs à l'aide de la console.

Pour gérer les groupes d'utilisateurs à l'aide de la console

  1. Connectez-vous à la AWS Management Console et ouvrez la console Amazon ElastiCache à partir de l'adresse https://console.aws.amazon.com/elasticache/.

  2. Dans le tableau de bord Amazon ElastiCache, choisissez User Management (Gestion des utilisateurs).

    Les opérations suivantes sont disponibles pour créer de nouveaux groupes d'utilisateurs :

    • Create (Créer) : lorsque vous créez un groupe d'utilisateurs, vous ajoutez des utilisateurs, puis affectez les groupes d'utilisateurs à des groupes de réplication. Par exemple, vous pouvez créer un groupe d'utilisateurs Admin pour les utilisateurs qui ont des rôles d'administration sur un cluster.

      Important

      Lorsque vous créez un groupe d'utilisateurs, vous devez inclure l'utilisateur par défaut.

    • Add Users (Ajouter des utilisateurs) : ajoute des utilisateurs au groupe d'utilisateurs.

    • Remove Users (Supprimer des utilisateurs) : supprime des utilisateurs du groupe d'utilisateurs. Lorsque des utilisateurs sont supprimés d'un groupe d'utilisateurs, toutes les connexions existantes qu'ils ont à un groupe de réplication sont interrompues.

    • Delete (Supprimer) : utilisez cette option pour supprimer un groupe d'utilisateurs. Notez que le groupe d'utilisateurs lui-même, et non les utilisateurs appartenant au groupe, sera supprimé.

    Pour les groupes d'utilisateurs existants, procédez comme suit :

    • Add Users (Ajouter des utilisateurs) : ajoute des utilisateurs existants au groupe d'utilisateurs.

    • Delete Users (Supprimer des utilisateurs) : supprime les utilisateurs existants du groupe d'utilisateurs.

      Note

      Les utilisateurs sont supprimés du groupe d'utilisateurs, mais pas supprimés du système.

Utilisez les procédures suivantes pour gérer des groupes d'utilisateurs à l'aide de la CLI.

Pour créer un groupe d'utilisateurs et ajouter un utilisateur à l'aide de la CLI

  • Utilisez la commande create-user-group, comme illustré ci-dessous.

    Pour Linux, macOS ou Unix :

    aws elasticache create-user-group \ --user-group-id "new-group-1" \ --engine "REDIS" \ --user-ids user-id-1, user-id-2

    Pour Windows :

    aws elasticache create-user-group ^ --user-group-id "new-group-1" ^ --engine "REDIS" ^ --user-ids user-id-1, user-id-2

    Les exemples précédents renvoient la réponse suivante.

    { "UserGroupId": "new-group-1", "Status": "creating", "Engine": "redis", "UserIds": [ "user-id-1", "user-id-2" ], "ReplicationGroups": [], "ARN": "arn:aws:elasticache:us-east-1:493071037918:usergroup:new-group-1" }

Pour modifier un groupe d'utilisateurs en ajoutant de nouveaux utilisateurs ou en supprimant des membres actuels à l'aide de la CLI

  • Utilisez la commande modify-user-group, comme illustré ci-dessous.

    Pour Linux, macOS ou Unix :

    aws elasticache modify-user-group --user-group-id new-group-1 \ --user-ids-to-add user-id-3 \ --user-ids-to-remove user-2

    Pour Windows :

    aws elasticache modify-user-group --user-group-id new-group-1 ^ --user-ids-to-add userid-3 ^ --user-ids-to-removere user-id-2

    Les exemples précédents renvoient la réponse suivante.

    { "UserGroupId": "new-group-1", "Status": "modifying", "Engine": "redis", "UserIds": [ "user-id-1", "user-id-2" ], "PendingChanges": { "UserIdsToRemove": [ "user-id-2" ], "UserIdsToAdd": [ "user-id-3" ] }, "ReplicationGroups": [], "ARN": "arn:aws:elasticache:us-east-1:493071037918:usergroup:new-group-1" }
Note

Toutes les connexions ouvertes appartenant à un utilisateur supprimé d'un groupe d'utilisateurs sont interrompues par cette commande.

Pour supprimer un groupe d'utilisateurs à l'aide de la CLI

  • Utilisez la commande delete-user-group, comme illustré ci-dessous. Le groupe d'utilisateurs lui-même, et non les utilisateurs appartenant au groupe, est supprimé.

    Pour Linux, macOS ou Unix :

    aws elasticache delete-user-group / --user-group-id

    Pour Windows :

    aws elasticache delete-user-group ^ --user-group-id

    Les exemples précédents renvoient la réponse suivante.

    aws elasticache delete-user-group --user-group-id "new-group-1" { "UserGroupId": "new-group-1", "Status": "deleting", "Engine": "redis", "UserIds": [ "user-id-1", "user-id-3" ], "ReplicationGroups": [], "ARN": "arn:aws:elasticache:us-east-1:493071037918:usergroup:new-group-1" }

Pour afficher une liste de groupes d'utilisateurs, vous pouvez appeler l'opération describe-user-groups.

aws elasticache describe-user-groups \ --user-group-id test-group
{ "UserGroups": [{ "UserGroupId": "test-group", "Status": "creating", "Engine": "redis", "UserIds": [ "defaut", "test-user-1" ], "ReplicationGroups": [] }] }

Attribution de groupes d'utilisateurs à des groupes de réplication

Après avoir créé un groupe d'utilisateurs et ajouté des utilisateurs, la dernière étape de la mise en œuvre de RBAC consiste à attribuer le groupe d'utilisateurs à un groupe de réplication.

Attribution de groupes d'utilisateurs à des groupes de réplication à l'aide de la console

Pour ajouter un groupe d'utilisateurs à une réplication à l'aide de la AWS Management Console, procédez comme suit :

Attribution de groupes d'utilisateurs à des groupes de réplication à l'aide de l' AWS CLI

L'opération AWS CLI suivante crée un groupe de réplication avec le chiffrement en transit (TLS) activé et le paramètre user-group-ids doté de la valeur my-user-group-id. Remplacez le groupe de sous-réseaux sng-test par un groupe de sous-réseaux existant.

Paramètres clés

  • --engine – Doit indiquer redis.

  • --engine-version – Doit être la version 6.0 ou ultérieure.

  • --transit-encryption-enabled : obligatoire pour l'authentification et l'association d'un groupe d'utilisateurs.

  • --user-group-ids : cette valeur fournit des groupes d'utilisateurs composés d'utilisateurs disposant d'autorisations d'accès spécifiées pour le cluster.

  • --cache-subnet-group : obligatoire pour associer un groupe d'utilisateurs.

Pour Linux, macOS ou Unix :

aws elasticache create-replication-group \ --replication-group-id "new-replication-group" \ --replication-group-description "new-replication-group" \ --engine "redis" \ --engine-version "6.0" \ --cache-node-type cache.m5.large \ --transit-encryption-enabled \ --user-group-ids "new-group-1" \ --cache-subnet-group "cache-subnet-group"

Pour Windows :

aws elasticache create-replication-group ^ --replication-group-id "new-replication-group" ^ --replication-group-description "new-replication-group" ^ --engine "redis" ^ --engine-version "6.0" ^ --cache-node-type cache.m5.large ^ --transit-encryption-enabled ^ --user-group-ids "new-group-1" ^ --cache-subnet-group "cache-subnet-group"

Le code précédent renvoie la réponse suivante.

{ "ReplicationGroup": { "ReplicationGroupId": "new-replication-group", "Description": "new-replication-group", "Status": "creating", "PendingModifiedValues": {}, "MemberClusters": [ "new-replication-group-001" ], "AutomaticFailover": "disabled", "SnapshotRetentionLimit": 0, "SnapshotWindow": "10:30-11:30", "ClusterEnabled": false, "UserGroupIds": ["new-group-1"] "CacheNodeType": "cache.m5.large", "DataTiering": "disabled" "TransitEncryptionEnabled": true, "AtRestEncryptionEnabled": false } }

L'opération AWS CLI suivante modifie un groupe de réplication avec le chiffrement en transit (TLS) activé et le paramètre user-group-ids doté de la valeur my-user-group-id.

Pour Linux, macOS ou Unix :

aws elasticache modify-replication-group \ --replication-group-id replication-group-1 \ --user-group-ids-to-remove "new-group-1" \ --user-group-ids-to-add "new-group-2"

Pour Windows :

aws elasticache modify-replication-group ^ --replication-group-id replication-group-1 ^ --user-group-ids-to-remove "new-group-1" ^ --user-group-ids-to-add "new-group-2"

Le code précédent renvoie la réponse suivante (abrégée) :

{ "ReplicationGroupId": "replication-group-1", "PendingChanges": { "UserGroups": { "UserGroupIdsToRemove": ["new-group-1"], "UserGroupIdsToAdd": ["new-group-2"] } } . . . "UserGroupIds": ["new-group-1"] }
aws elasticache modify-replication-group --replication-group-id replication-group-1 \ --user-group-ids-to-remove "new-group-1" \ --user-group-ids-to-add "new-group-2" { "ReplicationGroupId": "replication-group-1", "PendingChanges": { "UserGroups": { "UserGroupIdsToRemove": ["new-group-1"], "UserGroupIdsToAdd": ["new-group-2"] } } . . . "UserGroupIds": ["new-group-1"] }

Notez le PendingChanges dans la réponse. Toutes les modifications apportées à un groupe de réplication sont mises à jour de manière asynchrone. Vous pouvez surveiller cette progression en consultant les événements. Pour plus d’informations, consultez Affichage des événements ElastiCache.

Migration de Redis AUTH vers RBAC

Si vous utilisez Redis AUTH comme décrit dans Authentification des utilisateurs avec la commande Redis AUTH et que vous souhaitez migrer vers RBAC, procédez comme suit.

Utilisez la procédure suivante pour effectuer la migration de Redis AUTH vers RBAC à l'aide de la console.

Pour migrer de Redis AUTH vers RBAC à l'aide de la console

  1. Connectez-vous à la AWS Management Console et ouvrez la console ElastiCache à l'adresse https://console.aws.amazon.com/elasticache/.

  2. Depuis la liste située dans l'angle supérieur droit, choisissez la région AWS dans laquelle se trouve le cluster à modifier.

  3. Dans le volet de navigation, choisissez le moteur s'exécutant sur le cluster que vous voulez modifier.

    Une liste de clusters du moteur choisi s'affiche.

  4. Dans la liste des clusters, choisissez le nom du cluster que vous souhaitez modifier.

  5. Pour Actions, choisissez Modify (Modifier).

    La fenêtre Modify Cluster s'affiche.

  6. Pour Access Control Option (Option de contrôle d'accès), choisissez User Group Access Control List (Liste de contrôle d'accès au groupe d'utilisateurs).

  7. Pour User Group Access Control List (Liste de contrôle d'accès au groupe d'utilisateurs), choisissez un groupe d'utilisateurs.

  8. Sélectionnez Modify (Modifier).

Utilisez la procédure suivante pour effectuer la migration de Redis AUTH vers RBAC à l'aide de la CLI.

Pour migrer de Redis AUTH vers RBAC à l'aide de la CLI

  • Utilisez la commande modify-replication-group, comme illustré ci-dessous.

    Pour Linux, macOS ou Unix :

    aws elasticache modify-replication-group --replication-group-id test \ --auth-token-update-strategy DELETE \ --user-group-ids-to-add user-group-1

    Pour Windows :

    aws elasticache modify-replication-group --replication-group-id test ^ --auth-token-update-strategy DELETE ^ --user-group-ids-to-add user-group-1

Migration de RBAC vers Redis AUTH

Si vous utilisez RBAC et que vous souhaitez migrer vers Redis AUTH, veuillez consulter Migration de RBAC vers Redis AUTH.