Работа со ScanSuite

Аутентификация в Git-репозитории

Как дать платформе доступ к закрытому репозиторию по SSH-ключу.

Чтобы ScanSuite мог клонировать закрытый репозиторий, настройте доступ по SSH-ключу.

Для закрытых репозиториев пока поддерживается только доступ по SSH-ключу.

1. Сгенерируйте SSH-ключ

Создайте новый ключ стандартным инструментом, например ssh-keygen.

Терминал
ssh-keygen -t ed25519 -f ./scansuite_deploy_key -N ""

Не задавайте парольную фразу: ключи с парольной фразой не поддерживаются. Клонирование завершится ошибкой аутентификации, и из сообщения не будет понятно, что дело в парольной фразе.

2. Добавьте открытый ключ на сервер репозитория

Добавьте открытый ключ в свою систему контроля версий:

ПлатформаГде добавить
GitLabSettings → SSH Keys
BitbucketPersonal Settings → SSH Keys
GitHubSettings → SSH and GPG keys или deploy-ключ для конкретного репозитория

ScanSuite нужно только клонировать код. Поэтому лучше создать deploy-ключ с доступом на чтение к одному репозиторию, чем давать ключ личной учётной записи.

3. Добавьте закрытый ключ в настройки команды

Ключ принадлежит команде: с ним клонируются все сканирования команды, в том числе по расписанию, кто бы их ни запустил. Задать ключ могут администраторы и операторы команды:

  1. 01
    Откройте страницу «Команды», вкладку «Сканирование»
  2. 02
    Найдите блок «Ключ SSH для клонирования» в карточке «Доступ к репозиториям»

    Вставьте закрытый SSH-ключ в поле «Закрытый ключ».

  3. 03
    Нажмите «Сохранить»

Вставьте ключ целиком, вместе с первой и последней строкой:

text
-----BEGIN OPENSSH PRIVATE KEY-----
...
-----END OPENSSH PRIVATE KEY-----
Ключ SSH команды для клонирования в ScanSuite
Ключ SSH для клонирования в карточке «Доступ к репозиториям» на вкладке «Сканирование»

Ключ хранится в зашифрованном виде и больше не отображается. Сканирование работает с тем ключом, с которым было запущено, поэтому новый ключ действует только для новых сканирований. Кнопка Удалить удаляет ключ, и сканирования, которые им пользуются, сразу теряют к нему доступ.

При первом подключении к серверу Git сканирование принимает его SSH-ключ узла и запоминает. Если этот ключ потом изменится, клонирование будет отклонено.

В той же карточке «Доступ к репозиториям» задаются сервис Git команды и его API-ключ: по нему ScanSuite читает репозитории и ставит ссылки на строки кода. Личный «API-ключ Git-репозитория» в разделе «Моя учётная запись» нужен только для того, чтобы форма запуска показала список репозиториев проекта Bitbucket. Для клонирования не используется ни тот, ни другой.

4. Укажите репозиторий в формате SSH

На странице Статический анализ кода, на вкладке Git-репозиторий, введите адрес репозитория в SSH-формате:

Терминал
git@mydomain.com:username/reponame.git

Подойдёт и адрес вида ssh://. По такому адресу платформа понимает, что нужно использовать сохранённый ключ. Если вы вводите SSH-адрес, а у команды нет ключа, форма сразу предупредит об этом; сканирование без ключа не запустится.

Проверено: 2026-09-30