Comment obtenir un secret décodé dans Kubernetes

Comment Obtenir Un Secret Decode Dans Kubernetes



Kubernetes est un système de déploiement de conteneurs open source qui exécute des applications conteneurisées au sein du cluster Kubernetes. Dans le déploiement d'applications, les secrets sont l'une des ressources essentielles de Kubernetes. Il est utilisé pour stocker des informations critiques ou confidentielles telles que des noms d'utilisateur et des mots de passe, des clés API, des certificats ou des jetons. Cela évite à l'utilisateur de fournir des informations critiques dans le code. Le secret Kubernetes ne stocke pas les données directement, il transforme d'abord les données sous une autre forme, puis les stocke dans la ressource Kubernetes.

Cet article illustrera :

Comment créer un secret Kubernetes ?

Différents types de secrets existent dans Kubernetes : le secret générique est utilisé pour stocker des informations génériques telles que les informations d'identification de l'utilisateur et les jetons, le secret TLS est utilisé pour stocker le certificat et la clé tls, et le secret du registre Docker stocke les informations de connexion Docker.







Pour la démonstration, nous allons créer un secret générique pour stocker le nom d'utilisateur et le mot de passe dans les instructions ci-dessous.



Étape 1 : Démarrer le cluster

Tout d’abord, démarrez le cluster Kubernetes. Pour ce faire, utilisez simplement le « démarrage du minikube ' commande:



démarrage du minikube -p multinœud

Dans la commande ci-dessus, nous démarrons notre cluster minikube multi-nœuds :





Étape 2 : Créer un fichier d'informations d'identification

Ensuite, créez deux fichiers texte nommés « username.txt » et « password.txt » pour enregistrer respectivement le nom d'utilisateur et le mot de passe.



Étape 3 : Créer un secret

Ensuite, accédez au répertoire dans lequel vous avez créé les fichiers d'informations d'identification :

CD C:\Utilisateurs\Dell\Documents\Kubernetes\Secret

Créez un nouveau secret en utilisant le ' kubectl crée un secret ' commande. Ici le ' –à partir du fichier ' L'option est utilisée pour enregistrer les données secrètes du fichier :

kubectl crée un secret de démonstration générique --à partir du fichier = nom d'utilisateur =nom d'utilisateur.txt --à partir du fichier = mot de passe =mot de passe.txt

Étape 4 : Obtenez le secret

Pour vérification, répertoriez le secret à l'aide de la commande ci-dessous

Kubectl devient secret

Le résultat indique qu'un nouveau secret a été créé avec succès :

Comment obtenir un secret décodé dans Kubernetes ?

Parfois, les utilisateurs peuvent être amenés à consulter les informations secrètes pour différentes raisons, par exemple à des fins de débogage, pour consulter les informations d'identification à des fins de confirmation, etc. Pour obtenir le secret décodé dans Kubernetes, suivez la démonstration ci-dessous.

Étape 1 : Décrire le secret

Le ' Kubectl décrit » affiche le résumé détaillé de la ressource kubernetes. Pour afficher les détails secrets, utilisez le ' kubectl décrit le secret ' commande:

kubectl décrit le secret de démonstration

Ici, la commande ci-dessus affiche la taille des données secrètes uniquement en octets mais n'expose pas les informations secrètes comme indiqué ci-dessous :

Étape 2 : Obtenez des données secrètes au format Json

Pour obtenir les données secrètes au format json, utilisez la commande ci-dessous :

kubectl obtient un secret de démonstration secret -O jsonpath = '{.données}'

Le résultat ci-dessous montre les données secrètes codées en base64 :

Pour afficher le secret, l'utilisateur doit le décoder. Pour décoder le secret de base64 sous sa forme réelle, l'utilisateur doit disposer d'un terminal bash pour exécuter la commande bash. Pour installer le terminal bash, suivez les instructions « Ajouter Git Bash au terminal Windows ' article.

Étape 3 : Décoder le secret

Pour décoder le secret, lancez d’abord le terminal « git bash ». Après cela, exécutez le ' echo | base64 – décoder ' commande. Cette commande peut être directement exécutée sur les terminaux Linux et Mac :

écho 'TGludXhoaW50' | base64 --décoder

Ici, nous avons décodé le nom d'utilisateur :

Pour décoder le mot de passe, utilisez le « echo | base64 – décoder ' commande:

écho 'TGludXhoaW50QDEyMw==' | base64 --décoder

Comment obtenir un secret décodé à l’aide du package View-Secret ?

Les utilisateurs de Kubernetes peuvent décoder le secret à l'aide de différents packages et du « vue-secret ' Le package est l'un d'entre eux qui peut être installé et facilement utilisé via l'un des plugins pris en charge par Kubernetes ' Sang ». Pour installer et utiliser le «  vue-secret ', suivez la démonstration ci-dessous :

Prérequis : installer le plugin Krew

Le plugin Krew est l'un des plugins Kubernetes qui peuvent être utilisés pour installer différents packages afin de fournir des fonctionnalités supplémentaires aux ressources Kubernetes. Pour installer le krew sur le système, suivez les étapes ci-dessous.

Étape 1 : Téléchargez le fichier « krew.exe »

Tout d’abord, accédez aux versions officielles de Krew. page et téléchargez le fichier « krew.exe » :

—————————————————————————————————————————-

Par défaut, krew sera téléchargé dans le dossier « Téléchargements ' dossier:

Étape 2 : lancez l’invite de commande

Ouvrez l'invite de commande avec les droits d'administrateur via le bouton ' Démarrer ' menu:

Étape 3 : Installer Krew

Accédez au répertoire où se trouve le « sang.exe ' Le fichier est téléchargé :

CD C:\Utilisateurs\Dell\Téléchargements

Ensuite, utilisez la commande ci-dessous pour installer krew sur Windows :

.\sang installer sang

La commande ci-dessus installera le krew dans le répertoire utilisateur « C:\Utilisateurs\\.crew\bin » :

Étape 4 : ajouter Krew au chemin Windows

Pour accéder aux commandes Krew à partir de la ligne de commande Windows, les utilisateurs doivent ajouter krew dans le chemin Windows. Pour ce faire, recherchez « Variable d'environnement ' dans le menu Démarrer et lancez les paramètres mis en évidence ci-dessous :

Du ' Avancé ', ouvrez les paramètres 'Variables d'environnement' :

Sélectionnez le ' Chemin ' variable et appuyez sur la touche ' Modifier ' bouton:

Appuie sur le ' Nouveau ' pour ajouter un chemin, collez le ' C:\Utilisateurs\\.crew\bin » et appuyez sur le bouton « OK » :

Étape 5 : Vérification

Maintenant, fermez tous les terminaux Windows et lancez l'invite de commande ou PowerShell. Ensuite, exécutez la commande ci-dessous pour vérifier si krew est installé ou non :

sang de Kubectl

Le résultat montre que nous avons installé avec succès krew sur le système :

Décodez le secret Kubernetes à l'aide du package View-Secret

Pour décoder le secret à l'aide du package view-secret, installez d'abord le secret à l'aide de krew. Après cela, utilisez le ' kubectl view-secret » commande pour décoder le secret. À titre d’illustration, regardez les étapes ci-dessous.

Étape 1 : Installer le package View-Secret

Pour installer le package view-secret, utilisez le plugin Kubectl krew comme indiqué ci-dessous :

sang de Kubectl installer vue-secret

Vous pouvez voir que nous avons installé le package view-secret. Ignorez également l'avertissement ci-dessous :

Étape 2 : Afficher le secret de Kubernetes

Ensuite, pour afficher le secret décodé de Kubernetes, utilisez le «  kubectl view-secret ' commande:

kubectl view-secret démo-secret

Ici, la sortie montre que le secret actuel contient deux variables. Pour afficher la valeur décodée, l'utilisateur doit également spécifier le nom de la variable dans la commande :

Étape 3 : Décoder le secret

Pour décoder la valeur secrète, utilisez le ' kubectl view-secret ' commande:

kubectl view-secret nom d'utilisateur démo-secret

Ici, nous avons décodé le nom d'utilisateur :

En changeant le nom de la variable dans la commande ci-dessus, nous avons accédé au mot de passe comme indiqué ci-dessous :

mot de passe secret de démonstration kubectl view-secret

Il s’agit d’obtenir un secret décodé dans Kubernetes.

Conclusion

Pour obtenir le secret décodé dans Kubernetes, accédez d'abord aux données secrètes au format json via la commande « kubectl get secret ». Cette commande affichera les données secrètes codées en base64. Pour décoder les données, utilisez le ' echo | base64 – décoder ' commande. Alternativement, l'utilisateur peut visualiser le secret décodé en utilisant le package « view-secret ». Ce blog a illustré comment obtenir des secrets décodés dans Kubernetes.