Kubernetes — работа с секретами
Опубликовано: 18 Февраля, 2023
Секреты Kubernetes — это объекты, которые используются для хранения секретных данных в формате с кодировкой base64. Использование секретов позволяет разработчикам не помещать конфиденциальную информацию в код приложения. Поскольку секреты создаются независимо от модулей, риск раскрытия секретов меньше.
Использование секретов:
- Как файлы в томе, смонтированном в одном или нескольких его контейнерах.
- Как переменная среды контейнера.
- Кубелетом при извлечении изображений для Pod.
Создание секрета:
$ kubectl create secret generic [secret-name] --from-file=[key1]=[file1] --from-file=[key2]=[file2]
Секрет расшифровки:
$ kubectl get secret [secret] -o jsonpath="{.data}"
Приведенный выше вывод показывает закодированные пары ключ-значение.
Декодируйте их с помощью эха и передайте вывод в base64.
$ echo "[encoded-value]" | base64 --decode
Приведенный выше вывод представляет собой декодированный пароль.
Секрет редактирования:
$ kubectl edit secrets <secret-name>
Файл конфигурации при редактировании будет выглядеть так:
Удаление секрета:
$ kubectl delete secret <secret-name>