niainalens.gcp_secret_manager
ROLA ANSIBLE dla GCP SECRET MANAGER
Pobieranie sekretów z GCP SECRET MANAGER i zapisanie ich w określonych plikach.
Wymagania
- Prawidłowa autoryzacja do swojego konta GCP w odpowiednim projekcie
- Sekrety muszą być przechowywane w GCP Secret Manager
- Włącz API:
Secret Manager (secretmanager.googleapis.com)
$ gcloud services list --available | grep Secret
secretmanager.googleapis.com
$ gcloud services enable secretmanager.googleapis.com
Zmienne Roli
# zmienna "gcp_secrets" musi być zdefiniowana jako słownik
gcp_secrets:
SECRET_NAME_1: # nadaj mu dowolną nazwę, może być taka sama jak 'name'
name: SECRET_NAME_1 # dokładna nazwa w GCP Secret Manager
file_path: "/ŚCIEŻKA/DO/PLIKU/CELOWEGO/SECRET_NAME"
file_owner: UŻYTKOWNIK # może root to użytkownik przechowujący sekrety
file_group: UŻYTKOWNIK # jeśli nie określono, domyślnie jest "file_owner"
file_mode: '0400' # upewnij się, że jest bezpieczny
SECRET_NAME_2:
name: SECRET_NAME_2
file_path: "/ŚCIEŻKA/DO/PLIKU/CELOWEGO/SECRET_NAME"
file_owner: UŻYTKOWNIK
file_mode: '0644'
SECRET_NAME_N:
name: SECRET_NAME_N
file_path: "/ŚCIEŻKA/DO/PLIKU/CELOWEGO/SECRET_NAME"
file_owner: UŻYTKOWNIK
file_mode: '0600'
Zależności
Brak.
Przykładowy Playbook
- hosts: serwery-webowe
vars:
gcp_secrets:
baza_danych:
name: MYSQL_PASSWORD
file_path: "/srv/mysql_pwd"
file_owner: root
file_group: root
file_mode: '0400'
nexus:
name: NEXUS_PASSWORD
file_path: "/srv/nexus_pwd"
file_owner: root
file_mode: '0400'
roles:
- gcp_secret_manager
Co można poprawić
- Zarządzanie sekretami: dodawanie, edytowanie, usuwanie
- Edytowanie właściwości sekretów (wersja, replikacja, lokalizacja, etykiety, IAM)
Licencja
Apache
Informacje o autorze
Stworzone przez Niaina Lens
Wrzesień 2022
O projekcie
Ansible role for GCP Secret Manager
Zainstaluj
ansible-galaxy install niainalens.gcp_secret_manager
Licencja
apache-2.0
Pobrania
2.3k
Właściciel
Lead DevOps Advocate | Cloud | SRE