Aujourd'hui, le chiffrement du trafic sur Internet est maintenu grâce à l'utilisation de clés publiques et privées qui assurent le chiffrement des données pendant leur transmission. Cloudflare contribue à sécuriser des millions de sites web en gérant les clés de chiffrement qui assurent la protection de ces données. Pour proposer des services ultra-rapides, Cloudflare stocke ces clés dans son parc de datacenters, qui s'étend à plus de 150 pays. Toutefois, certaines réglementations en matière de conformité exigent que le stockage des clés privées soit restreint à des emplacements géographiques spécifiques.
En 2017, nous avons inauguré Geo Key Manager, un produit permettant aux clients de stocker et gérer les clés de chiffrement de leurs domaines dans différents lieux géographiques, afin de respecter les réglementations en matière de conformité et de préserver la sécurité des données. Nous avons lancé le produit quelques mois avant l'entrée en vigueur du règlement général sur la protection des données (RGPD), et nous l'avons développé afin de prendre en charge trois régions : les États-Unis, l'Union européenne (UE) et un ensemble de nos datacenters de niveau supérieur, qui appliquent les mesures de sécurité les plus strictes. Depuis, les législations semblables au RGPD se sont rapidement étendues et aujourd'hui, plus de 15 pays disposent de législations ou de réglementations comparables en matière de protection des données, qui incluent des restrictions relatives aux transferts de données entre pays et/ou à la localisation des données dans certaines limites géographiques.
Chez Cloudflare, nous aimons être préparés pour l'avenir. Nous tenons à proposer à nos clients des outils qui leur permettent de préserver leur conformité dans cet environnement continuellement changeant. C'est pourquoi nous sommes heureux d'annoncer une nouvelle version de Geo Key Manager ; celle-ci permettra aux clients de définir des restrictions par pays (« stocker mes clés privées en Inde uniquement »), par région (« stocker mes clés privées dans l'Union européenne uniquement ») ou en fonction de normes (« stocker mes clés privées uniquement dans des datacenters conformes à FIPS »). Cette version est désormais disponible en bêta fermée, inscrivez-vous ici !
Enseignements issus de Geo Key Manager v1
Geo Key Manager existe depuis quelques années maintenant, et nous avons mis ce temps à profit pour recueillir des commentaires de nos clients. À mesure que la demande d'un système plus flexible a augmenté, nous avons décidé de tout reprendre depuis le commencement et de créer une nouvelle version de Geo Key Manager qui répondrait mieux aux besoins de nos clients.
À l'origine, nous avons lancé Geo Key Manager avec une prise en charge des datacenters aux États-Unis et dans l'Union européenne, ainsi que des datacenters les plus sécurisés. Ces régions étaient suffisantes à l'époque, mais les clients confrontés à des obligations de localisation des données dans d'autres juridictions ont besoin de plus de flexibilité lorsqu'ils choisissent des pays et des régions. Certains clients souhaitent pouvoir définir des restrictions de manière à conserver leurs clés privées dans un pays unique, tandis que d'autres veulent que les clés soient stockées partout dans le monde, sauf dans certains pays ; enfin, d'autres souhaitent personnaliser les règles à leur convenance et spécifier « les clés peuvent être stockées en X et Y, mais pas en Z ». Ce que nous avons appris de nos clients, c'est qu'ils ont besoin de flexibilité, d'un outil qui leur permettra de s'adapter à l'évolution continue des réglementations et des politiques – et c'est ce que nous avons entrepris de développer.
Le problème suivant auquel nous avons été confrontés est celui de l'évolutivité. Lorsque nous avons élaboré les régions initiales, nous avons inclus une liste intrinsèque des datacenters qui répondaient à nos critères pour les régions États-Unis, UE et « datacenter de haute sécurité ». Toutefois, cette liste était statique, car la fonctionnalité cryptographique sous-jacente ne permettait pas d'apporter des modifications dynamiques à notre liste de datacenters. Pour diffuser les clés privées à de nouveaux datacenters satisfaisant à nos critères, nous aurions été contraints de modifier intégralement le système. En outre, notre réseau s'étend considérablement chaque année ; plus de 100 nouveaux datacenters y ont ainsi été ajoutés depuis son lancement initial. Cela signifie que tous les nouveaux emplacements potentiels qui pourraient être utilisés pour le stockage de clés privées sont actuellement inutilisés, ce qui dégrade les performances et la fiabilité pour les clients recourant à cette fonctionnalité.
En raison de notre étendue actuelle, l'automatisation et l'expansion sont indispensables. Notre nouveau système doit être capable d'évoluer dynamiquement chaque fois que nous intégrons ou supprimons un datacenter de notre réseau, sans intervention humaine, ni refonte de grande ampleur.
Enfin, l'un des principaux enseignements que nous avons recueillis est que les clients commettent des erreurs, par exemple, en définissant une région tellement restreinte que la disponibilité devient problématique. Notre travail consiste à empêcher nos clients d'effectuer des modifications dont nous savons qu'elles auront un impact négatif sur eux.
Définissez vos propres géo-restrictions avec la nouvelle version de Geo Key Manager
Cloudflare s'est considérablement développée au cours de ces dernières années, et notre clientèle internationale a fait de même. Les clients doivent préserver la régionalisation de leur trafic. La région définie peut être aussi vaste qu'un continent – l'Asie, par exemple, ou peut être un pays spécifique, comme le Japon.
Nos échanges avec nos clients nous ont appris qu'ils souhaitent pouvoir définir eux-mêmes ces régions. C'est pourquoi nous sommes aujourd'hui heureux d'annoncer que les clients pourront utiliser Geo Key Manager pour créer ce que nous appelons des « politiques ».
Une politique peut être un pays unique, défini par un code pays à deux lettres (ISO 3166). Elle peut également être une région, telle que « EU », pour l'Union européenne, ou l'Océanie. Enfin, elle peut être un mélange des deux : « country:US or region: EU ».
La nouvelle version de Geo Key Manager basée sur les politiques vous permet de créer des listes d'autorisation ou de blocage pour les pays et régions pris en charge, vous donnant ainsi le contrôle des frontières géographiques dans lesquelles sera stockée votre clé privée. Si vous souhaitez stocker vos clés privées dans le monde entier en omettant quelques pays, vous pouvez le faire.
Si vous souhaitez stocker vos clés privées dans l'UE et aux États-Unis, par exemple, vous pouvez configurer l'appel d'API suivant :
Si vous souhaitez stocker vos clés privées dans l'UE, mais pas en France, voici comment vous pouvez spécifier cette demande :
curl -X POST "https://api.cloudflare.com/client/v4/zones/zone_id/custom_certificates" \
-H "X-Auth-Email: user@example.com" \
-H "X-Auth-Key: auth-key" \
-H "Content-Type: application/json" \
--data '{"certificate":"certificate","private_key":"private_key","policy":"(country: US) or (region: EU)", "type": "sni_custom"}'
Geo Key Manager propose maintenant la prise en charge de plus de 30 pays et régions. Mais ce n'est pas tout ! Le super-pouvoir de notre technologie Geo Key Manager, c'est qu'elle n'est pas nécessairement basée sur des indications géographiques, mais plutôt sur des attributs. À l'avenir, nous proposerons une politique qui permettra à nos clients de définir l'emplacement de stockage de leurs clés privées en fonction d'une norme de conformité, telle que FedRAMP ou ISO 27001.
curl -X POST "https://api.cloudflare.com/client/v4/zones/zone_id/custom_certificates" \
-H "X-Auth-Email: user@example.com" \
-H "X-Auth-Key: auth-key" \
-H "Content-Type: application/json" \
--data '{"certificate":"certificate","private_key":"private_key","policy": "region: EU and (not country: FR)", "type": "sni_custom"}'
Fiabilité, résilience et redondance
En permettant à nos clients de contrôler Geo Key Manager à distance, nous voulons nous assurer qu'ils comprennent l'impact de leurs modifications sur la redondance et la latence.
Au regard de la redondance, l'une de nos principales préoccupations est celle-ci : si nous permettons à nos clients de choisir une région extrêmement restreinte, en cas de suppression d'un datacenter (pour des raisons de maintenance, par exemple), la disponibilité sera radicalement affectée. Aussi, pour protéger nos clients, nous avons ajouté des restrictions concernant la redondance. Celles-ci empêchent nos clients de définir des régions contenant trop peu de datacenters, garantissant ainsi que tous les datacenters inclus dans une politique sont en mesure d'offrir une disponibilité et une redondance élevées.
Par ailleurs, au cours des dernières années, nous avons considérablement amélioré le réseau sous-jacent qu'utilise Geo Key Manager. Pour plus d'informations sur la façon dont nous avons procédé, restez à l'écoute : nous publierons prochainement une étude technique approfondie de Geo Key Manager.
Les performances sont importantes
Avec les régions d'origine (États-Unis, Union européenne et datacenters de haute sécurité), nous avons appris que les clients pouvaient ignorer les éventuels impacts sur la latence lorsqu'ils configurent Geo Key Manager pour une région donnée. Imaginez que vos clés soient stockées aux États-Unis. Pour vos clients basés en Asie, l'impact sur la latence sera perceptible si les requêtes doivent faire le tour du monde. Maintenant que les clients sont en mesure de définir des régions de manière plus granulaire, nous voulons nous assurer qu'ils visualisent l'impact de cette modification avant de l'effectuer.
Si vous gérez une plateforme d'e-commerce, les performances sont toujours une priorité absolue. Nous développons actuellement des indicateurs de performances des politiques de Geo Key Manager, tant d'un point de vue régional (« Quel est l'impact de la latence pour les clients basés en Asie ? ») que d'un point de vue mondial (« Quel est l'impact moyen de cette politique pour n'importe quel utilisateur dans le monde ? »).
Lorsque vous observez l'impact sur la latence, si vous constatez que celui-ci est inacceptable, vous pouvez créer pour votre service un domaine distinct, spécifique à la région qu'il sert.
Version bêta fermée, disponible maintenant !
Vous souhaitez tester la toute dernière version de Geo Key Manager ? Renseignez ce formulaire.
Prochainement !
Geo Key Manager est uniquement disponible par le biais d'une API, pour le moment. Cependant, nous travaillons à la création d'une interface utilisateur simple d'utilisation, depuis laquelle les clients pourront gérer facilement leurs politiques et leurs régions. En outre, nous présenterons des indicateurs de performances et des avertissements si nous constatons que l'impact entraîne une dégradation des performances ou de la redondance, afin que les clients prêtent attention à ces aspects lorsqu'ils définissent leurs politiques.
Nous sommes également ravis d'étendre notre produit Geo Key Manager au-delà des certificats téléchargés personnalisés. À l'avenir, les certificats émis par l'intermédiaire de Advanced Certificate Manager ou de SSL for SaaS seront autorisés à ajouter des restrictions basées sur des politiques pour le stockage des clés.
Enfin, nous envisageons d'ajouter davantage de régions par défaut, afin de simplifier le processus de sélection pour nos clients. Si vous souhaitez nous demander d'assurer la prise en charge de certaines régions ou nous transmettre vos commentaires ou vos demandes de fonctionnalités concernant Geo Key Manager, veuillez nous en faire part dans le formulaire. Nous sommes toujours ravis d'avoir des nouvelles de nos clients !