The zip file contains the Java source, supporting files, and documentation for the Password Expiration Notification solution currently used by Novell IS&T.
This Java console application checks users in an LDAP directory and sends notification email messages when their password is about to expire. The application is scheduled to run nightly. Only those users whose passwords will be expiring in a specified number of days will be notified.
A configuration XML document defines the LDAP connection information, day intervals for notification and the email message templates for each interval. For example, users who will be expiring in 30 days may receive a different email message than those expiring tomorrow. The email messages are designed to be readable in both HTML and text-only views.
Expiration Notification has the following dependencies:
|OS task scheduler||the application must be scheduled to run every 24 hours|
|service account||LDAP user with read access to password related attributes|
|Classpath||Include mail.jar, activation.jar and jsse.jar in the Java classpath|
No passwords are hard-coded in this application. The LDAP connection password is retrieved from the configuration document. It is assumed that the configuration document is protected from unauthorized access by the file system. A service account with read access to password related attributes is required.
There was a bug in the code and an error in the sample config.xml
Sorry about that. This update should take care of many of the reported problems.
I also added the ability to run the application in console mode (no GUI) for those who are having trouble with X-Windows on Linux. I updated the instruction document to reflect these changes.
I added a shell script to help Linux users run the app correctly.