Aller au contenu

Helm secrets

Introduction

Utilisation des secrets dans les charts helm

Attention

La clés publique (45TGZ78KOED5612DERFVF34SW1222B0WDLKMCBV1) utilisée dans les exmples ci-dessous est un exemple. Vous devez utiliser votre clés publique (voir Secrets OPerationS (SOPS)).

Prérequis

Application

Clés

  • Une clés privée (à mettre dans le fichier privatekey.key)
  • Une clés public
  • Le mot de passe Pour la création des clés (voir Secrets OPerationS (SOPS))

Variable d'environnement

GPG_TTY=$(tty)
export GPG_TTY

La variable GPG_TTY est nécessaire pour saisir le mot de passe lors de l'édition/décryptage du fichier de secrets

Importation de la clés GPG SOPS

cat privatekey.key | gpg --batch --import
gpg --edit-key <clés public>
gpg> trust
    sec  rsa4096/D3A60BBC335F30F1
     created: 2023-08-13  expires: never       usage: SC  
     trust: unknown       validity: unknown
ssb  rsa4096/A824C783A6C19963
     created: 2023-08-13  expires: never       usage: E   
[ unknown] (1). Infra kubernetes GMo <exploit.gmotech@gmail.com>

Please decide how far you trust this user to correctly verify other users' keys
(by looking at passports, checking fingerprints from different sources, etc.)

  1 = I don't know or won't say
  2 = I do NOT trust
  3 = I trust marginally
  4 = I trust fully
  5 = I trust ultimately
  m = back to the main menu

Your decision? 

Taper 5 puis valider

Crypter un fichier

  • Créer le fichier .sops.yaml à la racine de votre chart helm avec le contenu suivant:

    creation_rules:
        - pgp: "45TGZ78KOED5612DERFVF34SW1222B0WDLKMCBV1"
    
  • Fichier à crypter

    echo "password: Top5ecret" > value_secret.yaml
    
  • Crypter le fichier

    sops --encrypt --in-place -p 45TGZ78KOED5612DERFVF34SW1222B0WDLKMCBV1 value_secret.yaml
    
  • Vérifier

    cat value_secret.yaml
    
    password: ENC[AES256_GCM,data:/e+rO0iyEsvY,iv:WQQ8qh31GoClijFW+Z9mjAeR4ylJ18LfXeZmtIOcAJE=,tag:e0P93v9iw8GLyOwz1Pxq/Q==,type:str]
    sops:
    ...
    unencrypted_suffix: _unencrypted
    version: 3.7.3
    

Editer un fichier crypté

helm secrets edit value_secret.yaml

Version Date Change Auteur
1.0 13.08.2023 Création GMo