Gérez vos propres clés de chiffrement dans Auth0 à l’aide de Bring Your Own Key (BYOK) pour contrôler la hiérarchie des clés qui protège les données de votre tenant Auth0.
L’utilisation d’Auth0 Customer Managed Keys vous permet de configurer le cycle de vie de votre Tenant Master Key et d’utiliser votre propre Customer Provided Root Key pour remplacer l’Environment Root Key de votre tenant Auth0.Customer Managed Keys offre deux méthodes pour gérer vos clés :
Control Your Own Key : permet aux utilisateurs ayant le Key Management Editor role de personnaliser le cycle de vie de la Tenant Master Key dans Auth0 KMS.
Bring Your Own Key : permet aux utilisateurs ayant le Key Management Editor role de remplacer l’Auth0 Environment Root Key et d’importer leur propre Wrapped Encryption Key dans le Hardware Security Module (HSM) d’Auth0 Cloud correspondant.
La fonctionnalité Customer Managed Keys est offerte aux utilisateurs ayant le rôle Key Management Editor. Ce rôle n’est pas attribué aux utilisateurs par défaut et doit être explicitement attribué à un membre du tenant. Pour en savoir plus, consultez Add Tenant Members.
Utilisez les permissions suivantes pour accorder l’accès aux endpoints Rekey :
Permissions
Descriptions
create:encryption_keysupdate:encryption_keys
Les utilisateurs peuvent effectuer la rotation et le rechiffrement de la hiérarchie des clés d’un tenant Auth0 à l’aide de l’endpoint Rekey de la Management API.
Utilisez le point de terminaison Rekey de la Management API pour faire la rotation de la Tenant Master Key, ainsi que la rotation et le rechiffrement des Namespace Keys.
Rotation de la Tenant Master Key : désactive la Tenant Master Key active et crée une nouvelle Tenant Master Key.
Rotation de toutes les Namespace Keys du tenant : désactive les clés actives et active de nouvelles clés.
Les nouvelles Namespace Keys sont utilisées pour les nouvelles opérations de chiffrement.
Les Namespace Keys désactivées sont utilisées pour déchiffrer les données chiffrées précédemment.
Rechiffre toutes les Namespace Keys existantes avec la nouvelle Tenant Master Key.
Le point de terminaison est accessible uniquement aux membres du tenant disposant de scopes d’autorisation précis dans Auth0. Par défaut, ces scopes sont accordés aux utilisateurs ayant le Key Management Editor role.
En important votre propre Customer Provided Root Key avec Bring Your Own Key, vous retirez implicitement à Auth0 la gestion du cycle de vie de la Customer Provided Root Key, à l’exception de sa suppression.
Bring Your Own Key permet aux Key Management Editors d’importer de manière sécurisée une Wrapped Encryption Key (Customer Provided Root Key) dans un Hardware Security Module (HSM) FIPS 140-2 L3 dans l’Auth0 Cloud correspondant.Avec Bring Your Own Key, vous pouvez :
Remplacer l’Environment Root Key générée par défaut par Auth0 par une nouvelle Customer Provided Root Key.
Effectuer la rotation de la hiérarchie des clés et la rechiffrer avec la Customer Provided Root Key. Par exemple : créer et rechiffrer une nouvelle Tenant Master Key et une nouvelle Namespace Key.
Surveiller les événements de journalisation de Customer Managed Keys
Auth0 effectue automatiquement la rotation des clés de chiffrement du tenant une fois par année, en ajoutant les événements de journalisation suivants dans les journaux du tenant :
kms_key_state_changed
kms_key_management_success
Les opérations de Customer Managed Keys ajoutent les événements de journalisation suivants dans vos journaux du tenant :Un code d’événement sapi indiquant :
Créer la nouvelle clé de chiffrement
Créer la clé d’enveloppement publique
Importer la clé de chiffrement
Supprimer la clé de chiffrement par son ID de clé
Effectuer la rotation de la hiérarchie de clés
Un code d’événement kms_key_management_success indiquant une opération KMS réussie.Un code d’événement kms_key_management_failure indiquant une opération KMS ayant échoué.Un code d’événement kms_key_state_changed indiquant un changement d’état d’une clé KMS.
Au niveau de la couche applicative d’Auth0, Auth0 protège les secrets et les données des clients au moyen du chiffrement par enveloppe.La hiérarchie de chiffrement par enveloppe d’Auth0 comprend les clés suivantes, chacune étant chiffrée à l’aide de la clé qui la précède. Le tableau ci-dessous résume la hiérarchie des clés :
Clé
Algorithme
Stockage
Environment Root Key
RSA 2048 OAEP (Auth0 on Azure) AES-256-GCM (Auth0 on AWS)
La Environment Root Key se trouve au sommet de la hiérarchie et encapsule la Tenant Master Key pour éviter qu’elle soit divulguée ou altérée à l’extérieur d’Auth0.Une Auth0 Environment Root Key distincte est générée pour chaque environnement Auth0 et stockée dans un HSM adjacent. Les HSM sont déployés dans une configuration hautement disponible répartie sur plusieurs régions géographiques. Cela signifie qu’ils basculeront vers une autre région en cas d’incident majeur touchant une région entière.L’Auth0 Environment Root Key est partagée entre tous les tenants. Les clients peuvent utiliser la fonctionnalité Bring Your Own Key pour obtenir une Environment Root Key dédiée à leur tenant.Auth0 utilise les algorithms suivants pour encapsuler la Tenant Master Key avec la Environment Root Key, selon votre Auth0 Cloud Service Provider :
Auth0 on Azure: RSA 2048 OAEP
Auth0 on AWS: AES 256 GCM
À l’aide de l’Auth0 Dashboard ou de la Management API, les Admins de tenant peuvent remplacer l’Auth0 Environment Root Key par leur propre Customer Provided Root Key.
Chaque tenant possède une Tenant Master Key chiffrée stockée dans l’Auth0 Key Management Service, qui sert à chiffrer les Namespace Keys.L’algorithme utilisé pour chiffrer la Tenant Master Key est AES256 GCM.
Lorsqu’un administrateur de tenant utilisant l’Auth0 Dashboard ou la Management API fournit sa propre Customer Provided Root Key, une nouvelle Tenant Master Key est créée.
Les Namespace Keys servent à séparer les clés de chiffrement utilisées à différentes fins dans le tenant. Le nombre de Namespace Keys ainsi que leur utilisation sont configurés en interne par Auth0 et ne peuvent pas être personnalisés.Le chiffrement et le déchiffrement des Namespace Keys nécessitent l’accès à la Tenant Master Key. Les Namespace Keys ne quittent jamais Auth0 Key Management Service et ne sont accessibles ni aux développeurs ni aux administrateurs.Les Namespace Keys se trouvent dans Auth0 Key Management Service et sont chiffrées avec l’algorithme AES256 GCM.
Le service Auth0 Key Management Service génère de façon sécurisée différentes clés de chiffrement de données pour les requêtes ultérieures de chiffrement des données. Le service Auth0 Key Management Service optimise la sécurité et les performances en émettant régulièrement de nouvelles clés de chiffrement de données.Le chiffrement et le déchiffrement des clés de chiffrement de données nécessitent l’accès à la Namespace Key qui leur est attribuée. Les clés de chiffrement de données ne peuvent pas être déchiffrées à l’extérieur du service Auth0 Key Management Service ni par les Key Management Editors.Les clés de chiffrement de données sont stockées à côté des données et sont chiffrées à l’aide de l’algorithme AES256 GCM.