With ExCM - SE, before either invited or uninvited users may access your site they must first visit a user registration page and provide a username, password, and password recovery question. Uninvited users must also provide their e-mail address on the registration page (an invited user's e-mail address is already known). You can extend the user registration page with custom data fields to gather additional information about a new user when he or she registers for access to your site.
ExCM - SE leverages the ASP.NET Profile provider to manage user profile data. The Profile provider in ASP.NET stores and retrieves information about your site’s users by using profile field definitions located in the web application’s web.config file. The following is a simple profile with FirstName, LastName, CompanyName, PhoneNumber, Birthday and "opt in" check box properties.
<!-- profile provider -->
<profile defaultProvider="AspNetSqlProfileProvider" enabled="true">
<providers>
<clear />
<add name="AspNetSqlProfileProvider" connectionStringName="PartnerUsersSqlConnString" applicationName="/" type=" System.Web.Profile.SqlProfileProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</providers>
<properties>
<add name="FirstName" customProviderData="DisplayName=First Name;Order=1;IsRequired=true;" />
<add name="LastName" customProviderData="DisplayName=Last Name;Order=2;IsRequired=true;" />
<add name="CompanyName" customProviderData="DisplayName=Company Name;IsRequired=true;Order=3" />
<add name="PhoneNumber" customProviderData="DisplayName=Phone Number;ValidationRegularExpression=((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4};ValidationErrorMessage=Invalid Format xxx-xxx-xxxx;Order=4" />
<add name="Birthday" type="System.DateTime" customProviderData="DisplayName=Birthday;Order=6" />
<add name="OkToEmail" type="System.Boolean" defaultValue="true" customProviderData="DisplayName=OK to E-mail?;Order=5" />
</properties>
</profile>
The profile definition should be placed within the <system.web/> element of the web.config file. In this example, the profile provider we have defined is named 'AspNetSqlProfileProvider', and connects to its storage database using 'SoftwareDivisionSqlConnString' as its connection string. If you are using forms based authentication (FBA) for your SharePoint web appplication, this is probably the same connection string you have defined for FBA.
As you can see in the example, six additional user profile fields called 'FirstName', 'LastName', 'CompanyName', 'PhoneNumber', 'Birthday' and 'OkToEmail' are defined. Severeal of these fields have the 'IsRequired' flag set to true, indicating they are required. The 'PhoneNumber' field has a DisplayName of 'Phone Number' and although this field is not required, it does have a regular expression-based validator to ensure that the user enters his or her phone number in the correct format.
The result of this example profile configuration can be seen in the following screen shot taken from the user registration page (/_layouts/SPSolutions/Delegation/Register.aspx) of ExCM - SE:

Each profile property field defaults to being a String (text) data type. However, ExCM - SE also supports Boolean and DateTime property field types. The Boolean field is displayed to users as a check box, and the DateTime field as a calendar picker.