IA & Souveraineté

Souveraineté numérique et intelligence artificielle en France et en Europe

Cloud KMS : gouvernance des CMEK, rotation, destruction et audit

Pratiques essentielles pour maîtriser vos clés (CMEK) avec un Cloud KMS : séparation des rôles, rotation, crypto‑shredding, audit et plan de réversibilité pour données IA sensibles.

Diagramme de gestion de la sécurité du cloud avec des icônes d'indexation vectorielle, d'audit, de cage d'entraînement, d'instantanés et d'artefacts ML autour d'un nuage central.

Table des matières :

  1. Ce que protège (et ne protège pas) un Cloud KMS dans un projet IA ou données sensibles
  2. CMEK, BYOK, HSM : comprendre les modèles de contrôle des clés
  3. Gouvernance des CMEK : rôles, séparation des tâches et traçabilité
  4. Rotation des clés : fréquence, impact applicatif et mécanismes de ré-chiffrement
  5. Désactivation, destruction et « crypto-shredding » : reprendre le contrôle sans interrompre
  6. Audit, exigences d’hébergement et réversibilité : construire des preuves et un plan de sortie

Ce que protège (et ne protège pas) un Cloud KMS dans un projet IA ou données sensibles

Un Cloud KMS (Key Management Service) est un service de gestion des clés qui crée, stocke et utilise des clés cryptographiques pour chiffrer et déchiffrer des données, avec des contrôles d’accès et des journaux d’activité. Dans la plupart des architectures cloud, il s’insère dans un schéma dit de chiffrement en enveloppe : une clé dite « de données » chiffre le contenu, et cette clé de données est elle-même chiffrée par une clé maître gérée par le KMS. Cela limite les ré-chiffrements massifs lors d’une rotation et rend la gouvernance des clés actionnable.

Dans les projets d’IA, le sujet dépasse le simple « chiffrement au repos ». Les données sensibles peuvent se retrouver dans des emplacements inattendus : jeux d’entraînement, bases vectorielles, journaux applicatifs, traces d’inférence, exports de supervision. C’est pour cela que la gouvernance des clés doit être raccordée à une cartographie des flux et des accès, comme dans cet article : Gouvernance IA : cartographie des flux et accès pour données sensibles. Sans ce travail, vous pouvez très bien « sécuriser » le stockage principal et laisser partir des données en clair dans des logs.

Points concrets à vérifier (souvent oubliés en IA) :

  • Vector stores / index d’embeddings : chiffrement au repos et contrôle des accès aux opérations de lecture/requête (la base peut être chiffrée, mais l’application peut exposer trop largement des fonctions de recherche).
  • Exports d’évaluation (CSV de scoring, jeux de test) : le « dernier kilomètre » (partage, téléchargement, buckets temporaires) est fréquemment moins bien gouverné que la base source.
  • Artefacts ML : modèles, poids, features, et datasets versionnés (même si « pseudonymisés ») peuvent être sensibles ; il faut les inclure dans l’inventaire KMS.
  • Sauvegardes et snapshots : chiffrement et surtout capacité de restauration après rotation (sinon le KMS devient un point de blocage).

Il faut aussi clarifier ce que le KMS ne protège pas. Un KMS ne chiffre pas magiquement les données « en cours d’usage » en mémoire, ni les captures écran d’un utilisateur autorisé, ni les fuites applicatives. L’hébergement est le lieu et l’entité qui opèrent l’infrastructure où tournent vos services (région cloud, opérateur, sous-traitants) : un KMS peut être dans une région donnée sans que tous les flux le soient. Dans une approche pragmatique, le Cloud KMS réduit le risque lié à l’accès non autorisé aux supports et à certains comptes, mais il n’élimine pas les risques de conception, d’exploitation et de partage excessif.

Mini-scénario (fréquent en entreprise en France) : une équipe data entraîne un modèle sur des données clients stockées dans un data lake chiffré avec CMEK. C’est positif. Mais les logs d’entraînement (métriques, erreurs, extraits de lignes rejetées) partent vers un service de logging central non chiffré avec la même gouvernance, parfois avec une rétention longue. Résultat : l’exfiltration la plus plausible n’est pas le data lake… mais les logs. Un KMS « bien fait » ne suffit pas si la cartographie des flux (et l’alignement des politiques de chiffrement) n’est pas complète.

CMEK, BYOK, HSM : comprendre les modèles de contrôle des clés

Une CMEK (Customer-Managed Encryption Key) est une clé de chiffrement dont vous gardez l’administration et les politiques d’usage, même si l’infrastructure KMS est opérée par un fournisseur cloud. L’intérêt principal est la maîtrise des autorisations (qui peut demander un déchiffrement) et la capacité à bloquer un usage en cas d’incident. À ne pas confondre avec « où sont les serveurs » : vous pouvez administrer une CMEK dans une région donnée tout en dépendant d’opérations et de contrôles du fournisseur.

Le BYOK (Bring Your Own Key) est le fait d’importer dans le KMS une clé générée ailleurs, souvent depuis un système de gestion interne ou un module matériel. C’est utile pour aligner des politiques d’entreprise (génération, traçabilité, exigences d’audit), mais cela ajoute des contraintes : formats, procédures d’import, gestion du cycle de vie et tests réguliers de restauration. Dans certains cas, l’import est « unidirectionnel » et la clé n’est pas exportable : c’est un choix de sécurité, mais cela doit être anticipé dans votre plan de réversibilité.

Un HSM (Hardware Security Module) est un équipement matériel certifiable conçu pour protéger les clés et exécuter des opérations cryptographiques dans un périmètre résistant aux altérations. Un HSM managé, souvent adossé au KMS, améliore la barrière technique contre l’extraction des secrets, mais ne remplace pas la gouvernance : une politique IAM trop permissive peut autoriser des opérations de déchiffrement légitimes, donc indétectables si vous n’auditez pas l’usage. Pour cadrer le vocabulaire, le NIST rappelle qu’un « cryptoperiod » (période d’utilisation autorisée d’une clé) est « the time span during which a specific key is authorized for use » (NIST SP 800-57 Part 1 Rev. 5, 2020, https://csrc.nist.gov/publications/detail/sp/800-57-part-1/rev-5/final). La technologie fixe le cadre, la gouvernance fixe les règles.

Pour aider à choisir un modèle (sans le réduire à un débat “marketing”), voici une grille opérationnelle simple :

Modèle Contrôle principal côté client Ce que ça apporte Points d’attention (réels)
CMEK Politiques d’usage, IAM, activation/désactivation Contrôle fin « qui peut déchiffrer », capacité de blocage Risque d’arrêt de service en cas d’erreur IAM, besoin de journaliser et d’alerter
BYOK Origine de la clé + traçabilité de génération Alignement avec une politique groupe (génération, audits internes) Procédures d’import + tests, dépendances au format et au cycle de vie
HSM Barrière technique contre l’extraction de clés Protection renforcée des secrets, parfois exigences d’audit Ne corrige pas une gouvernance faible ; plus d’effort d’exploitation (capacités, quotas, latence)

En IA, le critère décisif est souvent : pouvez-vous prouver “qui a demandé quoi, quand, depuis quel service, sur quelle clé”, puis agir vite (désactiver, restreindre, restaurer) sans improviser.

Gouvernance des CMEK : rôles, séparation des tâches et traçabilité

La gouvernance d’un Cloud KMS commence par des rôles clairs et une séparation des responsabilités. L’IAM (Identity and Access Management) est l’ensemble des mécanismes qui authentifient les identités et contrôlent leurs droits sur les ressources. Un modèle courant distingue au minimum : administrateurs de clés (création, rotation, destruction), administrateurs sécurité (politiques, alertes), exploitants applicatifs (droits d’usage au déchiffrement via service accounts), auditeurs (lecture des logs). L’objectif est d’éviter qu’une même personne puisse à la fois modifier la politique de clé et déclencher des déchiffrements en production.

Une manière pragmatique de formaliser cette séparation (et de la rendre auditable) est de produire une mini-matrice RACI sur les actions KMS sensibles :

Action KMS Admin clés Sécurité Exploitation applicative Audit
Créer une clé / key ring R A C I
Modifier la policy IAM d’une clé R A C I
Activer la rotation / créer nouvelle version R A I I
Autoriser un compte de service applicatif à déchiffrer C A R I
Désactiver une clé (incident) R A C I
Détruire une clé (fin de cycle) R A C I
Consulter les journaux KMS I C I R

R = Responsible, A = Accountable, C = Consulted, I = Informed.
L’important n’est pas la “perfection” du tableau, mais sa stabilité et sa traçabilité (revue périodique, signatures, tickets de changement).

Dans les organisations de 20 à 2 000 personnes, l’écueil n’est pas l’absence de KMS, mais la clé « partagée » entre environnements, projets et équipes. Une approche robuste consiste à standardiser : une clé par environnement (dev, préprod, prod), et par domaine de données (RH, finance, clientèle), avec des étiquettes (tags) et une convention de nommage. Cela facilite les revues d’accès et la détection des usages anormaux.

Exemple de convention (adaptable, mais efficace) :

  • kms-<org>-<app>-<domaine>-<env>-<region>
  • Tags : owner, data_class (public/interne/confidentiel/santé), retention, criticality, cost_center

Sur des cas d’usage IA terrain, par exemple dans des flux de chantier (photos, comptes rendus, plans), l’intérêt est d’isoler la clé liée aux documents d’un projet et de limiter l’impact si un périmètre doit être suspendu, comme l’illustre le type de cas évoqué ici : IA construction : cas d’usage concrets pour chantiers plus prévisibles.

Deux contrôles “simples” qui évitent beaucoup d’incidents :

  • Une identité applicative dédiée par workload (compte de service) : pas de clé partagée entre plusieurs applications, sinon vous perdez la capacité d’attribuer un usage et de couper finement.
  • Révisions d’accès cadencées : une revue trimestrielle des identités ayant le droit de décrypter (pas seulement d’“administrer”), car le risque principal est l’usage illégitime mais autorisé.

La maîtrise du modèle est la capacité à contrôler les paramètres, les données d’entraînement et les mises à jour d’un modèle d’IA, indépendamment du fournisseur qui l’héberge. Elle n’est pas équivalente à la maîtrise des clés : vous pouvez contrôler vos CMEK et rester dépendant d’un modèle propriétaire, ou inversement. Pour éviter les angles morts, reliez la gouvernance KMS à vos contrôles IA : quelles données alimentent l’entraînement, lesquelles partent vers une API, lesquelles sont journalisées, et avec quelle clé. Cette cohérence vaut plus qu’un empilement d’outils.

Astuce utile côté “preuve” : reliez chaque clé à une fiche d’actif (ou entrée CMDB) : périmètre, données concernées, services consommateurs, contacts d’astreinte, procédure d’arrêt/désactivation. En audit, ça transforme une discussion abstraite (“on a un KMS”) en éléments concrets (“voici la clé, ses usages, ses logs, et les responsables”).

Rotation des clés : fréquence, impact applicatif et mécanismes de ré-chiffrement

La rotation de clé est le fait de remplacer une clé (ou sa version active) afin de limiter l’impact d’un compromis et de respecter une durée d’usage définie. Techniquement, les KMS modernes gèrent des versions : la nouvelle version sert aux nouveaux chiffrement, les anciennes restent disponibles pour déchiffrer les données historiques. Grâce au chiffrement en enveloppe, la rotation ne nécessite pas de relire et réécrire tout le stockage : on ré-chiffre surtout des clés de données, pas nécessairement chaque objet.

La fréquence n’est pas universelle : elle dépend de votre classification de données, du niveau d’exposition, et de votre capacité à tester. Le NIST rappelle que la cryptopériode dépend du contexte et du risque (NIST SP 800-57 Part 1 Rev. 5, 2020). En pratique, beaucoup d’équipes visent une rotation annuelle pour des clés maîtres, plus fréquente pour certains secrets applicatifs, et une rotation accélérée après incident. Le point décisif pour un décideur n’est pas « combien de jours », mais « est-ce que je sais prouver mon processus et l’exécuter sans panne ».

Une grille de décision (à adapter) peut aider à justifier une cryptopériode sans tomber dans l’arbitraire :

Contexte Exposition Exemple (IA/données) Rotation typique (ordre de grandeur) Pré-requis
Données très sensibles Forte RH, santé, données clients + accès large 6–12 mois Tests de restauration, alerting decrypt, procédure incident
Données sensibles “métier” Moyenne Documents projet, index vectoriels internes 12–24 mois Inventaire usages + validation pipelines
Données peu sensibles Faible Logs techniques non sensibles, données publiques Selon politique interne Contrôles pour éviter la dérive (pas de “fourre-tout”)

Le risque opérationnel est souvent sous-estimé sur les sauvegardes, instantanés et archives. Une rotation mal préparée peut rendre illisibles des sauvegardes que vous pensiez restaurables, ou casser des pipelines IA qui relisent des données historiques (ré-embeddings, recalcul d’index). Pour réduire ce risque, imposez des tests réguliers : restauration d’un échantillon de sauvegardes après rotation, vérification que les clés anciennes restent autorisées pour le déchiffrement, et surveillance du taux d’erreurs « accès refusé / échec de déchiffrement ». Un bon indicateur est le nombre d’échecs de déchiffrement par heure, corrélé aux déploiements et aux changements IAM.

Checklist “rotation sans surprise” (en pratique) :

  • Vérifier quels systèmes écrivent encore avec l’ancienne version (jobs batch, ETL, notebooks, services oubliés).
  • Garantir la compatibilité des versions : qui chiffre avec la version N, qui déchiffre N-1 / N-2.
  • Prévoir une fenêtre où les anciennes versions restent actives pour le déchiffrement (sinon restauration impossible).
  • Tester un cas IA : reconstruction d’un index vectoriel à partir d’un snapshot chiffré (c’est un bon test car il lit massivement l’historique).
  • Mettre une alerte sur un seuil : ex. “> X erreurs de déchiffrement / 10 min” (X dépend du volume, l’important est d’avoir un signal exploitable).

Désactivation, destruction et « crypto-shredding » : reprendre le contrôle sans interrompre

La désactivation est l’action de rendre une clé inutilisable temporairement, tandis que la destruction supprime définitivement la clé et ses versions, rendant les données chiffrées indéchiffrables. Ce mécanisme est parfois appelé crypto-shredding : on ne détruit pas physiquement toutes les copies de données, on détruit la capacité de les lire. C’est puissant, mais seulement si vous maîtrisez où la clé est utilisée et si aucune copie n’existe sous une autre clé ou en clair.

Dans un scénario d’incident (compte administrateur suspect, erreur de configuration IAM, exfiltration présumée), la désactivation est un levier « stop the bleeding ». Mais elle peut arrêter une production entière si la clé protège une base transactionnelle ou un stockage partagé. D’où l’intérêt d’un mécanisme « break-glass » documenté : une procédure d’accès d’urgence, limitée dans le temps, journalisée, avec approbation à deux personnes quand c’est possible. Les arbitrages sont réels : plus vous limitez l’accès, plus vous avez besoin de procédures de continuité robustes.

Deux patterns utiles (souvent plus réalistes qu’un “tout ou rien”) :

  • Désactivation ciblée : si vous avez bien segmenté (par domaine / environnement), vous pouvez désactiver la clé d’un périmètre (ex. un projet IA spécifique) sans couper toute la production.
  • Réduction temporaire des permissions : en cas de suspicion, vous pouvez retirer temporairement le droit de déchiffrer à certains comptes (ou à un réseau) plutôt que désactiver la clé ; cela évite la panne totale tout en limitant l’exposition.

Pour la destruction, le principal piège est organisationnel : suppression d’un projet, fin d’un marché, droit à l’effacement, ou purge réglementaire. Avant de détruire une clé, il faut prouver que les données associées n’ont plus d’obligation de conservation et que les sauvegardes suivent la même logique. Vous ne cherchez pas une « conformité garantie », vous cherchez des preuves de maîtrise : liste des ressources rattachées à la clé, période de rétention, approbations, délai de grâce (time lock), et vérification post-destruction sur un échantillon. Sur le plan d’audit, gardez aussi les journaux KMS plus longtemps que les données, car ce sont eux qui expliquent ce qui a été accessible.

Mini-processus de décision (rapide à appliquer) :

  1. Objectif : arrêt temporaire (incident) → désactivation ; fin de cycle (purge, fin de contrat) → destruction.
  2. Cartographie : quelles ressources dépendent de la clé (stockage, DB, backups, index IA, workflows) ?
  3. Impact : quels services tomberaient immédiatement si la clé est indisponible ?
  4. Plan de repli : existe-t-il une procédure de restauration/rollback testée ?
  5. Délai de grâce : programmer une destruction avec période tampon (et alerte interne) pour éviter les destructions “accidentelles”.
  6. Preuves : ticket de changement, approbations, export des logs KMS, capture de configuration.

Point IA spécifique : la destruction d’une clé associée à des datasets historiques peut casser des reproductions d’expériences (retrain, audits de biais, explications). Si vous avez des exigences internes d’explicabilité ou de traçabilité des modèles, alignez la destruction de clés avec votre politique d’archivage des expériences (sans conserver indéfiniment “par défaut”).

Audit, exigences d’hébergement et réversibilité : construire des preuves et un plan de sortie

Un audit est un contrôle documenté visant à vérifier qu’un dispositif fonctionne comme prévu, à partir d’éléments probants (journaux, configurations, procédures, tests). Pour le KMS, l’élément probant clé est la journalisation des opérations sensibles : création, changement de politique, rotation, opérations de déchiffrement, désactivation et destruction. En complément, mettez en place des contrôles de configuration continus : détection des ressources non chiffrées, ou chiffrées avec une clé non attendue. Côté sources, l’Internet Security Glossary définit la gestion des clés comme un ensemble d’actions sur tout le cycle de vie (RFC 4949, 2007, https://www.rfc-editor.org/rfc/rfc4949), ce qui justifie des contrôles sur la création autant que sur l’usage.

Pour rendre l’audit “praticable” (et pas seulement documentaire), visez un paquet de preuves standardisées :

  • Export des logs KMS (période définie), avec capacité de recherche : qui, quoi, quand, sur quelle clé, depuis quelle identité/service.
  • État des policies IAM sur les clés (instantané daté), idéalement via un pipeline d’infrastructure-as-code ou un export signé.
  • Rapports de tests : au minimum un test de restauration de sauvegarde après rotation, et un test de “break-glass” (simulation encadrée).
  • Liste des ressources chiffrées et leur clé associée (l’inventaire qui évite les oublis).
  • Alertes et seuils : preuve que les événements critiques (échecs de déchiffrement, changements de policy) sont monitorés.

Si vous traitez des données sensibles, vous rencontrerez aussi des exigences d’hébergement et d’attestation. La qualification SecNumCloud est une qualification de sécurité délivrée par l’ANSSI pour des services cloud, avec des exigences organisationnelles et techniques (présentation ANSSI : https://www.ssi.gouv.fr/administration/qualification/secnumcloud/). Elle ne remplace pas votre gouvernance KMS, mais elle peut influencer vos choix d’architecture (où placer le KMS, comment opérer la séparation des rôles, quelles traces obtenir). Pour mesurer l’impact concret côté services de données, vous pouvez vous appuyer sur : SecNumCloud 3.2 : impacts sur les services cloud de données sensibles.

Dans un contexte France/UE, il est utile de formaliser (sans dramatiser) ce que vous attendez du couple hébergement + KMS :

  • Localisation régionale des services effectivement utilisés (KMS, stockage, sauvegardes, logs).
  • Modèle d’exploitation (qui opère quoi, astreintes, sous-traitants).
  • Traces disponibles (contenu, granularité, rétention, export).
  • Mécanismes de contrôle client (CMEK, séparation des rôles, désactivation, délais de destruction).

La juridiction applicable est le système de droit et les autorités compétentes qui peuvent imposer des obligations (production de données, injonctions, litiges) à un acteur, selon ses implantations et ses contrats. Ce sujet n’est pas de la géopolitique, c’est un point de risque opérationnel à documenter : quel contrat s’applique au KMS, quelles entités opèrent, quels sous-traitants interviennent, et quels engagements de notification existent.

Enfin, la réversibilité est la capacité à changer de fournisseur ou d’architecture sans perte de données ni rupture durable de service, avec un coût et un délai maîtrisés. Pour un Cloud KMS, cela implique un plan : export des données, re-chiffrement avec une nouvelle clé, validation des sauvegardes, et retrait des anciennes autorisations.

Une façon simple de tester la réversibilité (sans projet “big bang”) est de sélectionner un périmètre pilote (par ex. un dataset IA non critique mais représentatif) et d’exécuter la séquence :

  • Extraire / dupliquer les données (selon vos règles internes).
  • Re-chiffrer sous une nouvelle clé (nouveau KMS ou nouvelle hiérarchie).
  • Restaurer une sauvegarde dans le nouvel environnement.
  • Mettre hors service les anciennes permissions de déchiffrement.
  • Vérifier que les pipelines IA (relecture historique, calcul d’embeddings, scoring) passent sans “échec de déchiffrement”.

Pour cadrer vos échanges fournisseurs, gardez une trame de questions structurée, par exemple : Questions à poser pour choisir un fournisseur IA et maîtriser les risques. Et si vous avez commencé par cartographier les flux, réutilisez cette cartographie comme référentiel de contrôle (plutôt que de la laisser “vivre” dans un document) : cartographie des flux et accès pour données sensibles.

Action concrète (effort : moyen, 2 à 4 semaines) : lancez un « sprint KMS » en quatre livrables. (1) Inventaire des ressources chiffrées et des clés associées (stockage, bases, sauvegardes, IA). (2) Matrice des rôles IAM sur le KMS avec séparation des tâches et comptes de service dédiés. (3) Politique de rotation documentée avec un test de restauration post-rotation. (4) Procédure de désactivation et de destruction avec approbation, délai de grâce et collecte des preuves d’audit (export des logs, captures de configuration, rapport de test).


À lire aussi