Tous les produits
Search
Centre de documentation

Key Management Service:Gestion des secrets

Dernière mise à jour :Aug 09, 2026

Si vos applications doivent accéder à des secrets tels que des mots de passe ou des clés d'accès, utilisez Key Management Service (KMS) pour les stocker. Vos applications peuvent ensuite récupérer dynamiquement ces secrets depuis KMS à l'aide d'un SDK Alibaba Cloud, d'un SDK d'instance KMS ou d'un SDK de secrets. Cette approche prévient les fuites d'informations et les opérations malveillantes liées au stockage des secrets en clair.

Pourquoi utiliser la gestion des secrets

La divulgation de secrets, tels que les mots de passe de bases de données, les mots de passe de serveurs, les clés SSH et les clés d'accès, constitue une menace majeure pour la sécurité des données. Pour réduire le risque de fuites, il est crucial de protéger efficacement vos secrets et de les faire tourner périodiquement. L'utilisation de la fonctionnalité de gestion des secrets de KMS offre les avantages de sécurité suivants :

  • KMS chiffre et stocke les valeurs des secrets à l'aide d'algorithmes de chiffrement robustes. Cela empêche la divulgation de secrets et d'actifs de grande valeur due au codage en dur, améliorant ainsi la sécurité des données.

  • Permet un accès client sécurisé et pratique, permettant à vos applications d'utiliser dynamiquement les secrets avec un minimum de code, voire aucun.

  • La rotation immédiate vous permet de mettre à jour les secrets sans affecter vos applications et services.

    Remarque

    Cette fonctionnalité est disponible uniquement pour les secrets RAM, les secrets de base de données (en mode double compte géré) et les secrets ECS lorsque vous les intégrez à l'aide d'un SDK de secrets.

  • Prend en charge la rotation à haute fréquence pour les secrets entièrement dynamiques, ce qui réduit la durée de validité d'un secret et diminue son risque de compromission.

  • Prend en charge une gestion de sécurité centralisée et à grande échelle via des API et des outils d'infrastructure-as-code (IaC) tels que Resource Orchestration Service (ROS) ou Terraform.

Cas d'utilisation

Cette section utilise l'exemple de la gestion du nom d'utilisateur et du mot de passe d'une base de données autonome pour illustrer un cas d'utilisation de base du stockage et de la récupération d'un secret.

Remarque

Si vous utilisez une base de données ApsaraDB RDS, nous vous recommandons d'utiliser un secret de base de données. Pour plus d'informations, consultez Gérer et utiliser les secrets de base de données.

基本场景

  1. Un administrateur de sécurité configure le nom d'utilisateur et le mot de passe dont l'application MyApp a besoin pour accéder à la base de données cible.

  2. L'administrateur de sécurité crée un secret générique nommé « MyDbCreds » dans KMS pour stocker le nom d'utilisateur et le mot de passe.

  3. Lorsque MyApp doit accéder à la base de données, elle utilise un SDK client de secrets pour demander le secret « MyDbCreds » à KMS.

  4. KMS récupère le secret chiffré, le déchiffre et renvoie la valeur en clair à MyApp via HTTPS.

  5. MyApp analyse le secret en clair renvoyé pour obtenir le nom d'utilisateur et le mot de passe, puis utilise ces identifiants pour accéder à la base de données.

Pour l'application MyApp, l'appel d'une API KMS pour récupérer le nom d'utilisateur et le mot de passe de la base de données évite les risques de sécurité associés au codage en dur des secrets. La figure suivante illustre la différence entre l'utilisation de secrets codés en dur et celle de secrets gérés par KMS.

凭据差异

Composants d'un secret

Un secret se compose de métadonnées et d'une ou plusieurs versions de secret. Connectez-vous à la console KMS et affichez les détails d'un secret sur la page Secrets.

  • Métadonnées

    Incluent des informations telles que le nom du secret, le nom de ressource Alibaba Cloud (ARN), l'heure de création, le type de secret, la clé de chiffrement et les tags.

    Important

    La clé de chiffrement chiffre uniquement la valeur du secret, et non ses métadonnées. La clé et le secret doivent appartenir à la même instance KMS, et la clé doit être symétrique.

  • Versions de secret

    Un secret peut avoir plusieurs versions. Chaque version comprend un numéro de version, des étiquettes d'étape et une valeur de secret.

    • Une version de secret peut avoir plusieurs étiquettes d'étape, mais chaque étiquette d'étape ne peut pointer que vers une seule version.

    • Étiquette d'étape : une étiquette unique au sein d'un secret. Les étiquettes d'étape incluent des étiquettes intégrées et des étiquettes personnalisées.

      • Étiquettes d'étape intégrées :

        • ACSCurrent : la version actuelle du secret. Cette étiquette pointe toujours vers la dernière valeur du secret.

        • ACSPrevious : la version précédente du secret.

        • ACSPending : une étiquette temporaire utilisée lors de la rotation des secrets. KMS supprime cette étiquette une fois la rotation terminée.

          Remarque
          • Lorsque vous récupérez une valeur de secret en appelant une opération d'API, KMS renvoie la valeur de secret associée à l'étiquette d'étape ACSCurrent.

          • Les étiquettes d'étape intégrées agissent comme des pointeurs. Par exemple, lorsque vous stockez initialement une version de secret (v1), elle reçoit l'étiquette ACSCurrent. Si vous stockez ensuite une nouvelle version (v2), l'étiquette ACSCurrent passe à v2, et v1 est automatiquement réétiquetée comme ACSPrevious.

      • Étiquettes d'étape personnalisées : vous pouvez définir plusieurs étiquettes d'étape personnalisées pour chaque version de secret.

        Important

        Seuls les secrets génériques prennent en charge les étiquettes d'étape personnalisées. Le nombre total d'étiquettes d'étape personnalisées et intégrées pour un secret ne peut pas dépasser huit.

    • Valeur de secret : les informations sensibles que vous stockez dans le secret. Il peut s'agir d'une chaîne de caractères ou de données binaires.

    Remarque

    Lorsque le nombre de versions d'un secret dépasse la limite, la version la plus ancienne qui n'est associée à aucune étiquette d'étape est automatiquement supprimée.

Rotation des secrets

La rotation des secrets est le processus de mise à jour d'un secret par la création d'une nouvelle version. Cette pratique améliore la sécurité en limitant la durée de vie d'un secret. La nouvelle version est automatiquement étiquetée comme ACSCurrent, et les applications récupèrent alors dynamiquement la valeur du secret en demandant la version ACSCurrent.

Processus de rotation

image

Méthodes de rotation

  • Rotation automatique : vous pouvez configurer un planning de rotation, et KMS effectue automatiquement la rotation du secret à la fin de la période spécifiée. Vous pouvez configurer la rotation automatique pour les secrets RAM, les secrets de base de données et les secrets ECS directement dans KMS. Pour un secret générique, vous pouvez implémenter une rotation périodique à l'aide de Function Compute.

  • En réponse d'urgence, vous pouvez effectuer immédiatement la rotation d'un secret compromis. Cette option est prise en charge pour les secrets RAM, les secrets de base de données et les secrets ECS. Pour effectuer immédiatement la rotation d'un secret générique, vous devez manuellement stocker une nouvelle valeur de secret.

Types de secrets pris en charge

KMS prend en charge quatre types de secrets : les secrets génériques, les secrets RAM, les secrets de base de données et les secrets ECS. Le tableau suivant fournit des détails sur chaque type.

Remarque
  • Les secrets RAM, les secrets de base de données et les secrets ECS sont entièrement gérés. Une fois que vous avez commencé à gérer ces secrets dans KMS, vous devez effectuer toutes les rotations au sein de KMS. Ne modifiez pas leur statut et ne les supprimez pas dans leurs services source respectifs. Cela perturberait le processus de rotation des secrets dans KMS et pourrait empêcher vos applications de récupérer les secrets.

  • Si vous souhaitez gérer la rotation d'un secret, y compris ses versions et ses étiquettes d'étape, utilisez un secret générique.

Type

Description

Méthode de rotation

Référence

Secret générique

Un secret générique est un type de secret de base pris en charge par KMS. Vous pouvez utiliser un secret générique pour stocker n'importe quelle donnée sensible, telle que des mots de passe, des clés d'accès, des clés et jetons OAuth, ou des clés API.

  • Effectuez une rotation immédiate en stockant une nouvelle valeur de secret. Cela crée une nouvelle version de secret.

  • Configurez une rotation périodique à l'aide de Function Compute.

Gérer et utiliser les secrets génériques

Secret RAM

Un secret RAM est un type de secret entièrement géré pris en charge par KMS. Vous pouvez utiliser un secret RAM pour stocker la clé d'accès d'un utilisateur RAM.

  • Configurez une rotation périodique dans KMS.

  • Effectuez une rotation immédiate dans KMS.

Gérer et utiliser les secrets RAM

Secret de base de données

Un secret de base de données est un type de secret entièrement géré pris en charge par KMS. Vous pouvez l'utiliser pour stocker les identifiants de compte pour les bases de données, telles que les instances ApsaraDB RDS et les instances PolarDB.

  • Configurez une rotation périodique dans KMS.

  • Effectuez une rotation immédiate dans KMS.

Gérer et utiliser les secrets de base de données

Secret ECS

Un secret ECS est un type de secret entièrement géré pris en charge par KMS. Vous pouvez l'utiliser pour stocker le nom d'utilisateur et le mot de passe, ou la paire de clés SSH utilisée pour se connecter à une instance ECS.

  • Configurez une rotation périodique dans KMS.

  • Effectuez une rotation immédiate dans KMS.

Gérer et utiliser les secrets ECS

Facturation

Avant de pouvoir utiliser les secrets, vous devez acheter une instance KMS et configurer un quota de secrets. Pour plus d'informations sur la tarification des instances KMS, consultez Facturation. Pour obtenir des instructions sur l'achat d'une instance KMS, consultez Acheter et activer une instance KMS.

Contrôle d'accès et audit

Vous pouvez utiliser Resource Access Management (RAM) pour contrôler les autorisations d'accès et d'opération sur les secrets. Pour plus d'informations sur la configuration des stratégies d'autorisation, consultez Stratégies RAM personnalisées pour KMS.

Vous pouvez utiliser ActionTrail pour enregistrer les opérations telles que la création, la rotation et la récupération des secrets. Pour plus d'informations, consultez Interroger les journaux d'utilisation des clés et des secrets.

Rubriques connexes