
Сканер секретов на основе Git-хуков, который обнаруживает токены, пароли и приватные ключи в исходящих наборах изменений, предотвращая попадание конфиденциальных данных в коммиты или пуши в репозитории.
Инструмент для обнаружения и предотвращения попадания секретов в репозиторий
Talisman — это инструмент, который проверяет наборы изменений git, чтобы гарантировать, что потенциальные секреты или конфиденциальная информация не покидают рабочую станцию разработчика.
Он проверяет исходящие изменения на предмет подозрительного содержимого, такого как потенциальные SSH-ключи, токены авторизации, закрытые ключи и т.д.
Talisman поддерживает MAC OSX, Linux и Windows.
Talisman может быть установлен и использован одним из следующих способов:
Talisman можно настроить как pre-commit или pre-push хук в git-репозиториях.
Инструкции приведены ниже.
Отказ от ответственности: Talisman не может обнаружить секреты, попадающие в git-репозиторий через принудительный push. Принудительный push считается вредоносным действием, и мы рекомендуем администраторам git-репозиториев применять соответствующие меры для авторизации таких действий.
Мы рекомендуем установить talisman в PATH, чтобы он был доступен для
фреймворков хуков git и скриптов. Выберите правильный двоичный файл для вашей системы на
нашей странице релизов или запустите
наш скрипт установки:```bash
bash -c "$(curl --silent https://raw.githubusercontent.com/thoughtworks/talisman/main/install.sh)"
Или установите переменную окружения `INSTALL_LOCATION`, чтобы указать собственное расположение для бинарного файла:```bash
INSTALL_LOCATION=/usr/local/bin bash -c "$(curl --silent https://raw.githubusercontent.com/thoughtworks/talisman/main/install.sh)"
Или установите переменную окружения VERSION на тег релиза, чтобы установить конкретную версию::```bash
VERSION=v1.36.0 bash -c "$(curl --silent https://raw.githubusercontent.com/thoughtworks/talisman/main/install.sh)"
Или используя linuxbrew в Linux и homebrew в macOS, выполнив следующую команду в терминале:```bash
brew install talisman
Мы предлагаем скрипты, которые установят Talisman в качестве шаблона хука git pre-commit, так как это обеспечит присутствие Talisman не только в ваших существующих git-репозиториях, но и в любом новом репозитории, который вы инициализируете ('init') или клонируете ('clone').
В качестве хука pre-commit: ``` bash -c "$(curl --silent https://raw.githubusercontent.com/thoughtworks/talisman/main/global_install_scripts/install.bash)"
ИЛИ
В качестве pre-push hook: ```
bash -c "$(curl --silent https://raw.githubusercontent.com/thoughtworks/talisman/main/global_install_scripts/install.bash)" -- pre-push
$PATH, вас попросят указать подходящее место для её настройки. Выберите номер опции, где вы указываете источник профиля на вашей машине.Помните, что нужно выполнить source для файла пути или перезапустить терминал.
Если вы решите настроить $PATH позже, экспортируйте TALISMAN_HOME=$HOME/.talisman/bin в путь.
Глобальная установка talisman в качестве хука не перезапишет существующие хуки. Если скрипт установки обнаружит существующие хуки, он только сообщит об этом в консоли. Для запуска нескольких хуков мы рекомендуем использовать фреймворк хуков, такой как pre-commit или husky. Эти инструкции предполагают, что исполняемый файл talisman установлен где-то в вашем системном пути.
Используйте pre-commit для управления существующими хуками вместе с
Talisman. Ссылайтесь на наш pre-commit-hooks в вашем
.pre-commit-config.yaml:```yaml
### Husky
[husky](https://typicode.github.io/husky) — это npm-модуль для управления хуками.
Добавьте следующую строку в конфигурацию pre-commit husky в вашем
`package.json`:```
talisman --githook pre-commit