Befristete Mitgliedschaft in der AD-Gruppe


12

Wir beschränken die Ausführung von Exes in der gesamten Organisation. Aber basierend auf Rechtfertigungen und Genehmigungen fügen wir Benutzer für 24 Stunden (bestimmten) AD-Gruppen hinzu.

Derzeit erfolgt das Entfernen der Benutzer aus diesen AD-Gruppen nach X Stunden manuell. Ich versuche es auf irgendeine Weise zu automatisieren. Aber ich habe mich gefragt, ob es eine native Möglichkeit gibt, dies in AD 2003 zu handhaben. Ist das Schreiben eines Skripts (Powershell / VBS) die einzige Möglichkeit, dies zu handhaben?

Antworten:


23

Angenommen, alle Domänencontroller sind Windows Server 2003 oder höher, können Sie dies mit der Funktionalität für dynamische Objekte von Active Directory ohne Skripterstellung tun .

Angenommen, ein Benutzerkonto "Bob" muss sich 24 Stunden lang in der Gruppe "Buchhaltung" befinden.

  • Erstellen Sie eine Gruppe "Bob in Accounting 24 Hours" und geben Sie eine entry-TTLfür 24 Stunden (die Dauer, für die die Gruppe im Active Directory verbleiben soll) zum Zeitpunkt der Erstellung an.

  • Fügen Sie "Bob in Accounting 24 Hours" als Mitglied der Gruppe "Accounting" hinzu

  • Fügen Sie das Benutzerkonto "Bob" als Mitglied der Gruppe "Bob in Accounting 24 Hours" hinzu

Bei der nächsten Anmeldung des Benutzerkontos "Bob" wird es Mitglied der Gruppe "Buchhaltung", und zwar über die verschachtelte Gruppenmitgliedschaft der Gruppe "Bob in Buchhaltung 24 Stunden" in der Gruppe "Buchhaltung". Nach Ablauf von 24 Stunden sammeln alle Domänencontroller die Gruppe "Bob in Accounting 24 Hours" und "Bob" ist nicht mehr Mitglied von "Accounting".

Der Trick besteht darin, dass nicht dynamische Objekte nach ihrer Erstellung nicht in dynamische Objekte konvertiert werden können. Mit der Gruppenverschachtelung können Sie diese Einschränkung jedoch in diesem Fall umgehen.

Sie müssen zum Erstellen der Gruppe ein anderes Tool als "Active Directory-Benutzer und -Computer" verwenden, da Sie das entry-TTLzum Zeitpunkt der Gruppenerstellung festlegen müssen . Das Skript in diesem Blogeintrag kann ein Startpunkt sein (es wurde zum Erstellen von Benutzerobjekten erstellt), oder Sie können auch einfach das Erstellen verwenden ldifdeoder csvdeausführen.


5
Heiliger Mist, das wusste ich nicht. Und es ist 10 Jahre alt.
Mfinni

1
@mfinni - Ich habe es noch nie in der Produktion verwendet. Es funktioniert jedoch genau wie angekündigt. Ziemlich ordentlich, was?
Evan Anderson


2
@EvanAnderson Du bist ein Arschloch.
Ryan Ries

2
Sie sind alle zu nett. Es gibt einige wirklich gute Hintergrundinformationen zu diesem Feature in diesem Blog ( dieser Typ ist wirklich ein AD-Badass - ich benutze das Produkt nur häufig): blogs.chrisse.se/2012/11/28/…
Evan Anderson

6

Sie können dies auf verschiedene Arten handhaben, keine stammt ursprünglich aus AD:

  1. Schreiben Sie ein Skript und fügen Sie es in den Taskplaner ein. Lassen Sie es eine Textdatei oder CSV mit der aktuellen Liste irgendwo im Netzwerk abfragen. Lassen Sie es zur Laufzeit Personen entfernen, die nicht auf dieser Liste stehen.

  2. Verwenden Sie so etwas wie System Center Orchestrator, um ein Runbook zu erstellen, mit dem Benutzer zur Gruppe hinzugefügt und nach X Stunden automatisch entfernt werden können.

  3. Erinnern Sie Outlook daran, Personen manuell auszuschalten :)


1
Zu Ihrer Information: Wir verwenden den ActiveRoles-Server von Quest, um die AD-Verwaltung zu unterstützen. Es verfügt über eine integrierte Funktion und ein kleines Workflow-Tool, das als Unterstützung hinzugefügt wurde.
USlackr

Ich denke, dass die Verwendung von Option 1 und das Erstellen eines geplanten PowerShell-Skripts mit einer Datei aktueller Benutzer eine gute Möglichkeit ist, dies zu lösen.
jer.salamon

5
Sie können dem Sirenengesang dynamischer Objekte nicht widerstehen ... Dynamische Objekte!
Evan Anderson
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.