View a markdown version of this page

Authentification à l'aide de la commande Valkey et Redis OSS AUTH - Amazon ElastiCache

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Authentification à l'aide de la commande Valkey et Redis OSS AUTH

Note

Le AUTH a été remplacé par. Role-Based Contrôle d'accès (RBAC) Tous les caches sans serveur doivent utiliser le contrôle RBAC pour l’authentification. Avec RBAC, vous pouvez également utiliser Secrets Manager pour la rotation automatique des mots de passe. Pour de plus amples informations, veuillez consulter Rotation automatique des mots de passe pour les utilisateurs.

Les jetons d'authentification ou les mots de passe Valkey et Redis OSS permettent à Valkey et Redis OSS d'exiger un mot de passe avant d'autoriser les clients à exécuter des commandes, améliorant ainsi la sécurité des données. Le AUTH n'est disponible que pour les clusters basés sur des nœuds.

Vue d'ensemble de AUTH dans ElastiCache Valkey et Redis OSS

Lorsque vous l'utilisez AUTH avec votre cluster OSS ElastiCache pour Valkey et Redis, il y a quelques améliorations.

En particulier, soyez conscient de ces contraintes relatives au jeton ou au mot de passe AUTH lorsque vous utilisez AUTH :

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

  • Les caractères non alphanumériques sont limités à (!, &, #, $, ^, <, >, -).

  • AUTH ne peut être activé que pour les clusters Valkey ou Redis OSS activés pour le chiffrement en transit.

Pour configurer un jeton fort, nous vous recommandons de suivre une stratégie de mot de passe stricte, par exemple en exigeant les éléments suivants :

  • Les jetons ou les mots de passe doivent inclure au moins trois des types de caractères suivants :

    • Caractères majuscules

    • Caractères minuscules

    • Chiffres

    • Caractères non alphanumériques (!, &, #, $, ^, <, >, -)

  • Les jetons ou les mots de passe ne doivent pas contenir un mot du dictionnaire ou un mot du dictionnaire légèrement modifié.

  • Les jetons ou les mots de passe ne doivent pas être identiques ou similaires à un jeton récemment utilisé.

Application de l'authentification à un ElastiCache cluster OSS pour Valkey et Redis

Vous pouvez demander aux utilisateurs de saisir un jeton (mot de passe) sur un serveur Valkey ou Redis OSS protégé par un jeton. Pour ce faire, incluez le paramètre --auth-token (API : AuthToken) avec le jeton correct lorsque vous créez votre groupe ou cluster de réplication. Incluez-le également dans toutes les commandes suivantes vers le groupe ou le cluster de réplication.

L' AWS CLI opération suivante crée un groupe de réplication avec le chiffrement en transit (TLS) activé et le AUTH jetonThis-is-a-sample-token. Remplacez le groupe de sous-réseaux sng-test par un groupe de sous-réseaux existant.

Paramètres clés
  • --engine— Ça doit être valkey ouredis.

  • --engine-version— Si le moteur est Redis OSS, il doit être 4.0.10 ou version ultérieure.

  • --transit-encryption-enabled : obligatoire pour l'authentification et l'éligibilité HIPAA.

  • --auth-token— Nécessaire pour l'authentification lors de l'utilisation de jetons AUTH. Pour l'éligibilité HIPAA, une authentification est requise (via un jeton AUTH ou une authentification IAM). Cette valeur doit être le jeton correct pour ce serveur Valkey ou Redis OSS protégé par des jetons.

  • --cache-subnet-group : obligatoire pour l'éligibilité HIPAA.

Pour Linux, macOS ou Unix :

aws elasticache create-replication-group \ --replication-group-id authtestgroup \ --replication-group-description authtest \ --engine redis \ --cache-node-type cache.m4.large \ --num-node-groups 1 \ --replicas-per-node-group 2 \ --transit-encryption-enabled \ --auth-token This-is-a-sample-token \ --cache-subnet-group sng-test

Pour Windows :

aws elasticache create-replication-group ^ --replication-group-id authtestgroup ^ --replication-group-description authtest ^ --engine redis ^ --cache-node-type cache.m4.large ^ --num-node-groups 1 ^ --replicas-per-node-group 2 ^ --transit-encryption-enabled ^ --auth-token This-is-a-sample-token ^ --cache-subnet-group sng-test

Modifier le jeton AUTH sur un cluster existant

Pour faciliter la mise à jour de votre authentification, vous pouvez modifier le AUTH jeton utilisé sur un cluster. Vous pouvez effectuer cette modification si la version du moteur est Valkey 7.2 ou supérieure ou Redis 5.0.6 ou supérieure. ElastiCache doit également avoir activé le chiffrement en transit. Pour de plus amples informations, veuillez consulter ElastiCache chiffrement en transit (TLS).

La modification du jeton d'authentification prend en charge deux stratégies : ROTATE et SET. La stratégie ROTATE ajoute un jeton AUTH supplémentaire au serveur tout en conservant le jeton précédent. La stratégie SET met à jour le serveur pour qu'il ne prenne en charge qu'un seul jeton AUTH. Effectuez ces appels de modification avec le paramètre --apply-immediately pour appliquer les modifications immédiatement.

Rotation du jeton AUTH

Pour mettre à jour un serveur Valkey ou Redis OSS avec un nouveau jeton AUTH, appelez l'ModifyReplicationGroupAPI avec le --auth-token paramètre comme nouveau AUTH jeton et --auth-token-update-strategy avec la valeur ROTATE. Une fois la modification ROTATE terminée, le cluster prendra en charge le jeton AUTH précédent en plus de celui spécifié dans le auth-token paramètre. Si aucun jeton AUTH n'a été configuré sur le groupe de réplication avant la rotation du jeton AUTH, le cluster prend en charge le jeton AUTH spécifié dans le --auth-token paramètre en plus de prendre en charge la connexion sans authentification. Consultez la section Définition du jeton AUTH pour mettre à jour le jeton AUTH requis à l'aide de la stratégie de mise à jour SET.

Note

Si vous ne configurez pas le jeton AUTH auparavant, une fois la modification terminée, le cluster ne prendra en charge aucun jeton AUTH en plus de celui spécifié dans le paramètre auth-token.

Si cette modification est effectuée sur un serveur qui prend déjà en charge deux jetons AUTH, le jeton AUTH le plus ancien sera également supprimé lors de cette opération. Cela permet à un serveur de prendre en charge jusqu'à deux jetons AUTH les plus récents à la fois.

À ce stade, vous pouvez procéder en mettant à jour le client pour qu'il utilise le dernier jeton AUTH. Une fois les clients mis à jour, vous pouvez utiliser la stratégie SET pour la rotation des jetons AUTH (expliqué dans la section suivante) pour commencer exclusivement à utiliser le nouveau jeton.

L' AWS CLI opération suivante modifie un groupe de réplication pour faire pivoter le AUTH jetonThis-is-the-rotated-token.

Pour Linux, macOS ou Unix :

aws elasticache modify-replication-group \ --replication-group-id authtestgroup \ --auth-token This-is-the-rotated-token \ --auth-token-update-strategy ROTATE \ --apply-immediately

Pour Windows :

aws elasticache modify-replication-group ^ --replication-group-id authtestgroup ^ --auth-token This-is-the-rotated-token ^ --auth-token-update-strategy ROTATE ^ --apply-immediately

Définition du jeton AUTH

Pour mettre à jour un serveur Valkey ou Redis OSS afin de prendre en charge un seul AUTH jeton requis, appelez l'opération d'ModifyReplicationGroupAPI avec le --auth-token paramètre ayant la même valeur que le dernier jeton AUTH et le --auth-token-update-strategy paramètre avec la valeur. SET La stratégie SET ne peut être utilisée qu'avec un cluster qui possède 2 jetons AUTH ou 1 jeton AUTH optionnel issu d'une stratégie ROTATE utilisée auparavant. Une fois la modification terminée, le serveur prend en charge uniquement le jeton AUTH spécifié dans le paramètre auth-token.

L' AWS CLI opération suivante modifie un groupe de réplication pour définir le jeton AUTH sur. This-is-the-set-token

Pour Linux, macOS ou Unix :

aws elasticache modify-replication-group \ --replication-group-id authtestgroup \ --auth-token This-is-the-set-token \ --auth-token-update-strategy SET \ --apply-immediately

Pour Windows :

aws elasticache modify-replication-group ^ --replication-group-id authtestgroup ^ --auth-token This-is-the-set-token ^ --auth-token-update-strategy SET ^ --apply-immediately

Activation de l'authentification sur un cluster existant

Pour activer l'authentification sur un serveur Valkey ou Redis OSS existant, appelez l'opération ModifyReplicationGroup API. Appelez ModifyReplicationGroup avec le paramètre --auth-token en tant que nouveau jeton et le paramètre --auth-token-update-strategy avec la valeur ROTATE.

Une fois la modification ROTATE terminée, le cluster prend en charge le AUTH jeton spécifié dans le --auth-token paramètre en plus de prendre en charge la connexion sans authentification. Une fois que toutes les applications clientes sont mises à jour pour s'authentifier auprès de Valkey ou Redis OSS avec le jeton AUTH, utilisez la stratégie SET pour marquer le jeton AUTH comme requis. L'activation de l'authentification n'est prise en charge que sur les serveurs Valkey et Redis OSS sur lesquels le chiffrement en transit (TLS) est activé.

Migration de RBAC vers AUTH

Si vous authentifiez des utilisateurs avec Valkey ou Redis OSS Role-Based Access Control (RBAC) comme décrit dansRole-Based Contrôle d'accès (RBAC), et que vous souhaitez migrer vers AUTH, utilisez les procédures suivantes. Vous pouvez migrer à l'aide de la console ou de la CLI.

Pour migrer de RBAC vers AUTH à l'aide de la console
  1. Connectez-vous à Console de gestion AWS et ouvrez la ElastiCache console à l'adresse https://console.aws.amazon.com/elasticache/.

  2. Dans la liste en haut à droite, choisissez la AWS région dans laquelle se trouve le cluster que vous souhaitez 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 Modifier.

    La fenêtre Modifier apparaît.

  6. Pour le contrôle d'accès, choisissez l'accès utilisateur par défaut Valkey AUTH ou l'accès utilisateur par défaut Redis OSS AUTH.

  7. Sous jeton Valkey AUTH ou jeton Redis OSS AUTH, définissez un nouveau jeton.

  8. Choisissez Prévisualiser les modifications, puis Modifier sur l’écran suivant.

Pour migrer de RBAC vers AUTH à l'aide du AWS CLI

Utilisez l'une des commandes suivantes pour configurer un nouveau AUTH jeton facultatif pour votre groupe de réplication Valkey ou Redis OSS. Notez qu'un jeton d'authentification facultatif permettra un accès non authentifié au groupe de réplication jusqu'à ce que le jeton d'authentification soit marqué comme requis, en utilisant la stratégie SET de mise à jour décrite à l'étape suivante.

Pour Linux, macOS ou Unix :

aws elasticache modify-replication-group \ --replication-group-id test \ --remove-user-groups \ --auth-token This-is-a-sample-token \ --auth-token-update-strategy ROTATE \ --apply-immediately

Pour Windows :

aws elasticache modify-replication-group ^ --replication-group-id test ^ --remove-user-groups ^ --auth-token This-is-a-sample-token ^ --auth-token-update-strategy ROTATE ^ --apply-immediately

Après avoir exécuté la commande ci-dessus, vous pouvez mettre à jour vos applications Valkey ou Redis OSS pour vous authentifier auprès du groupe de ElastiCache réplication à l'aide du jeton AUTH facultatif nouvellement configuré. Pour terminer la rotation des jetons d'authentification, utilisez la stratégie de mise à jour SET dans la commande suivante ci-dessous. Cela marquera le jeton AUTH facultatif, selon les besoins. Une fois la mise à jour du jeton d'authentification terminée, l'état du groupe de réplication sera affiché comme ACTIVE et toutes les connexions à ce groupe de réplication nécessiteront une authentification.

Pour Linux, macOS ou Unix :

aws elasticache modify-replication-group \ --replication-group-id test \ --auth-token This-is-a-sample-token \ --auth-token-update-strategy SET \ --apply-immediately

Pour Windows :

aws elasticache modify-replication-group ^ --replication-group-id test ^ --remove-user-groups ^ --auth-token This-is-a-sample-token ^ --auth-token-update-strategy SET ^ --apply-immediately

Pour de plus amples informations, veuillez consulter Authentification à l'aide de la commande Valkey et Redis OSS AUTH.

Note

Si vous devez désactiver le contrôle d'accès sur un ElastiCache cluster, consultezDésactivation du contrôle d'accès sur un cache ElastiCache Valkey ou Redis OSS.