Utiliser le chiffrement des secrets toujours activé

Anthos Clusters on VMware (GKE On-Prem) version 1.10 accepte le chiffrement des secrets sans nécessiter de service de gestion des clés externe ni d'autres dépendances. L'algorithme de chiffrement est A256GCM (AES GCM utilise une clé 256 bits).

Activer le chiffrement des secrets toujours activé

Le chiffrement des secrets permanents consiste à générer automatiquement une clé de chiffrement à utiliser avant de stocker les secrets dans la base de données etcd pour ce cluster.

La version de clé est un nombre qui indique la clé actuellement utilisée.

Vous pouvez activer le chiffrement des secrets une fois qu'un cluster a été créé.

  • Pour le cluster d'administrateur :

    1. Modifiez le fichier de configuration du cluster d'administrateur pour ajouter la section secretsEncryption.

    2. Exécutez la commande gkectl update.

      gkectl update admin --config ADMIN_CLUSTER_CONFIG_FILE --kubeconfig ADMIN_CLUSTER_KUBECONFIG
  • Pour un cluster d'utilisateur :

    1. Modifiez le fichier de configuration du cluster d'utilisateur pour ajouter la section secretsEncryption.

    2. Exécutez la commande gkectl update.

      gkectl update cluster --config USER_CONFIG_FILE --kubeconfig ADMIN_CLUSTER_KUBECONFIG

Remplacez les éléments suivants :

  • ADMIN_KUBECONFIG par le chemin d'accès au fichier kubeconfig du cluster d'administrateur.
  • ADMIN_CLUSTER_CONFIG par le chemin d'accès au fichier de configuration du cluster d'administrateur.
  • USER_CLUSTER_CONFIG est le chemin d'accès au fichier de configuration du cluster d'utilisateur.

Les commandes gkectl update fournies dans cette section peuvent également être utilisées pour toute autre mise à jour du cluster correspondant.

Le stockage des clés

Les clés de chiffrement du cluster d'administrateur sont stockées sur le disque de données de celui-ci. Ce disque est installé sur le système maître administrateur à l'adresse /opt/data et les clés de chiffrement se trouvent à l'adresse /opt/data/gke-k8s-kms-plugin/generatedkeys/. Ces clés doivent être sauvegardées afin de conserver l'accès aux secrets chiffrés utilisés par cette clé.

Rotation des clés

Pour effectuer la rotation d'une clé de chiffrement existante sur un cluster, incrémentez keyVersion dans le fichier de configuration du cluster d'administrateur ouFichier de configuration de cluster d'utilisateur correspondant, puis exécutez la commande gkectl update appropriée. Cette opération crée une clé correspondant au nouveau numéro de version, rechiffre chaque secret et efface l'ancien. Tous les nouveaux secrets sont chiffrés à l'aide de la nouvelle clé de chiffrement.

Désactiver le chiffrement permanent des secrets

Pour désactiver le chiffrement des secrets sur un cluster existant, supprimez le champ keyVersion et ajoutez un champ disabled: true. Exécutez ensuite la commande gkectl update correspondante. Cette mise à jour déchiffre chaque secret existant et les stocke en texte brut. Tous les nouveaux secrets sont stockés en texte brut.

secretsEncryption:
  mode: GeneratedKey
  generatedKey:
    disabled: true