tutter
Goto Top

AD User wechsel Gruppe automatisch nach Datum

Hallo an alle ich suche eine Möglichkeit eine User zu einem Stichtag automatisch die Gruppe wechseln zu lassen im AD. Das möchte ich natürlich vorher schon definieren können (soll ja eine Arbeitserleichterung sein *G*)

kann mir hier jemand helfen?

Content-ID: 262010

Url: https://administrator.de/contentid/262010

Ausgedruckt am: 23.11.2024 um 01:11 Uhr

Helmut.G
Lösung Helmut.G 02.02.2015 aktualisiert um 12:44:44 Uhr
Goto Top
Abhängig von der Serverumgebung kannst du das über ein PowerShell Script machen und dieses über einen Scheduled Task zeitgesteuert starten. Ich habe das noch nie gemacht, wäre aber meine erste Idee und Suchrichtung dazu.

Hier ein passender Arktikel, den ich auf die schnelle gefunden habe:
https://4sysops.com/archives/move-active-directory-users-to-a-group-with ...

Nachtrag:
wenn es dir um "Arbeitserleichterung" und "Zeit sparen" geht, bist du bei einem einzelnen User schneller, wenn du es von Hand machst. Obwohl mich das jetzt auch interessiert.... so nach dem Motto, ich mache es, weil ich es kann face-smile PowerShell ist ein sehr sehr mächtiges Werkzeug!
Tutter
Tutter 02.02.2015 um 12:49:14 Uhr
Goto Top
mir wäre es lieber wenn ich es mit Datenbanken machen könnte. Sprich der MS-SQL Server ließt es aus und schreibt es in geänderter Form wieder ins AD. Geht das ? hat das schon mal jemand getestet?
Helmut.G
Helmut.G 02.02.2015 um 13:00:20 Uhr
Goto Top
Das AD ist keine SQL-DatenBank, daher kann ein SQL-Server diese Daten weder lesen noch schreiben.
colinardo
colinardo 02.02.2015 aktualisiert um 13:51:58 Uhr
Goto Top
Hallo Tutter,
Zitat von @Tutter:
mir wäre es lieber wenn ich es mit Datenbanken machen könnte. Sprich der MS-SQL Server ließt es aus und schreibt
es in geänderter Form wieder ins AD. Geht das ? hat das schon mal jemand getestet?
Das lässt problemlos mit Powershell realisieren
  • Verbindung zum SQL-Server aufbauen und deine SQL-Query absetzen
  • Mit den Daten aus der DB die User den Gruppen hinzufügen oder entfernen
  • feddich

Eine Powershell-Verbindung zu einem SQL-Server geht z.B. so:
function Get-SQLTableContents($query,$server,$database,$username,$password){
    $conn = new-object System.Data.SqlClient.SqlConnection
    $conn.ConnectionString = "Server=$server;Database=$database;Integrated Security=False;UID=$username;PWD=$password"  
        try{
            $conn.Open()
            $cmd = $conn.CreateCommand()
            $cmd.CommandText = $query
            $cmd.Connection = $conn

            $SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
            $SqlAdapter.SelectCommand = $cmd
            $dt = New-Object System.Data.DataTable
            $SqlAdapter.Fill($dt) | out-null
            $conn.close()
            return $dt
        }
        catch{
            echo "Fehler: $($_.Exception.Message)"  
            $conn.close()
            return $false
        }
}

$data = Get-SQLTableContents "Select * from TestTable" "DBSERVER" "TestDB" "sqluser" "Passw0rd"  
$data
Die zurückgegebenen Daten lassen sich dann an Add-ADGroupMember bzw. Remove-AdGroupMember verfüttern. Et Voila ...

Grüße Uwe