Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Bulk User Import aus CSV Datei

Mitglied: ivaylo53

ivaylo53 (Level 1) - Jetzt verbinden

07.04.2014 um 14:24 Uhr, 1332 Aufrufe, 3 Kommentare

Hallo an die Community,

ich habe ein Script geschrieben um anhand einer CSV Datei Bulk User in die AD zu Importieren. Die CSV Datei erfrage ich alle 15 min von einer SQL Datenbank und muss jetzt mein Script so erweitern das User die nicht mehr in der CSV sind auch in der AD gelöscht werden.

Die CSV sieht so aus.................

"ID","Anrede","nachname","vorname","benutzername","gruppe","von","bis","Dom"
"26","herr","Werner","Timo","Werner.Timo","Schüler","2001-11-11","2017-05-17","WI-IT"

Mein Code für die löschung sieht so aus............

$us = Get-ADUser -Filter * -Properties Description | foreach {$_.Description}
if ($us -ne $id)
{
Set-ADUser -Identity $SamAccName -Enabled:$false
}

Der Wert ID wird in AD unter Description gespeichert. CSV ID = PS $id. Habe auch (-eq) Versucht, doch da setzt er gar keinen auf INAKTIV.


Mein Problem ist jetzt, wenn ich den Code durchlaufen lasse setzt er jeden User auf INAKTIV, nur den User den es nicht mehr gibt bleibt AKTIV!

Hätte jemand einen Vorschlag für mich wie ich dieses Problem beheben kann?
Mitglied: colinardo
07.04.2014, aktualisiert um 17:35 Uhr
Hallo ivaylo53, Willkommen im Forum!
Ich würde das in deinem Fall so lösen, dass ich mir erst zwei Objekte erstelle. Das eine enthält alle aktuellen User im AD und das andere enthält alle User deiner CSV-Datei. Diese zwei Objekte werden dann mit Compare-Object miteinander verglichen und nur die User welche sich nur im AD befinden und nicht in der CSV-Datei, gelöscht. Das sieht dann grob so aus:
01.
# Alle SamAccountNamen der AD User holen 
02.
$allADUsers = Get-ADUser -Filter * | %{$_.SamAccountName} 
03.
 
04.
# Alle SamAccountNamen der CSV-User holen 
05.
$allCSVUsers = import-csv "C:\bulkUsers.csv" -delimiter "," | %{$_.benutzername} 
06.
 
07.
# Beide Objekte vergleichen und entsprechende User löschen 
08.
Compare $allADUsers $allCSVUsers -PassThru | ?{$_.SideIndicator -eq "<="} | %{Remove-ADUser -Identity $_ -Confirm:$false}
Grüße Uwe
Bitte warten ..
Mitglied: ivaylo53
07.04.2014 um 23:10 Uhr
Hallo colinardo,

danke für die schnelle Antwort. Könntest du mir dieses Script genau erklären zb. für was die %, ? und das $_ am ende stehen. -eq "<=", womit vergleichst du das?

Remove-ADUser : Unter "DC=daa,DC=local" kann kein Objekt mit der ID "43" gefunden werden.
In Zeile:5 Zeichen:84
+ ... -eq "<="} | %{Remove-ADUser -Identity $_}
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (43:ADUser) [Remove-ADUser], ADIdentityNotFoundException
+ FullyQualifiedErrorId : ActiveDirectoryCmdlet:Microsoft.ActiveDirectory.Management.ADIdentityNotFoundException,Microsoft.ActiveDirectory.Management.Commands.RemoveADUser

Das ist die fehler Meldung, die beim ausführen erscheint.........
Bitte warten ..
Mitglied: colinardo
08.04.2014, aktualisiert um 01:11 Uhr
Zitat von ivaylo53:
danke für die schnelle Antwort. Könntest du mir dieses Script genau erklären
habe ich doch eigentlich schon ziemlich genau erläutert ...
zb. für was die %, ? und das $_
%{} entspricht dem Foreach-Object
?{} entspricht dem where-object
$_ ist das Objekt in der Pipeline, das nutzt du doch oben bei dir auch ... Powershell-Grundlagen

am ende stehen. -eq "<=", womit vergleichst du das?
compare vergleicht den Inhalt beider Objekte, also jeweils alle Usernamen(SamAccountName), es gibt dabei nur die Unterschiede aus d.h. ob ein Usernamen nur auf der einen oder anderen Seite existiert. Hierbei filtere ich nur die User raus die nur auf AD-Seite existieren, welche dann gelöscht werden sollten.

Das ist die fehler Meldung, die beim ausführen erscheint.........
Da stimmt dann vermutlich noch ein Spaltenname bei dir nicht, oder du hast es falsch angepasst..kann aber nix Wildes sein. Mache das hier nach der Methode des Öfteren.

Grüße Uwe
Bitte warten ..
Ähnliche Inhalte
VB for Applications
Import von csv Dateien
Frage von KurinoKiVB for Applications6 Kommentare

Hallo, ich verwende bereits folgendes Skript für den Import meiner csv Dateien. Bei dem Import sollten die Spalten A, ...

VB for Applications
VBA Skript zum Import von CSV-Dateien
gelöst Frage von ToepfiVB for Applications8 Kommentare

Schönen guten Morgen! Ich habe ein kleines VBA Problem und komme nicht wirklich weiter Deswegen bin ich auf eure ...

Datenbanken

Fehler 1045 bei Import einer CSV-Datei in MariaDB mit phpMyAdmin

Frage von HSHansDatenbanken3 Kommentare

Ich ziehe gerade von einem Server auf einen anderen um. Auf dem alten Server ist eine mySQL-Datenbank und phpMyAdmin ...

Datenbanken

Import CSV in MYSQL

gelöst Frage von schneerunzelDatenbanken3 Kommentare

Hallo zusammen, ich versuche gerade die Daten einer Vereinsverwaltung in eine neu zu überführen. Dabei tauchen einige Probleme auf. ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 3 StundenWindows 102 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 6 StundenAdministrator.de Feedback10 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 23 StundenHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 1 TagGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Server-Hardware
Welche Rolle spielt Design bei Enterprise IT Hardware?
Frage von ApolloXServer-Hardware17 Kommentare

Ich arbeite für einen internationalen Elektronikhersteller in der Forschung und meine Aufgabe ist es, Feedback von Nutzern in Hinsicht ...

Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Switche und Hubs
Cisco SG350X-48 AdminIP in anderes VLAN
Frage von lcer00Switche und Hubs14 Kommentare

Hallo zusammen, ich habe ein Problem mir einem Cisco SG350X-48 bei der Erstinstallation wurde eine IP 192.168.0.254 (Default VLAN ...