The CKS:Internet/Extranet Edition is pleased to announce the first pre-Beta release of its Forms Based Authentication solution. This solution contains the following features:
- Automated Solution Deployment - Zac Smith
- Membership request webpart (including CAPTCHA) - Paul Ballard
- Membership request list - Paul Ballard
- Login web part - Paul Ballard
- Recover Password web part - Edin Kapic
- Change Password web part - Edin Kapic
- ULS Logging - Edin Kapic
- User Management - Zac Smith
- Role Management - Zac Smith
- User Properties - Brendon Schwartz
Special Mentions: Stacy Draper for letting us hijack his code and for moral support
How To Use This Solution
1. Setup Forms Based Authentication
While we plan to add administrative features that will make setting up a SharePoint site for FBA much easier, for now you'll need to follow the instructions outlined in Dan Attis' Blog http://devcow.com/blogs/jdattis/archive/2007/02/23/Office_SharePoint_Server_2007_Forms_Based_Authentication_FBA_Walkthrough_Part_1.aspx.
2. Install The FBAManagement Solution File
Unzip FBAManagement.zip onto the file system of the SharePoint server and you will find three files. Deploy/Undeploy command files and the FBAManagement solution file. From the command line enter:
deploy [SharePoint Site URL]
This will install the solution and activate all of the features.
3. Add Webparts to pages
The self registration aspects of this solution include web parts for logging in users, registering new users, requesting a password reset, and allowing a user to change their password. These web parts can be added to any web part page in the site.
This web part is extremely customizable including changing prompts, error messages, and turning on/off links to registration pages or password change pages. When the user logs in successfully they will see a link under the "Welcome User" control at the top of the page called "My Settings". Click on this will let the user change their SharePoint user settings.
This web part is also highly customizable. In addition to the standard CreateUserWizard controls, this registration control adds fields for the First and Last names as well as a CAPTCHA field to avoid programmatic registrations. When a user registers on the site an email will be sent letting them know that their account information has been received and that their membership is pending.
This web part will allow the user to modify their password. All prompts and error messages are customizable.
This web part allows a user to request a password reset by answering the questions they created when the account was registered. This web part also allows modification of all prompts and error messages.
4. Administering Users
New Membership Request
When a user fills out the registration information in the registration web part that information is stored in the Membership Request List. The administrator can then edit the user information by going to Site Settings and under Users and Permissions click on "FBA Membership Request Management". When their status goes from Pending to Approved an email will be sent that will notify the user that they have been approved and will also contain a temporary password for them to use to log into the site. If you deactivate the Membership Request List feature, then all registrants are automatically added to the site and the email goes out immediately.
Modifying a User's Information
The administrator can modify the user information from the Site Settings page by clicking on "FBA User Management". On this page you can add/modify/remove the users. If the roles feature is activated you can also add/delete roles (note: these are FBA roles, not SharePoint roles). When roles are activated the User Management will let you add/remove users from roles instead of groups. The roles feature is not activated by default.