Because MOSS 2007 supports the ASP.NET membership provider model there are new worlds in which SharePoint can tread that it has not be able to in the past. Specifically, MOSS 2007 represents a fantastic platform for the presentation of a public internet web presence. In fact, there is a site template that allows for the establishment of a public web site. In order to successfully present a public site, there are several considerations that had to be added to MOSS to enable this. Foremost is the degree of integration with ASP.NET 2.0 features. Specifically, for a internet web site that presents secure content, MOSS will support Forms authentication with ASP.NET 2.0 Membership and Role providers. Whenever there is an established Active Directory in the DMZ (as is becoming really populare for auditability, group and user membership and provisioning and management, etc.) MOSS can use Active Directory as its ASP.NET Membership provider store thorugh the ActiveDirectoryMembershipProvider found in ASP.NET 2.0.
Challenge: Allowing public internet users to connect to a public web site hosted in MOSS 2007 using Forms authentication and Active Directory as the information store
Solution: Configure MOSS 2007 to support forms authentication with the Active Directory Membership provider
Result: Users can now log into a public web site without NTLM prompts and using a custom login page and have their security credentials established using Active Directory
TODO: Determine if the full MOSS user profile is available. It seems that some of it is, but further testing and customization testing is required.
Implementation Details:
<connectionStrings> <add connectionString=LDAP://win2003eebase.charrandev.com/CN=Users,DC=charrandev,DC=com name="ADServices"/></connectionStrings>
<membership defaultProvider="ADProvider"> <providers> <add name="ADProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="ADConnString" connectionUsername="charrandev.com\Administrator" connectionPassword="password" attributeMapUsername="SAMAccountName"/>
</providers></membership>
You should now be able to visit the site and get prompted for forms authentication based on a standard login form that MOSS/WSS maintains for forms authentication. Ostensibly, you can modify this page, or supplant another page using SharePoint Designer 2007.