This is something we have wanted to do for some time and finally are now able! As our contributors find the time and freedom to contribute some of our intellectual property back to the greater community at large, we will add more repositories and content there.
Our first offering is a C# .NET wrapper that can do more to manage Microsoft Active Directory instances (including Active Directory Lightweight Directory Services, formerly known as ADAM, or Active Directory Application Mode) than any other open source project can do (which is why we wrote it in the first place). Our open source Active Directory Services repo is available here:
In addition to shipping a core library that extends Microsoft's out-of-the-box functionality that ships with the .NET runtime (System.DirectoryServices.AccountManagement), we also have fully working example applications that are consumers of the library, so you can see how to use all of the features we have built.
Here's a list of just some of the features our consumer applications can do:
- Create, Edit, Update, and Delete Active Directory objects Users, Groups, Organizational Units (OUs), Contacts, etc.
- Create, Edit, Update, and Delete AD-LDS (ADAM) UserProxy and UserProxyFull objects.
- Sync AD Users into an AD-LDS (ADAM) instance as UserProxy or UserProxyFull objects.
- Create, Update, Delete, and generally manage/sync dynamic AD security/distribution groups based upon reporting relationships (if those are defined within Active Directory).
- Enable, set, and maintain Microsoft Exchange attributes to enable objects to become visible in the GAL (Global Address List), which also works for Microsoft's Exchange Online hosted service via DirSync.
- Import various rooms and resources from a .CSV file into Active Directory and enable their visibility in the Exchange GAL.
- Enable and Manage Office Communicator/Lync attributes to turn on/off access to your company's Lync/OCS server, setup default policies, including access to any internet-facing proxy servers as well as archive/logging per user.
- Generate random passwords for users.
- A nifty way of "snoozing" when a AD user's password expires while keeping the same password.
- And much more...
Eventually, we will share a working Provisioning Web Service that will be a great solution for limited budget organizations that want some of the functionality Microsoft's Identity Lifecycle Manager (ILM) includes, without the heftier license cost and infrastructure requirements.
More follow-up posts will follow.