Notification framework for object lifecycle
- by rlandster
I am looking for an application, framework, or library that would help us with "object life-cycle management".
There are many things that are created for users, departments, and services that, all too often, are left unmanaged. Some examples:
user accounts
groups
SSL certificates
access rights
databases
software license provisionings
storage
list-serve accounts
These objects are created and managed by a wide variety of applications and systems. Typically, a user (person) requests (either explicitly or implicitly) one of these objects. A centralized management tool would help us manage such administration chores as:
What objects does user X currently own/manage?
Move the ownership of object P to user X; move all objects owned by user X (who was just been fired) to user Y.
For all objects of type T that have expired be sure the objects have been disabled or deleted by their provider.
How many active (expired, about-to-expire) objects of type P are there?
Send periodic notifications to all users who own active objects of type P reminding them of what they own.
There is a security alert for objects of type P; send a notification to all users who own these types of objects to take a specific remedial action.
Delete or disable a set of objects based on expiration (or some other criteria).
These objects are directly managed through their own applications (Active Directory, MySql, file systems, etc.) and may even have their own notification systems, but I want to centralize this into an "object management system".
The OMS should allow the
association with an external identity provider that defines who the users and groups are (e.g., LDAP, Active Directory)
creation of objects
association of an object to a specific user and/or group
association with an expiration date
creation of flexible reporting including letting users know what objects they currently own and their expiration dates
integration with an external object "provider" via a plug-in
We could write something from scratch, but I am hoping there is something already out there that will help, either an entire application or a set of libraries that provide much of what is needed. Any ideas?