Announcing the Community Kit for SharePoint: Internet/Extranet Edition Forms-Based Authentication solution!
As many of you know, one of the best new features in WSS 3.0 (and consequently MOSS 2007) is the way it leverage's ASP.NET 2.0 to support for forms-based authentication or FBA along with the ability to support multiple authentication providers. Steve Peschka's post from more than a year ago was one of the first to discuss this feature, and it remains the most widely read and referenced entry on the SharePoint Team Blog! So, it's obvious that the FBA feature struck the right cord with many people, and practically all Internet facing SharePoint-based web sites use it for authentication.
However, SharePoint lacks several FBA oriented features that would be very useful for both the end users as well as the administrators of a web site. So, I'm very proud to announce that the CKS: Internet Extranet Edition team has just released a pre-Beta version of their FBA solution. The team would very much appreciate testing and feedback on current features as well as what other features would be needed to make the solution complete. The team would like to release a feature complete Beta by the end of next January and then a final release by the end of February. The team's ultimate goal is to provide the de facto shared source FBA solution for SharePoint.
The following CKS team members contributed to this solution of which the web parts and features are shown below:
- Paul Ballard - Program Manager and Developer of the User Login web part and the Membership request feature
- Zac Smith - Developer of the Automated Solution Deployment, User Management, and Role Management features
- Edin Kapic - Developer of the Recover Password and Change Password web parts and the ULS Logging feature
- Brendon Schwartz - Developer of the User Properties feature
- Stacy Draper - Developer of the initial FBA solution, who provided the code base and inspiration for the CKS:IEE team
User Login
This Login web part shown below is extremely customizable including changing prompts and error messages as well as turning on/off links to the Membership Request page or Change Password page. When the user logs in successfully, he or she will see a link under the "Welcome User" control at the top of the page called "My Settings". Clicking on this will let the user change his or her SharePoint user settings.
Membership Request and Management
This Membership Request web part shown below is also highly customizable. In addition to the standard CreateUserWizard controls, it includes fields for the First and Last names as well as a CAPTCHA field to prevent programmatic "bot" registrations. Once a user gets through registration, a notification e-mail will be sent, which states that the registration has been received and is pending.

The Membership Request information is stored in the Membership Request List shown below.
The administrator can then edit the user information by going to the Site Settings page and under Users and Permissions clicking on "FBA Membership Request Management," which displays the page shown below.
When the Membership Request Status goes from Pending to Approved, an e-mail will be sent, notifying the user that the membership request has been approved. The e-mail will also contain a temporary password to be used for initial login to the site. If the Membership Request List Feature is deactivated, then all membership requests will be automatically approved, and the notification e-mail will go out immediately.
Password Management
The Change Password web part shown below allows a user to modify his or her password. All prompts and error messages are customizable.
The Password Recovery web part shown below allows a user to do a password reset by answering the Secret Question in his or her user profile. The web part also allows modification of all prompts and error messages.
User and Role Management
The administrator can modify user information from the Site Settings page by clicking on "FBA User Management", which displays the page shown below. On this page, the administrator can add/modify/inactivate/remove the user.
The New User page is shown below.
If the Roles Feature is activated, the administrator can also add/delete roles (note: these are FBA roles, not SharePoint roles). When Roles are activated, the User Management pages will allow an administrator to add/remove users from roles instead of groups. The Roles feature is not activated by default. The Role Management page is shown below.
Get it now, start testing, and provide feedback!
The CKS:IEE FBA solution is available at https://www.codeplex.com/Release/ProjectReleases.aspx?ProjectName=CKS&ReleaseId=7675. Please provide feedback prefixed with "IEE" via the CKS Issue Tracker (for reproducible bug reports) or the CKS Discussions list (for Q&A and discussions).
<Lawrence />