ich hoffe, Ihr habt die Feiertage gut überstanden. Ich habe die Zeit genutzt um zu Feiern und mich ab und zu meinen kleinen Projekten zu widmen.
Da NilsK hier im Forum viel Feedback zu Jose bekommen hat, möchte ich auch gern mein Tool hier für die Betaphase einstellen. Vielen Dank auch an Dr.Melzer der mir das genehmigt hat.
Zum Tool:
Viele Admins suchen nach einer Lösung mit der Benutzer per Mail benachrichtigt werden, wenn das Passwort abläuft. Es gibt bereits ein kommerzielles Tool unter Password Reminder and Management Tools for Active Directory. Ich finde aber, dass es ein paar Macken hat und auch nicht gerade preiswert ist. Deshalb habe ich jetzt mein eigenes Tool entwickelt.
Danach könnt ihr es in eurer Testumgebung installieren. Das Setup installiert zwei Teile.
1.) Den Dienst, der die Suche und die Benachrichtigungen durchführt.
2.) Eine Konfigurationsoberfläche mit der Ihr die Nachrichten und einige andere Parameter konfigurieren könnt.
Während der Installation müsst Ihr ein Dienstkonto angeben. Es ist zwingend erforderlich, dass dieses Benutzerkonto ein Domänenbenutzer ist. Auf der Maschine, auf der installiert wird, muss das Konto das Recht "Anmelden als Dienst" besitzen.
Nach der Installation müsst Ihr über die Konfigurationsoberfläche die erforderlichen Einstellungen vornehmen und anschliessend über die Diensteverwaltung den Dienst starten.
WICHTIG: Alle Benutzer die Benachrichtigt werden sollen benötigen natürlich eine gültige Mailadresse in den Benutzereigenschaften unter "Allgemein" -> "E-Mail"
cool! (Als nächstes baust du dann einen konfigurierbaren Kennwortfilter, okay? )
Also, hier in Kürze die ersten Eindrücke:
Wenn man das Configtool nicht ausdrücklich als Admin aufruft (2008/Vista mit UAC), ist kein einziges Element aktiviert. Hier wäre ein kurzer Hinweis auf fehlende Rechte sinnvoll. Noch besser wäre natürlich ein Manifest, das den UAC-Dialog direkt aufruft.
Beim Start mit bestätigter UAC in 2008 erhalte ich folgenden Fehler (Ausschnitt):
Code:
System.ArgumentOutOfRangeException: Der Wert 2 ist für Value ungültig. Value sollte zwischen 'Minimum' und 'Maximum' liegen.
Parametername: Value
bei System.Windows.Forms.NumericUpDown.set_Value(Decimal value)
bei PassAlertConfig.Form1.getSettingsFromXML(XmlDocument xml)
bei PassAlertConfig.Form1.Form1_Load(Object sender, EventArgs e)
bei System.Windows.Forms.Form.OnLoad(EventArgs e)
bei System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
bei System.Windows.Forms.Control.CreateControl()
bei System.Windows.Forms.Control.WmShowWindow(Message& m)
bei System.Windows.Forms.Control.WndProc(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Danach geht es weiter.
Beim Versuch, eine Mail unter 2008 zu bearbeiten, erhalte ich auch einen Fehler, Ausschnitt:
Code:
System.IO.FileNotFoundException: Die Datei oder Assembly Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a oder eine Abhängigkeit davon wurde nicht gefunden. Das System kann die angegebene Datei nicht finden.
Dateiname: Microsoft.mshtml, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
bei PassAlertConfig.htmlEdit.htmlEdit_Load(Object sender, EventArgs e)
bei System.Windows.Forms.Form.OnLoad(EventArgs e)
bei System.Windows.Forms.Form.SetVisibleCore(Boolean value)
bei PassAlertConfig.Form1.btnMessage1_Click(Object sender, EventArgs e)
bei System.Windows.Forms.Control.OnClick(EventArgs e)
bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
bei System.Windows.Forms.Control.WndProc(Message& m)
bei System.Windows.Forms.ButtonBase.WndProc(Message& m)
bei System.Windows.Forms.Button.WndProc(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Danach geht es aber weiter.
Beim Aufruf des Konfigtools prüft dieses ja, ob es eine Kennwortrichtlinie gibt. Wenn es keine gibt, wäre ein Hinweis auf die fehlende Richtlinie im Dialogfenster selbst sinnvoll. (Das Warnungs-Popup ist zu dem Zeitpunkt ja schon weg.)
Nützlich wäre ein Testmodus, in dem das Tool die zu erzeugenden Mails in eine Datei schreibt. (Unter anderem habe ich noch kein Exchange in meiner VM ...)
Schreibt der Dienst Meldungen ins Eventlog? Zumindest sehe ich keine (außer dem Dienststart). Da wären z.B. statistische Informationen sinnvoll (25 Benutzer benachrichtigt, 3 Benutzer ohne Mailadresse usw.)
cool! (Als nächstes baust du dann einen konfigurierbaren Kennwortfilter, okay? )
Mal sehen. Momentan kämpfe ich noch mit .Net. Aber vielleicht..........
Zitat von NilsK
Also, hier in Kürze die ersten Eindrücke:
[*]Wenn man das Configtool nicht ausdrücklich als Admin aufruft (2008/Vista mit UAC), ist kein einziges Element aktiviert. Hier wäre ein kurzer Hinweis auf fehlende Rechte sinnvoll. Noch besser wäre natürlich ein Manifest, das den UAC-Dialog direkt aufruft.
Ist erledigt. Ich habe jetzt ein Manifest hinterlegt. Der UAC Dialog sollte jetzt hochkommen.
[*]Beim Start mit bestätigter UAC in 2008 erhalte ich folgenden Fehler (Ausschnitt):
Code:
System.ArgumentOutOfRangeException: Der Wert 2 ist für Value ungültig. Value sollte zwischen 'Minimum' und 'Maximum' liegen.
Sollte auch erledigt sein. Das war ein kleiner logischer Fehler.
Danach geht es weiter.[*]Beim Versuch, eine Mail unter 2008 zu bearbeiten, erhalte ich auch einen Fehler, Ausschnitt:
Code:
System.IO.FileNotFoundException: Die Datei oder Assembly Microsoft.mshtml,
Das war etwas kniffliger. Ich muss im Setup noch ein paar Komponenten nachschieben. Ist jetzt aber auch erledigt.
Danach geht es aber weiter. [*]Beim Aufruf des Konfigtools prüft dieses ja, ob es eine Kennwortrichtlinie gibt. Wenn es keine gibt, wäre ein Hinweis auf die fehlende Richtlinie im Dialogfenster selbst sinnvoll. (Das Warnungs-Popup ist zu dem Zeitpunkt ja schon weg.)
Ist auch erledigt. Es steht jetzt in dem Label fett da.
[*]Nützlich wäre ein Testmodus, in dem das Tool die zu erzeugenden Mails in eine Datei schreibt. (Unter anderem habe ich noch kein Exchange in meiner VM ...)
Wenn die gröbsten Fehler aus dem Ding raus sind, dann werde ich mich der Sache widmen. Du könntest ja zur Not einen Hamster auf die Testmaschine schieben. Der kann auch SMTP und POP3.
[*]Schreibt der Dienst Meldungen ins Eventlog? Zumindest sehe ich keine (außer dem Dienststart). Da wären z.B. statistische Informationen sinnvoll (25 Benutzer benachrichtigt, 3 Benutzer ohne Mailadresse usw.)[/LIST]
Der Dienst schreibt Meldungen in das Eventlog (Application). Allerdings nur Fehler. So eine Zusammenfassung im Eventlog ist aber eine gute Idee. Das werde ich noch einpflegen.
ich habe gerade beim Installieren einen Fehler gemacht, den du vielleicht noch abfangen könntest: Ich habe das Dienstkonto falsch angegeben. Daraufhin brach das Setup mit einem Fehler 2869 ab. Wenn man danach googelt, kommt man auf die falsche Fährte. Vielleicht kannst du das im Setup behandeln.
Die Prüfung auf Adminrechte beim Konfigtool funktioniert zwar, aber schöner wäre ein Manifest, das den UAC-Prompt aufruft und das Tool als Admin startet. Über den Link im Startmenü hat man nämlich leider keine Möglichkeit dazu, man muss erst die exe aus dem Programmverzeichnis raussuchen. (Das hatte ich neulich bei einem anderen Programm schon mal, keine Ahnung, woran das liegt - es gibt beim Link kein "Als Administrator ausführen", auch mit Rechtsklick nicht.)
Wenn der PassAlert-Dienst läuft, sperrt er offenbar die HTML-Dateien exklusiv (die Textdateien nicht). Man muss also erst den Dienst beenden, um die HTML-Messages zu bearbeiten ...
Kosmetik: Im HTML-Editor werden nicht alle Schriftarten angezeigt. Die Segoe-Familie fehlt, ebenso Arial und andere. (Windows 2008)
Die eigentliche Funktion kann ich immer noch nicht testen - zum Setup von Exchange fehlt mir momentan die Internet-Connectivity aus der VM ... kommt noch.
Hallo Frank,
muss die Software auf dem Server mit der Active Directroy ausgeführt werden oder funktioniert dieses auch von einer administrativen Workstation?
ich habe gerade beim Installieren einen Fehler gemacht, den du vielleicht noch abfangen könntest: Ich habe das Dienstkonto falsch angegeben. Daraufhin brach das Setup mit einem Fehler 2869 ab. Wenn man danach googelt, kommt man auf die falsche Fährte. Vielleicht kannst du das im Setup behandeln.
Das lässt sich sehr schwer realisieren. Die Möglichkeiten innerhalb von Visual Studio für das Bauen von MSI Setups sind sehr begrenzt. Ich habe mich schon schwer getan, das Eingeben des Benutzernamens und des Kennworts zu realisieren.
Zitat von NilsK
Die Prüfung auf Adminrechte beim Konfigtool funktioniert zwar, aber schöner wäre ein Manifest, das den UAC-Prompt aufruft und das Tool als Admin startet. Über den Link im Startmenü hat man nämlich leider keine Möglichkeit dazu, man muss erst die exe aus dem Programmverzeichnis raussuchen. (Das hatte ich neulich bei einem anderen Programm schon mal, keine Ahnung, woran das liegt - es gibt beim Link kein "Als Administrator ausführen", auch mit Rechtsklick nicht.)
Hier komme ich nicht ganz mit. Ich habe die Manifest Datei in die Exe eingebaut. Bei mir kommt jetzt der Dialog sauber hoch. Ich habe auch an der Exe unter Vista und Server 2008 das UAC Symbol an der Exe dran.
Zitat von NilsK
Wenn der PassAlert-Dienst läuft, sperrt er offenbar die HTML-Dateien exklusiv (die Textdateien nicht). Man muss also erst den Dienst beenden, um die HTML-Messages zu bearbeiten ...
Ist erledigt. Ich hatte eine Objekt nicht sauber zerstört.
Zitat von NilsK
Kosmetik: Im HTML-Editor werden nicht alle Schriftarten angezeigt. Die Segoe-Familie fehlt, ebenso Arial und andere. (Windows 2008)
Ist erledigt. Ich wollte eigentlich die Schriftarten noch viel mehr beschneiden, da ja in HTML nur das dargestellt wird, was auch auf dem Client vorhanden ist.
Zitat von NilsK
Die eigentliche Funktion kann ich immer noch nicht testen - zum Setup von Exchange fehlt mir momentan die Internet-Connectivity aus der VM ... kommt noch.
Du könntest wie gesagt auch den Hamster nehmen. Der lässt sich ohne Installation starten und Du hast dort die Protokolle POP3, SMTP, IMAP und NNTP. Für solche Experimente ideal. Alternativ kann man auch die Krücke "SMTP / POP3" unter Windows 2003 einsetzen.
Neue Features:
Es wird für jede Nachricht im Eventlog geloggt wieviel Benutzer eine Benachrichtigung erhalten haben, wieviel Benutzer keine Benachrichtigung erhalten haben weil die E-Mail Adresse nicht konfiguriert ist und wieviel Benutzer eine Benachrichtigung bekommen würden aber das Flag "Kennwort läuft nie ab." gesetzt ist.
@DLENSING
Man kann es auch auf einer Workstation installieren. Die muss natürlich auch Mitglied in der Domäne sein. Das Tool greift auch nur lesend auf das AD zu. Es besteht also keine Gefahr.
das ist ja mal wirklich ne schöne Sache. Komme im Moment leider nicht zum testen, aber ich gehe mal davon aus, dass die Betaphase noch ein paar Tage läuft. Da ich leider kein readme oder ähnliches gefunden habe, stelle ich einfach mal ein paar Fragen zu den Möglichkeiten des Programms. Wie oft bzw. wie weit vorher wird der Nutzer benachrichtigt? Gibt es abgesehen von den Eventlog Einträgen die Möglichkeit einen Report an einen Administrator schicken zu lassen?
Bye
Norbert
PS: nfront passfilt kann inzwischen auch Emailbenachrichtigung Damit wären es schon zwei die in dem Umfeld Geld für so eine Funktion haben wollen.
so, jetzt läuft Exchange 2007 auf meinem Windows 2008. Schaumerma!
Zitat von frr
Hier komme ich nicht ganz mit. Ich habe die Manifest Datei in die Exe eingebaut. Bei mir kommt jetzt der Dialog sauber hoch. Ich habe auch an der Exe unter Vista und Server 2008 das UAC Symbol an der Exe dran.
Bei mir weder noch, auch nicht in der eben heruntergeladenen Version. Kein Symbol, kein UAC-Dialog. Ich muss das Config-Tool ausdrücklich aus dem Programme-Ordner als Admin starten. Jetzt kommt beim Starten als normaler User bzw. eingeschränkter Admin aber auch kein Popup mehr vorher, das auf die fehlenden Rechte hinweist (was bei der gestrigen Version noch passierte).
Beim Abspeichern könnte das Konfigtool übrigens warnen, wenn man vergessen hat, die Zeitspannen zur Benachrichtigung zu setzen. Standardmäßig stehen die ja auf 0, was vermutlich dazu führt, dass nichts passiert.
Es wird für jede Nachricht im Eventlog geloggt wieviel Benutzer eine Benachrichtigung erhalten haben, wieviel Benutzer keine Benachrichtigung erhalten haben weil die E-Mail Adresse nicht konfiguriert ist und wieviel Benutzer eine Benachrichtigung bekommen würden aber das Flag "Kennwort läuft nie ab." gesetzt ist.
Jo, das passiert. Steht hier alles auf 0. Das liegt vermutlich daran, dass meine User aus einem CSV importiert wurden und daher noch nie ihr Kennwort gesetzt haben. Prüft PassAlert das, wenn pwdLastSet undefiniert ist?
Wobei ... ein paar Konten haben "Kennwort läuft nie ab" gesetzt. Die sollte er doch aufführen? Ich schau's mir noch mal weiter an.
das ist ja mal wirklich ne schöne Sache. Komme im Moment leider nicht zum testen, aber ich gehe mal davon aus, dass die Betaphase noch ein paar Tage läuft. Da ich leider kein readme oder ähnliches gefunden habe, stelle ich einfach mal ein paar Fragen zu den Möglichkeiten des Programms. Wie oft bzw. wie weit vorher wird der Nutzer benachrichtigt? Gibt es abgesehen von den Eventlog Einträgen die Möglichkeit einen Report an einen Administrator schicken zu lassen?
Kurz zu den Features:
es gibt insgesamt drei Nachrichten die verschickt werden. Der Zeitraum ist frei konfigurierbar.
die Benachrichtigungen können wahlweise als Text- oder HTML Mails verschickt werden.
für beide Benachrichtigungsformen gibt es einen integrierten Editor.
bei der Sysop Variante hattest Du angemeckert das man das Dienstkonto separat einrichten muss. Bei dem Setup geht das automatisch.
die Kennwortrichtlinie wird auch automatisch ausgelesen.
eine Unterstützung für PSOs gibt es momentan noch nicht.