2011-10-19 9 views
6

Mi equipo usa TeamCity para una integración continua. Construirá, probará e implementará aplicaciones web a través del Web Deploy para los servidores web dev y qa. La parte más complicada es la implementación en un servidor web de producción: nuestra política establece que los desarrolladores no pueden implementar en producción, solo un administrador del sistema puede hacerlo.¿Cómo asegurar la implementación de TeamCity a través del servicio Web Deploy?

Nuestro enfoque actual es hacer que TeamCity cree un paquete de implementación web, que el administrador puede descargar e instalar en el servidor web de producción. Sin embargo, nos gustaría permitirles simplemente hacer clic en "Ejecutar" en una configuración de compilación, pero no estamos seguros de cómo proteger ese botón.

Podríamos crear un proyecto de TeamCity al que solo tengan acceso los administradores, pero también tenemos que abordar la seguridad de Web Deploy. El servicio de Web Deploy necesita ser autenticado con una cuenta de administrador local en el servidor de producción. No queremos que los desarrolladores tengan acceso al nombre de usuario/contraseña en una secuencia de comandos de compilación, ni queremos que cada agente de compilación se ejecute como esta cuenta, ya que los desarrolladores pueden crear una compilación que la use para implementarla en producción.

No he tenido mucha suerte para encontrar recursos en las mejores prácticas de seguridad/implementación de TeamCity, pero no puedo imaginar que seamos la única compañía en esta situación. ¿Cómo gestionan otros la seguridad de implementación automatizada?

+2

Tuve mejor suerte en serverfault - http://serverfault.com/questions/323047/how-to-secure-teamcity-deployment-via-web-deploy-service – jrummell

+0

A continuación, puede cerrar esta pregunta desde aquí. – Arpit

Respuesta

1

En primer lugar, la implementación automática en el servidor en vivo no es una buena idea. Las implementaciones deben ser automatizadas hasta la puesta en escena. Si aún desea hacerlo, ez, corto y seguro es utilizar el script Ant. Escriba una secuencia de comandos corta para usar SSH o sftp y se realiza la implementación. Puede crear dos perfiles para su proyecto y agregar un paso adicional en "Crear pasos" para la implementación Pro por administrador.

Cuestiones relacionadas