tgoop.com/devopslib/106
Last Update:
🛠️ GitHub Actions: секреты и подводные камни
GitHub Actions сегодня используют все - от пет-проектов до продакшн пайплайнов. Но даже у опытных инженеров часто встречаются ошибки при работе с секретами.
❌ Типичные ошибки:
- Хранение токенов в коде или .env
файлах, которые случайно попадают в репозиторий.
- Вывод секретов в логи (например, через echo).
GitHub заменяет их на ***
, но иногда этого недостаточно.
- Использование одного общего токена для разных окружений (dev, staging, prod).
✅ Лучшие практики:
1. Secrets vs. Environments
Используй Environments с разными наборами секретов для разных стадий. Например: STAGING_DB_PASS
и PROD_DB_PASS
.
2. OIDC вместо токенов
GitHub поддерживает OIDC Federation. Это значит, что пайплайн может получать временные креды от AWS, GCP или Azure без хранения ключей.
3. Проверяй разрешения по умолчанию
В permissions:
указывай минимально необходимые. Например:
permissions:
contents: read
id-token: write
4. Secrets scanning
Включи
secret scanning
и push protection
, чтобы случайно не залить ключи.💡 Маленький трюк:
Если нужно временно отладить пайплайн с секретом - лучше использовать
::add-mask::
в логах, чем echo
.Подпишись 👉@devopslib
BY Библиотека девопса | DevOps, SRE, Sysadmin
Share with your friend now:
tgoop.com/devopslib/106