Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

PowerShell - AD - System. ComObject wird nicht ausgelesen...

Frage Entwicklung Batch & Shell

Mitglied: Binside

Binside (Level 1) - Jetzt verbinden

10.08.2010, aktualisiert 16:03 Uhr, 6718 Aufrufe, 2 Kommentare

In meinem PS-Script will ich den accountExpires auslesen und ändern.

Dazu rufe ich mit

01.
$User = [ADSI]"LDAP://CN=Max Mustermann,OU=Berlin,DC=bspdomain,DC=de"
den User aus dem Active Directory ab und soll mit

01.
$User.accountExpires
eigentlich den accountExpires-Wert auslesen können. Allerdings gibt mir die Konsole nur zwei Leerzeilen zurück.
Per

01.
$User | get-member
erfährt man, dass "accountExpires = {System._ _ComObject}"
bei allen verfügbaren {System._ _ComObject} bekomme ich 2 Leerzeilen zurück. Alle anderen Werte werden anstandslos ausgegeben. Was ist da los?

Danke für eure Hilfe und eure Zeit.

MfG

/B_out
Mitglied: Binside
11.08.2010 um 08:38 Uhr
Ok ich habe mal ein bisschen weiter geforscht und etwas gefunden:

01.
$Temp = New-Object directoryservices.directorysearcher($User) 
02.
#AccountExpires im Format "IADsLargInteger" 
03.
$Temp.findone().properties.accountexpires 
04.
 
05.
129293704000000000 
06.
 
07.
#und im Datumsformat 
08.
[datetime]::fromfiletime(($Temp.findone().properties.accountexpires)[0]) 
09.
 
10.
Mittwoch, 8. September 2010 00:00:00


wichtig scheint dabei zu sein, dass accountexpires klein geschrieben wird, denn

01.
[datetime]::fromfiletime(($Temp.findone().properties.AccountExpires)[0])
gibt "Cannot index into a null array." zurück.

Bei Änderungen des accountexpires-Wertes greifen jedoch ausnahmslos alle auf VBScript oder C# zurück, was sich für mich jedoch ausschließt. Gibt es keine Lösung in PowerShell diese Werte zu ändern?

MfG

/B_out
Bitte warten ..
Mitglied: Binside
19.08.2010 um 16:14 Uhr
ich habs jetzt so gemacht:

01.
$Datum = read-host ' 
02.
Geben Sie das Datum an, an dem der Account deaktiviert werden soll! 
03.
Format:  "DD.MM.YYYY" (Bitte mit Punkten angeben!) 
04.
Eingabe ' 
05.
$AETag = $Datum.split(".")[0] 
06.
$AEMonat = $Datum.split(".")[1] 
07.
$AEJahr = $Datum.split(".")[2] 
08.
$AEDatum = "$AEJahr/$AEMonat/$AETag" 
09.
$AEDatumLI = [datetime]::Parse($AEDatum, [System.Globalization.CultureInfo]::InvariantCulture) 
10.
$AEDatumLI = $AEDatumLI.ToFileTime() 
11.
$User = [ADSI]"LDAP://CN=$Name;OU=$Ort,DC=bspdomain,DC=de" 
12.
$User.InvokeSet("accountexpires","$AEDatumLI") 
13.
$User.SetInfo()
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Windows Netzwerk
gelöst Powershell skript zum Auslesen der im AD angemeldeten User (2)

Frage von jan.kleinel zum Thema Windows Netzwerk ...

Batch & Shell
Mehrere AD Benutzer aus CSV Datei mit PowerShell erstellen (1)

Frage von windelterrorist zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
CPU, RAM, Mainboards
Kaufberatung für mind. 8 verschiedene HighEnd-Mainboards (24)

Frage von yperiu zum Thema CPU, RAM, Mainboards ...

Netzwerke
Abisolierwerkzeug (11)

Frage von SarekHL zum Thema Netzwerke ...

Hyper-V
Langsames Netzwerk i210 LAN Karte (11)

Frage von Akcent zum Thema Hyper-V ...

Windows Server
Server 2016 - Kuriositäten (8)

Frage von certifiedit.net zum Thema Windows Server ...