Membresía temporal al grupo AD

12

Restringimos la ejecución de exe's en toda la organización. Pero según las justificaciones y aprobaciones, agregamos usuarios a grupos de AD (específicos) durante 24 horas.

Actualmente, el proceso de eliminar a los usuarios de esos grupos de AD después de X horas es manual. Estoy tratando de automatizarlo de alguna manera. Pero me preguntaba si hay alguna forma nativa de manejar esto dentro de AD 2003. ¿Escribir un script (powershell / vbs) es la única forma de manejar esto?

Anoop
fuente

Respuestas:

23

Suponiendo que todos sus controladores de dominio sean Windows Server 2003 o posterior, puede hacerlo con la funcionalidad de objetos dinámicos nativos de Active Directory sin ningún script.

Digamos que una cuenta de usuario, "Bob", debe estar en el grupo "Contabilidad" durante 24 horas.

  • Cree un grupo "Bob en contabilidad las 24 horas" y especifique un entry-TTLdurante 24 horas (la duración que desea que el grupo permanezca en Active Directory) en el momento de la creación.

  • Agregue el "Bob en Contabilidad 24 horas" como miembro del grupo "Contabilidad"

  • Agregue la cuenta de usuario "Bob" como miembro del grupo "Bob en contabilidad las 24 horas"

En el próximo inicio de sesión de la cuenta de usuario "Bob", será miembro del grupo "Contabilidad" a través de la membresía del grupo anidado del grupo "Bob en contabilidad 24 horas" en el grupo "Contabilidad". Al final de las 24 horas, todos los controladores de dominio recolectarán basura del grupo "Bob en contabilidad las 24 horas" y "Bob" ya no será miembro de "Contabilidad".

El truco es que los objetos no dinámicos no se pueden convertir a dinámicos después de su creación. Sin embargo, el uso de la anidación de grupo te ayuda a superar esa limitación en esta instancia.

Deberá usar una herramienta que no sea "Usuarios y equipos de Active Directory" para crear el grupo porque deberá configurarlo entry-TTLen el momento de la creación del grupo. El script en esta entrada de blog puede ser un punto de partida (está diseñado para crear objetos de Usuario) o, alternativamente, también podría usar ldifdeo csvdehacer la creación.

Evan Anderson
fuente
55
Santa mierda, eso es algo que no sabía. Y tiene 10 años.
mfinni
1
@mfinni: nunca lo he usado en producción. Sin embargo, funciona exactamente como se anuncia. Bastante ordenado, ¿eh?
Evan Anderson
2
@EvanAnderson Eres un rudo.
Ryan Ries
2
Eres muy amable. Hay algunos antecedentes realmente buenos sobre la función en este blog ( este tipo es realmente un tipo rudo de AD, solo uso el producto mucho): blogs.chrisse.se/2012/11/28/…
Evan Anderson
6

Podría manejar esto de varias maneras, ninguna es nativa de AD:

  1. Escriba un script y póngalo en el programador de tareas. Haga que consulte un archivo de texto o CSV en algún lugar de la red con la lista actual. Haga que elimine a las personas que no están en esa lista en tiempo de ejecución.

  2. Use algo como System Center Orchestrator para crear un runbook para agregar usuarios al grupo y eliminarlos después de X horas automáticamente.

  3. Haga un recordatorio de Outlook para sacar a las personas manualmente :)

MDMarra
fuente
1
FYI: utilizamos el servidor ActiveRoles de Quest para ayudar con la administración de AD. Tiene la capacidad incorporada junto con una pequeña herramienta de flujo de trabajo agregada para ayudar.
uSlackr
Creo que usar la opción 1 y crear un script de PowerShell programado con un archivo de usuarios actuales es una buena manera de resolver esto.
jer.salamon
55
No puedes resistir la canción de sirena de objetos dinámicos ... ¡Objetos dinámicos!
Evan Anderson