Secrets
На этой странице
Secret - ресурс Kubernetes, который содержит небольшое количество конфиденциальных данных, таких как пароль, токен или ключ. Использование Secret снижает риск раскрытия данных во время рабочего процесса при создании, просмотре и редактировании подов.
Секреты Kubernetes по умолчанию хранятся в незашифрованном виде в базовом хранилище данных сервера API (etcd). Для безопасного использования Secrets, выполняется шифрование при хранении секретов, настройка правил RBAC с доступом к секретам с минимальными привилегиям, ограничение доступа к определенным контейнерам, использование внешних поставщиков секретных хранилищ.
Скриншот
На странице Secrets можно создать, отредактировать, удалить или просмотреть ранее созданные секреты.
Создание Secret
Чтобы создать секрет нажмите на кнопку + Добавить Secret.
В открывшемся окне возможно заполнить:
- имя Secret;
- возможность редактирования. Если вы установите в поле Возможность редактирования значение Нередактируемый, секрет не будет доступен для изменения.
- тип Secret. Когда выбран тип kubernetes.io/service-account-token, необходимо выбрать ServiceAccountName и дополнительно доступно добавление Аннотации;
- добавить лейблы;
- ключи.
Для заполнения текстового ключа нажмите +, в открывшемся модальном окне:
- Если был выбран тип секрета Opaque или kubernetes.io/service-account-token, то введите ключ, значение и нажмите кнопку Добавить.
Скриншот
- Если был выбран тип секрета kubernetes.io/dockercfg или kubernetes.io/dockerconfigjson, загрузите файл Docker config в формате json и нажмите кнопку Добавить.
Скриншот
Пример Docker config
{
"auths": {
"your.private.registry.example.com": {
"username": "janedoe",
"password": "xxxxxxxxxxx",
"email": "jdoe@example.com",
"auth": "c3R...zE2"
}
}
}
где auth = “username:password”, закодированная в base64.
- Если выбран тип секрета kubernetes.io/tls, загрузите файл с сертификатом клиента и файл с ключом клиента, нажмите кнопку Добавить.
Скриншот
- Если выбран тип секрета kubernetes.io/ssh-auth, загрузите файл ключа пользователя для подключения по SSH и нажмите кнопку Добавить.
Скриншот
- Если выбран тип секрета kubernetes.io/basic-auth, укажите имя и пароль в ключе, нажмите кнопку Добавить.
Скриншот
- Если выбран тип bootstrap.kubernetes.io/token, доступно к заполнению:
- auth-extra-groups. Список имен групп, которые должны быть аутентифицированы дополнительно к группе system:bootstrappers.
- expiration - окончание периода действия токена.
- token-id - идентификатор токена.
- token-secret - секрет токена.
- usage-bootstrap-authentication - флаг использования токена для аутентификации.
- usage-bootstrap-signing - флаг использования токена для подписания.
Скриншот
После завершения создания секрета нажмите кнопку Сохранить.
Просмотр и редактирование Secret
На странице просмотра доступны вкладки:
- Secret
- Лейблы и аннотации
- Манифест
Если при создании Secret в поле Возможность редактирования было установлен Нередактируемый, секрет доступен только для просмотра.
Если при создании было выбрано Редактируемый или Не задано, к редактированию доступны:
- возможность редактирования;
- тип Secret.
- дополнительные поля в зависимости от типа созданного Secret;
- добавление лейблов и аннотаций;
- ключи.
Чтобы изменить Secret с помощью YAML манифеста, перейдите на вкладку Манифест. Манифест не будет доступен к редактированию, если его тип “Нередактируемый”. После внесения изменений в манифест выполните проверку. Результат проверки будет доступен в правой части экрана. Раскройте блок результата проверки, чтобы увидеть полный манифест. Если валидация формата манифеста Issuer не пройдена, недоступна проверка манифеста.
Скриншот
Сохраните изменения, внесенные в манифест. Несохраненные данные не будут применены.