0Pricing
DevOps Bootcamp · Lekcja

Szyfrowanie pojedynczej zmiennej w miejscu

Łączenie zmiennych jawnych i sekretnych.

Szyfrowanie pojedynczej zmiennej w miejscu to bezpłatna lekcja DevOps Bootcamp na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej DevOps Bootcamp, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.

Nie wszystko jest tajne

Czasami jedna wartość w pliku jest wrażliwa, a pozostałe są nieszkodliwe. Szyfrowanie całego pliku wydaje się wtedy przesadą. 🤔

Zaszyfruj tylko jedną zmienną

Vault może zaszyfrować pojedynczą wartość, pozostawiając resztę YAML-a czytelną. Dzięki temu różnice są przejrzyste, a konfigurację można przeglądać.

Polecenie encrypt_string

Użyj ansible-vault encrypt_string, aby przekształcić pojedynczą wartość jawną w zaszyfrowany blok, który można wkleić do dowolnego pliku vars.

ansible-vault encrypt_string 's3cr3t' --name 'db_password'

Co jest wynikiem

Polecenie wyświetla klucz YAML, którego wartość korzysta z tagu !vault, po którym następuje wcięty blok szyfrogramu.

db_password: !vault |
  $ANSIBLE_VAULT;1.1;AES256
  39653764...

Wklej do vars

Skopiuj ten blok bezpośrednio do group_vars lub sekcji vars playbooka, obok zwykłych zmiennych w tekście jawnym.

vars:
  app_user: deploy
  db_password: !vault |
    $ANSIBLE_VAULT;1.1;AES256
    39653764...

Tag !vault

Tag !vault sygnalizuje Ansible, że ta pojedyncza wartość jest zaszyfrowana i przed użyciem musi zostać odszyfrowana.

Używaj jak każdej zmiennej

W czasie wykonywania wartość jest odszyfrowywana w sposób niewidoczny dla użytkownika. Odwołujesz się do niej za pomocą zwykłej składni {{ }}, dokładnie tak jak do jawnej zmiennej.

- name: Set DB password
  debug:
    msg: "{{ db_password }}"

Unikaj tekstu jawnego w wierszu poleceń

Umieszczanie sekretu w historii powłoki jest ryzykowne. Dodaj --stdin-name, aby wprowadzić wartość interaktywnie.

ansible-vault encrypt_string --stdin-name 'db_password'

Inline a cały plik

Szyfrowanie inline sprawdza się przy kilku sekretach wśród publicznej konfiguracji. W przypadku plików, które są w całości tajne, prostsze jest szyfrowanie całego pliku.

W obu przypadkach to samo hasło

Wartości inline używają tego samego hasła Vault co szyfrowanie całego pliku, więc Ansible odszyfrowuje oba rodzaje danych za pomocą jednego hasła podczas każdego uruchomienia.

Diffy pozostają czytelne

Największą zaletą jest to, że tylko wiersz z sekretem zawiera szyfrogram, więc przegląd kodu i polecenie git diff nadal wyraźnie pokazują każdą zmianę niezwiązaną z sekretami.

Szybki test

Chcesz zaszyfrować jedną wartość, pozostawiając resztę pliku vars w formie czytelnej.

Podsumowanie

Za pomocą encrypt_string szyfrujesz jedną wartość do bloku !vault, łącząc sekrety i tekst jawny w tym samym czytelnym pliku. ✨

Często zadawane pytania

Czy lekcja „Szyfrowanie pojedynczej zmiennej w miejscu” jest bezpłatna?

Tak — pełny tekst „Szyfrowanie pojedynczej zmiennej w miejscu” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu DevOps Bootcamp, przejdź na CoddyKit PRO. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.

Co nauczysz się w „Szyfrowanie pojedynczej zmiennej w miejscu”?

Łączenie zmiennych jawnych i sekretnych. Ćwiczysz DevOps Bootcamp z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć DevOps Bootcamp?

Nie wymagamy żadnego doświadczenia. DevOps Bootcamp w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Szyfrowanie pojedynczej zmiennej w miejscu”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji DevOps Bootcamp?

Tak. Każda lekcja DevOps Bootcamp zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Szyfrowanie pliku za pomocą ansible-vault create
  2. Edycja, wyświetlanie i zmiana klucza plików Vault
  3. Szyfrowanie pojedynczej zmiennej w miejscu
  4. Odszyfrowywanie w czasie działania za pomocą --ask-vault-pass
← Powrót do DevOps Bootcamp