Système de gestion de clés AWS
Tableau Server dispose de trois options KMS (Key Management System, ou système de gestion de clés) pour activer le cryptage au repos. Deux d’entre elles exigent les capacités Advanced Management, tandis qu’une option locale est disponible avec toutes les installations de Tableau Server.
Important : depuis le 16 septembre 2024, Advanced Management n’est plus disponible en tant qu’option de module complémentaire indépendant. Les fonctionnalités Advanced Management ne sont disponibles que si vous aviez acheté Advanced Management précédemment ou si vous achetez des éditions de licence spécifiques, à savoir Tableau Enterprise (pour Tableau Server ou Tableau Cloud) ou bien Tableau+ (pour Tableau Cloud).
Depuis la version 2019.3, Tableau Server a ajouté ces options KMS :
- KMS local disponible avec toutes les installations. Pour plus d’informations, consultez Système de gestion de clés Tableau Server.
- KMS basé sur AWS qui fait partie du module Advanced Management. Il est décrit ci-dessous.
Depuis la version 2021.1, Tableau Server a ajouté une autre option KMS :
- KMS basé sur Azure qui fait partie du module Advanced Management. Pour plus de détails, consultez Azure Key Vault.
Depuis la version 2019.3, Tableau Server prend en charge le système de gestion de clés AWS (KMS) dans le cadre du module Advanced Management.
AWS KMS pour le cryptage au repos
AWS KMS est disponible dans le cadre du module Advanced Management dans Tableau Server. Pour plus d’informations, consultez À propos de Tableau Advanced Management sur Tableau Server.
Si votre entreprise déploie le cryptage d’extrait de données au repos, vous avez la possibilité de configurer Tableau Server pour utiliser AWS comme KMS pour le cryptage d’extrait. Pour activer AWS KMS, vous devez déployer Tableau Server dans AWS EC2. Dans le scénario AWS, Tableau Server utilise la clé principale du client (CMK) d’AWS KMS pour générer une clé de données AWS(Le lien s’ouvre dans une nouvelle fenêtre). Tableau Server utilise la clé de données AWS comme clé racine principale pour tous les extraits cryptés. Cependant, même lorsqu’il est configuré pour AWS KMS, le keystore Java natif et le KMS local sont toujours utilisés pour le stockage sécurisé des secrets sur Tableau Server. AWS KMS ne sert qu’à crypter la clé racine principale pour les extraits cryptés.
L’utilisation d’AWS pour crypter la clé racine principale offre de meilleures propriétés de sécurité, la clé principale n’étant pas stockée sous les mêmes autorisations que les extraits.
Hiérarchie des clés lorsque Tableau Server est configuré avec AWS KMS
Configurer AWS KMS pour les extraits cryptés Tableau Server
Si vous utilisez la clé principale client (CMK) d’AWS pour crypter la clé racine dans la hiérarchie KMS de Tableau Server, vous devez configurer Tableau Server comme décrit dans cette section.
Avant de démarrer, vérifiez que votre configuration remplit les exigences suivantes :
- Tableau Server doit être déployé dans AWS EC2
- Tableau Server doit être configuré avec Advanced Management. Consultez À propos de Tableau Advanced Management sur Tableau Server.
- Vous devez avoir le contrôle administratif d’une clé principale client (CMK) créée dans AWS Key Management Service
Étape 1 : Créer un CMK et définir une stratégie de clés pour Tableau Server dans AWS
Les procédures suivantes sont exécutées dans le service AWS KMS. Des références à la documentation sur les AWS sont incluses.
- Créez le CMK que vous utiliserez pour Tableau Server. Voir la rubrique AWS, Création de clés(Le lien s’ouvre dans une nouvelle fenêtre).
- Mettez à jour le rôle IAM de l’instance du serveur.
Tableau Server doit pouvoir s’authentifier avec AWS KMS en utilisant le rôle IAM de l’instance. Le rôle doit être assorti d’une stratégie. La stratégie doit donner à l’instance les autorisations d’appeler les actions « GenerateDataKey » et « Decrypt » sur le CMK. Voir Rôles d’IAM pour Amazon EC2(Le lien s’ouvre dans une nouvelle fenêtre).
Dans un déploiement multinœud de Tableau Server, tous les nœuds du serveur doivent être exécutés dans des rôles auxquels cette stratégie (ou équivalent) est associée. Vous pouvez affecter le même rôle à tous les nœuds du cluster.
- Au minimum, le CMK doit avoir une stratégie de clés où
Effect
est défini surAllow
Prinicpal
(rôle IAM associé aux instances du serveur)Action
:GenerateDataKey
etDecrypt
. Voir Utilisation des stratégies de clés dans AWS KMS(Le lien s’ouvre dans une nouvelle fenêtre).
Étape 2 : Collecter les paramètres de configuration AWS
Vous aurez besoin de la chaîne ARN complète d’AWS KMS. Cette chaîne se trouve dans la section « Configuration générale » des pages de gestion d’AWS KMS. L’ARN se présente au format suivant : arn:aws:kms:<region>:<account>:key/<CMK_ID>, par exemple, arn:aws:kms:us-west-2:867530990073:key/1abc23de-fg45-6hij-7k89-1l0mn1234567
.
Vous devrez également spécifier la région AWS, qui est également incluse dans la chaîne ARN. Dans l’exemple ci-dessous, la région est us-west-2
. La région est l’endroit où réside votre instance KMS. Dans l’étape suivante, vous devrez spécifier une région comme indiqué dans la colonne Région de la table Amazon API Gateway(Le lien s’ouvre dans une nouvelle fenêtre).
Étape 3 : Configurer Tableau Server pour AWS KMS
Exécutez la commande suivante sur Tableau Server. Cette commande redémarre le serveur :
tsm security kms set-mode aws --aws-region "<region>" --key-arn "arn:aws:kms:<region>:<account_number>:key/<CMK_ID>"
L’option
--key-arn
effectue une copie directe de la chaîne de caractères de l’ARN dans la section « Configuration générale » des pages de gestion d’AWS KMS.Par exemple, si votre instance AWS KMS s’exécute dans la région us-west-2, que votre numéro de compte est 867530990073, et votre clé CMK 1abc23de-fg45-6hij-7k89-1l0mn1234567, la commande utilisée est :
tsm security kms set-mode aws --aws-region "us-west-2" --key-arn "arn:aws:kms:us-west-2:867530990073:key/1abc23de-fg45-6hij-7k89-1l0mn1234567"
Étape 4 : Activer le cryptage au repos
Consultez Cryptage d’extrait au repos.
Étape 5 : Valider l’installation
Exécutez la commande suivante :
tsm security kms status
Les informations suivantes peuvent être retournées :
- L’ARN (ID) de la clé client principale (CMK)
- La région dans laquelle se trouve la CMK
- L’ID de la clé racine principale (RMK) utilisée. La RMK est une clé cryptée par la CMK. Tableau Server décrypte la clé CMK en faisant des appels à AWS KMS. La RMK est ensuite utilisée pour crypter/décrypter la clé d’extrait principale (MEK). La RMK peut changer, mais il n’y en aura qu’une à la fois.
- KMS stocke une collection de clés d’extraits principales (MEK). Chaque MEK possède :
- Un ID, par exemple, 8ddd70df-be67-4dbf-9c35-1f0aa2421521
- Un état « clé de cryptage ou de décryptage » ou « clé de cryptage uniquement ». Si une clé est « crypter ou décrypter », Tableau Server cryptera les nouvelles données à l’aide de cette clé. Sinon, la clé ne sera utilisée que pour le décryptage
- Un horodatage de création, par exemple, « Date de création : 2019-05-29T23:46:54Z »
- Première transition vers le cryptage ou le décryptage : un horodatage indiquant quand la clé est devenue une clé de cryptage ou de décryptage.
- Transition vers le décryptage uniquement : un horodatage indiquant quand la clé est passée au décryptage seul.
Affichez les journaux après avoir crypté et décrypté les extraits :
Publiez des extraits sur votre site et cryptez-les. Consultez Cryptage d’extrait au repos.
Accédez aux extraits avec Tableau Desktop ou avec la création Web sur un navigateur (ceci décryptera les extraits afin qu’ils puissent être utilisés).
Recherchez les chaînes
AwsKmsEncryptionEnvelopeAccessor
etAwsKmsEncryptionEnvelope
dans les fichiers journaux vizqlserver_node. L’emplacement par défaut des journaux estC:\ProgramData\Tableau\Tableau Server\data\tabsvc\logs
Voici des exemples d’entrée de journal indiquant une configuration réussie :
- A décrypté la RMK avec ID 1abc23de-fg45-6hij-7k89-1l0mn1234567 avec ARN arn:aws:kms:us-west-2:867530990073:key/1234567d-a6ba-451b-adf6-3179911b760f
- Utilisation de RMK avec ID 1abc23de-fg45-6hij-7k89-1l0mn1234567 pour décrypter le magasin KMS
Pour la publication et les actualisations d’extraits associés à KMS, effectuez une recherche dans les journaux des documents d’information. Pour plus d’informations sur les fichiers journaux, consultez Journaux et emplacement des fichiers journaux Tableau Server.
Dépannage de la configuration
Configuration multinœud incorrecte
Dans une configuration multinœud pour AWS KMS, la commande tsm security kms status
peut signaler un état sain (OK), même si un autre nœud du cluster est mal configuré. Le contrôle d’état de KMS ne crée des rapports que sur le nœud sur lequel le processus Contrôleur d’administration Tableau Server s’exécute, sans créer de rapports sur les autres nœuds du cluster. Par défaut, le service Contrôleur d’administration Tableau Server s’exécute sur le nœud initial du cluster.
Par conséquent, si un autre nœud est incorrectement configuré et que Tableau Server ne peut pas accéder à AWS KMS, ces nœuds peuvent signaler des états d’erreur pour divers services, qui ne démarreront pas.
Si certains services ne démarrent pas après que vous avez défini KMS sur le mode AWS, exécutez la commande suivante pour revenir au mode local : tsm security kms set-mode local
.
Actualiser AWS CMK
L’actualisation d’AWS CMK est une tâche que vous effectuez avec AWS. Par défaut, l’AWS CMK est actualisé une fois par an. Voir la rubrique AWS, Fonctionnement de la rotation automatique des clés(Le lien s’ouvre dans une nouvelle fenêtre). Puisque l’ARN et la région ne changent pas, vous n’avez pas besoin de mettre à jour la configuration KMS sur Tableau Server pour les scénarios d’actualisation CMK courants.
Après l’actualisation d’AWS CMK, vous devez régénérer les RMK et MEK internes sur Tableau Server. Vous devez également recrypter tous les extraits avec le nouveau CMK :
- Exécutez la commande
tsm security regenerate-internal-tokens
pour regénérer toutes les clés internes sur Tableau Server, y compris les clés RMK et MEK utilisées pour le cryptage des extraits. - Exécutez
tabcmd reencryptextracts <site-name>
pour recrypter les extraits sur un site donné. Exécutez cette commande sur chaque site où vous stockez des extraits cryptés. Selon le nombre d’extraits cryptés sur le site, cette opération peut faire peser une charge importante sur le serveur. Prévoyez d’effectuer cette opération en dehors des heures d’ouverture. Consultez Cryptage d’extrait au repos.
Regénérer RMK et MEK sur Tableau Server
Pour regénérer la clé racine principale et les clés de cryptage principales sur Tableau Server, exécutez la commande tsm security regenerate-internal-tokens
.
Sauvegarde et restauration avec AWS KMS
Une sauvegarde serveur peut être effectuée en mode AWS sans configuration ni procédure supplémentaire. La sauvegarde contient des copies cryptées des RMK et MEK. Le décryptage des clés nécessite l’accès et le contrôle de l’AWS CMK.
Pour le scénario de restauration, le serveur en cours de restauration peut être dans l’un ou l’autre mode KMS, y compris Local. La seule exigence est que le serveur sur lequel la sauvegarde est restaurée ait décrypté l’accès au CMK utilisé par la sauvegarde elle-même.
Lors de la restauration, les MEK de sauvegarde sont importés en tant que clés de décryptage uniquement. La RMK n’est pas migrée. Un nouveau RMK est généré dans le cadre du processus d’installation/de restauration.