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

Frage Entwicklung VB for Applications

GELÖST

VB-Script das mit WMI lokale User zur Passwortänderung zwingen soll funktioniert nicht! (Windows 7)

Mitglied: azubaer

azubaer (Level 2) - Jetzt verbinden

26.05.2010, aktualisiert 17:38 Uhr, 6948 Aufrufe, 3 Kommentare

Hallo,

ich versuche mir ein Script für Windows 7 zu basteln, welches bei allen aktiven, lokalen Systembenutzern (die nicht "Systemadministrator" heißen) eine Passwortänderung beim nächsten Login erzwingt.

Folgendes VB-Script habe ich bereits hinbekommen:


On Error Resume Next
strComputer = "localhost"
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery _
("Select * from Win32_UserAccount Where LocalAccount = True AND Disabled = False AND Name <> 'Systemadministrator'")
For Each objItem in colItems
objItem.Put "PasswordExpired", 1
objItem.SetInfo
Wscript.Echo objItem.Name
Next


Leider funktioniert es noch nicht - zumindest nicht unter Windows 7 (andere Systeme habe ich nicht probiert - nützten mir auvh nix).
Das Wscript.Echo gibt zwar den korrekten Benutzernamen zurück, aber die Änderungen werden nicht übernommen.

Ist möglicherweise der Put-Parameter für eine Passwortänderung falsch?
Oder gibt es eine Besonderheit bei Windows 7 (das Script stammt noch aus XP-Zeiten...)
Kennt jemand eine Möglichkeit wie es unter Windows 7 klappen würde?

Schonmal besten Dank für eure Hilfe!

Gruß
Martin
Mitglied: bastla
26.05.2010 um 18:10 Uhr
Hallo azubaer!

So sollte das eher funktionieren:
01.
Const ADS_UF_DONT_EXPIRE_PASSWD = &h10000 
02.
 
03.
Set colAccounts = GetObject("WinNT://.") 
04.
colAccounts.Filter = Array("user") 
05.
 
06.
For Each objUser In colAccounts 
07.
    If LCase(objUser.Name) <> LCase("Systemadministrator") And objUser.AccountDisabled = False Then  
08.
        objUserFlags = objUser.Get("UserFlags") 
09.
        objPasswordExpirationFlag = objUserFlags And Not ADS_UF_DONT_EXPIRE_PASSWD 
10.
        objUser.Put "userFlags", objPasswordExpirationFlag 
11.
        objUser.Put "PasswordExpired", 1 
12.
        objUSer.SetInfo 
13.
    End If 
14.
Next
Damit sollte auch eine allfällige Einstellung "Kennwort läuft nie ab" rückgängig gemacht werden (da ansonsten das "PasswordExpired" keinen Sinn hätte).

Grüße
bastla

P.S.: Während des Testens eines VBScripts ist "On Error Resume Next" kontraproduktiv - Du willst ja sehen, wo es Fehler gibt ...
Bitte warten ..
Mitglied: azubaer
26.05.2010 um 21:25 Uhr
Hallo bastla,

vielen Dank für deinen Beitrag!
das war die Lösung!
Ich weiß nicht wieso, aber es geht (wenn ich es únter Windows 7 aus einer Admin-Konsole heraus anstarte)


Besten Dank!
Bitte warten ..
Mitglied: bastla
26.05.2010 um 21:56 Uhr
Hallo azubaer!
Ich weiß nicht wieso, aber es geht
Stammt doch zum größten Teil direkt von MS (aus der sehr zu empfehlenden Sammlung von Beispielscripts in der "script_center.chm") - da darf es doch eigentlich ...

Grüße
bastla

P.S.: Nicht minder zu empfehlen: (ein Teil der) gesammelten Werke der "Scripting Guys" ...
Bitte warten ..
Ähnliche Inhalte
Windows Userverwaltung
Passwortänderung lokaler Konten in einer 2008er Domäne
gelöst Frage von OniChanWindows Userverwaltung7 Kommentare

Moin Leute, ich stehe gerade vor der Aufgabe, das Kennwort des lokalen Administrator Kontos aller Clients (XP, Win7 & ...

VB for Applications
VB-Script in VB-Script starten und Parameter übergeben
gelöst Frage von denkisVB for Applications7 Kommentare

Hallo liebe Scriptgemeinde, ich muss mehrere Rechner für den Übergang in eine neue Domäne vorbereiten. Dafür sind drei wesentliche ...

Windows Server
WMI User über Gruppenrichtlinien
Frage von Jannis92Windows Server5 Kommentare

Moin Moin, kennt hier jemand eine gute Anleitung, wie ich über Gruppenrichtlinien (GPO) einer WMI Gruppe Zugriff auf WMI ...

Windows Server
WMI Filter funktioniert nicht
Frage von PhraccyWindows Server2 Kommentare

Guten Morgen, ich hätte da gerne mal ein Problem ;) Bei uns in der Firma hat sich im Zuge ...

Neue Wissensbeiträge
Router & Routing

PfSense als Addon auf QNAP

Information von magicteddy vor 4 StundenRouter & Routing1 Kommentar

Moin, für Spielereien eine ganz nette Idee aber ich fürchte das soetwas auch als echte Firewall genutzt wird: In ...

Datenschutz

Teamviewer kommt für IoT-Geräte wie den Raspberry Pi

Information von magicteddy vor 11 StundenDatenschutz

Moin, jetzt werden IoT Geräte endgültig zur Wanze? Anscheinend kann man auf einem Dashboard seine Geräte visualisieren Ich stelle ...

Microsoft

Letzte Updates für Win10 und Server2016 müssen bei Bedarf über den Update catalogue in den WSUS importiert werden!

Tipp von DerWoWusste vor 16 StundenMicrosoft1 Kommentar

automatisch kommt da nichts an im WSUS und auch nicht im SCCM. Siehe Hinweise zum Bezug der jeweils neuesten ...

Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 3 TagenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Preis für Wartungsvertrag ok?
gelöst Frage von a-za-zNetzwerkmanagement22 Kommentare

Hallo! Mal ne Frage, weil ich mich mit dem akzeptablen Preis für einen Reaktionszeitvertrag nicht auskenne. Meine Firma hat ...

Windows Netzwerk
Ist ein Portforwarding auf einen PC ohne lauschendes Programm ein (großes) Sicherheitsproblem?
Frage von PluwimWindows Netzwerk13 Kommentare

Hallo zusammen, zur Fernwartung eines Rechners an einem anderen Ort nutze ich VNC. Da dieser Rechner einfach nur eine ...

Windows Server
Terminal Server 2016 erkennt Berechtigungen nicht
gelöst Frage von Thomas2Windows Server10 Kommentare

Hallo Administratoren, folgendes Problem stellt sich dar: Es gibt zwei Windows Server 2016, die als Terminal Server fungieren. Jetzt ...

Sonstige Systeme
7-zip: Programm frägt nach Passwort erst bei einzelnen Dateien
Frage von freeskierchrisSonstige Systeme7 Kommentare

Guten Morgen, ich habe ein Problem beim Arbeiten mit 7-zip: Wenn ich die einzelnen Dateien zu einem Archiv verpacke ...