На всякий случай - для тех кого донимают безопасники, дескать нельзя использовать Vanessa.Services и вообще DMZ это круто
Смотрите:
Теперь по пунктам:
Архитектура SonarQube как платформы очень простая
• Есть запускатель анализа исходников и авторов строк – это называется «Сканер»
• Есть анализатор результата анализа – это называется «Сервер анализа»
Пересылка от сканера на сервера анализа происходит на стороне сканера – пока сканер ничего не пошлет, анализ не поедет.
Сканер – находится «ближе к исходникам» то есть на вашей стороне
Сервер с активированной поддержкой 1С находится на нашей стороне
Данные на сервере лежат в двух источниках
• Объектная структура кода в ElasticSearch
• Замечания и показатели качества в PostgreSQL.Pro базе данных
Исходный код в текстовом представлении не хранится в принципе – он на сервере лежит в спецформате для удобного полнотекстового поиска.
Для безопасников будет важно что передается между сканером и сервером, это файл заархированный и зашифрован, представляющий собой Java поток. Исходники формата и «движок» передачи опубликованы тут https://github.com/SonarSource/sonarqube/tree/master/sonar-scanner-protocol/src/main
Для передачи используется на самом деле это protobuf https://github.com/SonarSource/sonarqube/tree/master/sonar-scanner-protocol/src/main/protobuf
Подобная архитектура защищает
- от утекания исходников - GIT репозиторий остается на стороне компании
- от атаки “посредине” - совместные протоколы VPN и HTTPS нужно еще попытаться взломать или скопроментировать одновременно
Важный момент с HTTP прокси
- открываются только запросы на адрес https://sonar.sec.silverbulleters.org/
- соединения разрешены только по 443 порту
- включается автоматическая проверка сертификатов в удостоверяющем центре
такое умеет и NGINX и HAproxy и Squid и Windows Proxy - то есть это как бы штатная функциональность
P.S. Если “бодаетесь” с безопасниками - используйте данную информацию и архитектуру.