Pregunta Cómo usar la autenticación de Windows con el contenedor de SQL Server Docker


He analizado todos los ejemplos que pude encontrar en línea para construir aplicaciones basadas en contenedor docker. Me gustaría ejecutar dos servicios que se ejecutan en dos contenedores docker:

  1. Un contenedor de Windows que ejecuta ASP.NET
  2. Un contenedor de Windows que ejecuta SQL Server

Trabajo fácil y muchos ejemplos. Sin embargo, en todos los ejemplos debe usar autenticación SQL y proporcionar una contraseña SA codificada como variable de entorno cuando se ejecuta el contenedor del servidor SQL. También necesita codificar la contraseña de SA en la cadena de conexión en el código ASP.Net (o también proporcionarla de alguna otra manera en un archivo de configuración, etc.)

En resumen, en todos los ejemplos, la contraseña está codificada en algún lugar.

En la mayoría de las aplicaciones que desarrollamos ahora, en realidad usamos la autenticación de Windows o usamos una cuenta de servicio administrado agrupado. Pero hasta donde yo sé, no se puede agregar un contenedor de Windows a un dominio, por lo tanto, el servidor SQL no es parte del dominio de Windows, así que no veo una forma de usar la autenticación de Windows aquí.

Entonces, ¿alguien tiene una alternativa a las contraseñas de codificación dura de esta manera?


9
2017-12-30 15:12


origen


Respuestas:


Estoy tratando exactamente con el mismo problema. aquí es el procedimiento más completo que encontré. El truco es usar gMSA.

Pero, como dice JanneRantala al final, estoy teniendo el mismo problema al intentar agregar un nuevo usuario en la base de datos:

Msg 15401, nivel 16, estado 1, línea 3   No se encuentra el usuario de Windows NT o el grupo 'YOUR_DOMAIN \ gmsa $'. Comprueba el nombre nuevamente


1
2018-01-19 10:53



La autenticación de Windows se habilita automáticamente en los contenedores de Windocks SQL Server. Ver aquí para más detalles. Los contenedores de SQL Server creados en Windocks son instancias SQL Server denominadas creadas automáticamente desde el servicio SQL predeterminado que ya está instalado en el servidor de Windows (2012 R2 o 2016). Todas las cuentas de Windows en la instancia predeterminada se habilitan automáticamente en las instancias del contenedor.


1
2017-12-24 03:03



Aquí hay un tutorial sobre cómo hacer que funcione. Tutorial sobre contenedores de Windows

Sin embargo, esto no funcionará si su SQL también se está ejecutando en contenedor, ya que el servidor SQL debe formar parte de Active Directory para poder utilizar las cuentas GMSA.


0
2018-01-22 19:27