Aunque parece haber tres opciones disponibles, una de las cuales es realmente segura, parece que solo hay dos opciones disponibles que podrán afectar a las máquinas que no están encendidas en el momento del cambio o son móviles y no estaban en la red en el momento del cambio Ninguno de los dos parece ser una opción segura. Las tres opciones que conozco son:
- Guiones de inicio con .vbs
- GPO que usa las preferencias de directiva de grupo
- Script de Powershell como una tarea programada.
Descarto la opción Powershell porque no sé cómo apuntar / iterar de manera efectiva, y descartar las máquinas que ya han cambiado, todas las máquinas en la red y el impacto que tendría en la sobrecarga innecesaria de la red, aunque probablemente sea la mejor solución disponible ya que la contraseña en sí misma se puede almacenar en un contenedor CipherSafe.NET (solución de terceros) y la contraseña se pasa al script a la máquina de destino. No he verificado si Powershell puede obtener una contraseña del Credential Manager de una máquina local de Windows para usar en el script o si es posible almacenar una contraseña allí para usar con el script.
La opción de script .vbs no es segura porque la contraseña se almacena en texto sin cifrar en el recurso compartido SYSVOL que está disponible para cualquier máquina de dominio en la red. Cualquiera que busque encontrar una puerta trasera y con un poco de Google encontrará esa puerta si es lo suficientemente persistente.
La opción GPO también es insegura como se señala en esta nota de MSDN: http://code.msdn.microsoft.com/Solution-for-management-of-ae44e789
Estoy buscando una solución que no sea de terceros y creo que debería estar disponible o ser capaz de desarrollarse internamente con el conocimiento u orientación adecuados.
Respuestas:
Voy a seguir adelante y llevar mi comentario a answertown.
Tendrá que ser un tercero. Como ya señaló, ninguna de las tres opciones que menciona son óptimas. Microsoft no proporciona una manera perfecta de hacer esto. Simplemente no hay uno. Será un tercero y seguramente implicará que instales un agente de software en todos tus clientes.
Desarrollé una solución para este problema exacto (excepto que funcionó en muchos bosques y dominios simultáneamente) e involucró VBscript para una máxima compatibilidad con tantas versiones diferentes de Windows como sea posible, así como algunos bits de C #, así como un tercero agente de software para fiestas que, afortunadamente, la compañía ya estaba utilizando para fines de monitoreo y, por lo tanto, ya estaba instalado en cada máquina, que pude aprovechar.
Alternativamente, puede deshabilitar todas las cuentas de administrador locales a través de GPO, que es bastante común. Pero si algo falla con la sincronización de dominio en ese miembro de dominio, la recuperación será más PITA que si tuviera una cuenta de "administrador local" de recuperación.
Editar: Solo para aclarar: estoy confundido cuando dice que "está buscando una solución que no sea de terceros que ... debería poder desarrollarse internamente ..." Consideraría cualquier cosa que no esté escrita por Microsoft como un componente integrado de Windows en este contexto "tercero". ¿Puede hacerlo con un código inteligente que use comunicaciones de red TLS y almacene los secretos en una base de datos de SQL Server con cifrado de datos transparente con alguna función compleja de hash que genera una contraseña única para cada máquina? SI. ¿Está integrado en Windows sin ningún esfuerzo por su parte? NO. :)
fuente
Bueno, para la opción de GPO, el artículo de Microsoft que señaló ( http://code.msdn.microsoft.com/Solution-for-management-of-ae44e789 ) especifica en su documentación (descargue el archivo Documentation.zip) esto:
Especificaciones técnicas detalladas - Gestión de la contraseña de la cuenta de administrador local - página 5
Tal vez la definición del artículo no esté actualizada, por lo que le digo que eche un vistazo a la documentación y tal vez haga algunas pruebas mientras detecta el tráfico, de esa manera puede estar seguro.
fuente