Отдельный ключ для автоматизации вместо общего пароля: токены и их границы
Отдать скрипту пароль, значит записать в файл всё, чем владеет этот человек. Токен, это отдельный ключ: отзывается сам по себе, получает дату окончания и может нести меньше полномочий, чем учётная запись.
AtlasPVE ·
Эта статья отвечает на
- proxmox создать api токен
- proxmox общий пароль для автоматизации
- proxmox права api токена
- proxmox разделение привилегий токена
- proxmox доступ terraform ansible
Скрипт резервного копирования, средство наблюдения или задача развёртывания должны подключаться к системе. Первый порыв, выдать им пароль, и обычно пароль самой полномочной учётной записи. Отсюда и начинаются неприятности.
Что отдаёт выданный пароль
Пароль принадлежит человеку. Отдав его скрипту, вы отдали всё, чем этот человек владеет, к тому же открытым текстом в файле. Когда пароль меняется, автоматизация встаёт, а когда человек уходит, пароль меняют, но о том, что автоматизация на нём держалась, вспоминают обычно в тот же день.
Что делает токен
Токен, это отдельный ключ, привязанный к учётной записи. Он разделяет три вещи: его можно отозвать отдельно, у него может быть своя дата окончания, и раз у него есть имя, понятно, какая задача им пользуется. Возможность выключить одну автоматизацию, не меняя пароль, выглядит мелочью; чем больше становится хозяйство, тем больше именно это выручает.
Настоящий вопрос: что позволено токену
Самая важная настройка токена, несёт ли он полномочия учётной записи как есть. Если несёт, токен так же силён, как его владелец. Если владелец полностью привилегирован, то и токен тоже, и живёт он теперь внутри файла на какой-то машине.
При включённом разделении токен имеет только те полномочия, что выданы самому токену. Скрипту резервного копирования вы даёте ровно столько, сколько нужно для копий, и даже если этот скрипт скомпрометируют, уйдёт только это. По умолчанию выбирайте узкую сторону, а широкую открывайте лишь осознанно.
Секрет показывают один раз
При создании токена вы видите его секрет один раз. Это не каприз интерфейса: система не хранит это значение в читаемом виде. Потеряли, создаёте новый, и это правильное поведение. Если бы его можно было где-то прочитать снова, вот это и было бы настоящей бедой.
Где ключ в итоге живёт
Где лежит ключ, важнее того, насколько он стойкий. Скрипт, попавший в репозиторий, конфигурация, оказавшаяся внутри резервной копии, окно, попавшее на снимок экрана: всё это переносит ключ. Решите, куда он будет записан, прежде чем создавать его.
Дата окончания и обновление
Ключ с датой окончания однажды перестаёт быть риском, даже если о нём никто не заботится. Ключ без даты живёт годами и обычно переживает того, кто его создал. Ставьте пометку на каждый ключ: какая задача им пользуется, кто за него отвечает.
Что делает Atlas
Atlas управляет токенами по каждой учётной записи. При создании отделение полномочий токена от полномочий записи включено по умолчанию: узкая сторона, это отправная точка, а расширение, осознанный шаг. Секрет показывается один раз в момент создания и в панели не хранится. Существующие токены перечислены с пометкой и датой окончания, поэтому вопрос «какая автоматизация на этой машине подключается каким ключом» решается чтением.
Источники
Собственная документация Proxmox. На английском, и последнее слово в этом вопросе за ней.