For AI agents: the complete documentation index is available at https://docs.ovhcloud.com/fr/llms.txt, the full documentation bundle is available at https://docs.ovhcloud.com/fr/llms-full.txt, and this page is available as Markdown at https://docs.ovhcloud.com/fr/guides/public-cloud/databases/redis-update-acls.md.

Gérer les ACLs via l'API pour Public Cloud Databases pour Valkey

Voir en Markdown

Mettre à jour les ACLs des utilisateurs avec l'API OVHcloud

Objectif

Cette page vous montre comment mettre à jour les ACLs des utilisateurs de votre service Valkey avec l'API OVHcloud.

Utilisateurs et rôles

Comme expliqué sur cette page : Capacités de Valkey, utilisateurs et rôles, les ACLs des utilisateurs ne peuvent pas être mises à jour depuis l'espace client OVHcloud.

Vous devez donc utiliser l'API OVHcloud.

Prérequis

  • Un projet Public Cloud dans votre compte OVHcloud.
  • Un Public Cloud Database pour Valkey opérationnel.

Si vous n'avez jamais utilisé l'API OVHcloud auparavant, suivez ce tutoriel : Premiers pas avec les API OVHcloud.

Pour ce tutoriel, nous utilisons l'.

En pratique

Récupérer les identifiants de votre service, du cluster Valkey et de l'utilisateur

Vous devez d'abord identifier le service, le cluster Valkey et l'utilisateur auxquels vous souhaitez appliquer les modifications.

Récupérer l'identifiant du service souhaité

Exécutez l'appel API suivant :

GET/cloud/project

Dans la liste de résultats, sélectionnez et copiez l'identifiant du service souhaité, également appelé serviceName.

Exemple de réponse :

[
  "702de32b692c4842b0bb751dc5085daf"
]

Récupérer l'identifiant du cluster

Ouvrez l'appel API suivant, collez votre identifiant de service dans le champ serviceName, puis cliquez sur Execute :

Dans la liste de résultats, sélectionnez et copiez l'identifiant du cluster, également appelé clusterId.

Exemple de réponse :

[
  "aaaaaaaa-1234-56ab-78cd-123456abcdef"
]

Récupérer l'identifiant de l'utilisateur souhaité

Ouvrez l'appel API suivant et effectuez les étapes suivantes :

  • collez votre identifiant de service dans le champ serviceName
  • collez l'identifiant du cluster dans le champ clusterId
  • cliquez sur Execute

Dans la liste de résultats, recherchez et sélectionnez l'utilisateur souhaité.

Exemple de réponse :

[
  "be794937-1234-5678-90ab-9e3e7be21456",
  "63458577-1234-5678-90ab-20376726c018",
  "7510d64a-1234-5678-90ab-d382033bed25"
]

Pour obtenir plus de détails sur un utilisateur, ouvrez l'appel API suivant et effectuez les étapes suivantes :

  • collez votre identifiant de service dans le champ serviceName
  • l'identifiant de l'utilisateur dans le champ userId
  • l'identifiant du cluster dans le champ clusterId
  • cliquez sur Execute

Exemple :

{
  "createdAt": "2022-03-07T16:33:28.607868+01:00",
  "id": "be794937-1234-5678-90ab-9e3e7be21456",
  "status": "READY",
  "username": "ro-user",
  "keys": ["*.*"],
  "categories": [],
  "commands": ["+get", "-set"],
  "channels": ["*"]
}

Le résultat affiche quatre tableaux de chaînes, qui représentent les ACLs définies pour l'utilisateur donné.

  • Keys : autorise et interdit certaines clés et permissions de clé.
  • Categories : ajoute toutes les commandes de cette catégorie pour qu'elles puissent être appelées par l'utilisateur, les catégories valides étant par exemple @admin, @set, @sortedset,...
  • Commands : ajoute ou retire la commande de la liste des commandes que l'utilisateur peut appeler.
  • Channels : autorise et interdit les canaux Pub/Sub.

Vous pouvez consulter la documentation officielle de Redis® sur les utilisateurs et les ACL : https://redis.io/topics/acl.

Mettre à jour une ACL avec l'API

Ouvrez l'appel API suivant et collez les entrées correspondantes (serviceName, clusterId, user).

Ensuite, selon la stratégie choisie, définissez les différentes valeurs dans les tableaux de chaînes du corps de la requête, comme dans l'exemple ci-dessous :

{
  "categories": [],
  "channels": ["*"],
  "commands": ["+get", "-set"],
  "keys": ["datas", "properties"]
}

Une fois prêt, cliquez sur Execute pour mettre à jour l'ACL.

Le résultat devrait s'afficher de manière similaire à l'exemple ci-dessous.

{
  "createdAt": "2022-03-07T16:33:28.607868+01:00",
  "id": "be794937-1234-5678-90ab-9e3e7be21456",
  "status": "READY",
  "username": "ro-user",
  "keys": ["datas", "properties"],
  "categories": [],
  "commands": ["+get", "-set"],
  "channels": ["*"]
}

Nous voulons vos retours !

Nous serions ravis de répondre à vos questions et apprécions tout retour que vous pourriez nous faire.

Si vous avez besoin d'une formation ou d'une assistance technique pour la mise en oeuvre de nos solutions, contactez votre commercial ou cliquez sur ce lien pour obtenir un devis et demander une analyse personnalisée de votre projet à nos experts de l’équipe Professional Services.

Vous êtes sur Discord ? Rejoignez notre chaîne via https://discord.gg/ovhcloud et interagissez directement avec l’équipe qui développe notre service de bases de données !

Cette page vous a-t-elle aidé ?