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

Auslesen des Passwortablaufdatums und Mailbenachrichtigung

Frage Entwicklung Batch & Shell

Mitglied: edvhammel

edvhammel (Level 1) - Jetzt verbinden

08.11.2012, aktualisiert 20.02.2014, 4582 Aufrufe, 2 Kommentare

Hi Admin-Gemeinde,

wir haben aktuell umgestellt auf DC Windows 2008 R2 und als Client Win7 64 bit.
Per GPO bekommen die User 7 Tage vor Ablauf Ihres Kennworts den Ballon eingeblendet, dass Ihr Passwort abläuft.
Leider sehen bzw. übersehen unsere Benutzer diesen Hinweis.

Nun hab ich mir gedacht es muss doch möglich sein, das expire Date des AD Passwort auszulesen und dann den AD Benutzern eine Mail zu schicken mit dem Hinweis: "Ihr Passwort läuft in X Tagen ab!"

Ich hab auch schon mal gegoogelt und bin auf folgendes Skript gestossen:
01.
  
02.
############################################################################### 
03.
 
04.
function write-Eventlog([string]$uname) 
05.
06.
 
07.
  $text = "Das Kennwort für den Benutzer " + $uname + " wurde zur Änderung aktiviert." 
08.
 
09.
  $Eventlog = new-object System.Diagnostics.EventLog('Application') 
10.
  $Eventlog.MachineName = "." 
11.
  $Eventlog.Source = "Kennwort-Manager" 
12.
  $Eventlog.WriteEntry($text) 
13.
 
14.
15.
 
16.
function send-EMail([string]$uname, [string]$email, [int]$number) 
17.
18.
  #Mailserver   
19.
  $server = "192.168.1.20" 
20.
  $from = " kennwort@hier.local" 
21.
  $subject = "Ihr Domainen-Kennwort läuft demnächst ab!" 
22.
  $template = "C:\powershell\password.html" 
23.
 
24.
  $body = get-Content $template 
25.
  $replace=[regex]"#TAGE#" 
26.
  $body = $replace.Replace($body,$number,1) 
27.
  $replace=[regex]"#NAME#" 
28.
  $body = $replace.Replace($body,$uname,1) 
29.
 
30.
  [System.Net.Mail.MailMessage]$message = New-Object System.Net.Mail.MailMessage($from, $email, $subject, $body) 
31.
  $message.IsBodyHTML = $true 
32.
 
33.
  if ($number -eq 1) {$message.Priority ="High"} 
34.
 
35.
  [System.Net.Mail.SmtpClient]$smtpclient = New-Object System.Net.Mail.SmtpClient($server) 
36.
  $smtpclient.Send($message) 
37.
 
38.
39.
 
40.
### Begin Main 
41.
 
42.
$days = "7" 
43.
$container = "OU=Benutzer,DC=hier,DC=local" 
44.
$query = "(&(objectclass=user)(useraccountcontrol=512))" 
45.
 
46.
for ($day = 0; $day -le $days; $day++) 
47.
48.
 
49.
   $user ="" 
50.
   $users = Get-ADUser -LdapFilter $query -SearchBase $container -SearchScope:Subtree | Where {$_.PasswordExpires.Date -eq ([datetime]::Now.Date.AddDays($day))} 
51.
 
52.
    foreach ($user in $users) 
53.
54.
       if ($user -ne $null) 
55.
56.
         
57.
           if ($day -eq 0) 
58.
59.
             write-Eventlog $user.Name 
60.
             set-aduser -identity $user.NTAccountName -UserMustChangePassword $true 
61.
62.
           else 
63.
64.
             send-EMail $user.Name $user.EMail $day 
65.
66.
67.
68.
69.
 
70.
### End Main 
Leider bin ich aber noch Powershell Neuling und bekomme es nicht hin, das Ganze zu testen bzw. erfolgreich auszuführen. Vielleicht könnt Ihr mir ja weiterhelfen.

Danke!
Mitglied: DerWoWusste
LÖSUNG 09.11.2012, aktualisiert 20.02.2014
Moin.

Ich hab Dein Skript gegoogelt und gesehen, dass Du es einfach nicht komplett wiedergibst ;) siehe http://www.msisafaq.de/anleitungen/Verschiedenes/VistaPwd.htm
Du unterschlägst den Autor und dessen Kommentar:

Für den Betrieb dieses Skripts sind die Powershell und die PowerShell Commands for Active
Directory von Quest erforderlich. Die Powershell Commands können Sie unter der URL
http://www.quest.com/powershell/activeroles-server.aspx herunter laden.

Hattest Du die runtergeladen und eingebunden?
Wenn's nicht will, schau mal hier: http://www.administrator.de/forum/user-%C3%BCbersehen-in-windows-7-st%C ...
Bitte warten ..
Mitglied: edvhammel
29.11.2012 um 13:29 Uhr
Da hab ich wohl was übersehen. Skript ist nicht von mir, habe ich aber auch nie behauptet. Danke für die Hilfe
Bitte warten ..
Ähnliche Inhalte
Visual Studio
Vb.net Datenfelder aus Word 2003 Dokument auslesen (3)

Frage von Herbrich19 zum Thema Visual Studio ...

VB for Applications
gelöst Mit VBA Zertifikate auslesen (3)

Frage von it4baer zum Thema VB for Applications ...

LAN, WAN, Wireless
gelöst Cisco Aironet AP 1250 passwörter auslesen (17)

Frage von Herbrich19 zum Thema LAN, WAN, Wireless ...

Batch & Shell
gelöst Datei aus Verzeichnis auslesen? (4)

Frage von freshman2017 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
POS Hardware und alternativen zu Raid 1? (20)

Frage von Brotkasten zum Thema Festplatten, SSD, Raid ...

ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (13)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...

Linux Desktop
KDE Slimbook (11)

Link von Frank zum Thema Linux Desktop ...

LAN, WAN, Wireless
gelöst Suche Firmware Image für Cisco Aironet 1252 (10)

Frage von Herbrich19 zum Thema LAN, WAN, Wireless ...