Как обезопасить развертывание TeamCity через сервис Web Deploy? - PullRequest
6 голосов
/ 19 октября 2011

Моя команда использует TeamCity для непрерывной интеграции. Он будет создавать, тестировать и развертывать веб-приложения через Web Deploy для веб-серверов dev и qa. Сложная часть заключается в развертывании на рабочем веб-сервере - наша политика гласит, что разработчики не могут развертывать на производстве, только системный администратор может.

Наш текущий подход заключается в том, чтобы TeamCity создала пакет веб-развертывания, который администратор может загрузить и установить на рабочем веб-сервере. Тем не менее, мы хотели бы позволить им просто нажать «Выполнить» в конфигурации сборки, но мы не уверены, как защитить эту кнопку.

Мы могли бы создать проект TeamCity, к которому имеют доступ только администраторы, но мы также должны обратиться к безопасности Web Deploy. Служба Web Deploy должна проходить проверку подлинности с локальной учетной записью администратора на рабочем сервере. Мы не хотим, чтобы разработчики имели доступ к имени пользователя / паролю в скрипте сборки, и при этом мы не хотим, чтобы каждый агент сборки работал под этой учетной записью, поскольку разработчики могли создавать сборку, которая использует ее для развертывания в рабочей среде.

Мне не повезло найти ресурсы по рекомендациям по безопасности / развертыванию TeamCity, но я не могу представить, что мы единственная компания в этой ситуации. Как другие управляют безопасностью автоматического развертывания?

1 Ответ

1 голос
/ 23 ноября 2012

Прежде всего, автоматическое развертывание на живом сервере не очень хорошая идея.Развертывания должны быть автоматизированы до постановки.Если вы все еще хотите это сделать, то есть короткий и безопасный способ - использовать Ant-скрипт.Напишите короткий скрипт для использования SSH или sftp, и развертывание завершено.Вы можете создать два профиля для своего проекта и добавить дополнительный шаг в «Шаги сборки» для развертывания Pro администратором.

...