Bil Simser has an excellent post comparing Sharepoint and DotNetNuke (DNN) for hosting web sites. He also references another article by Richard Dudleys which you should check out as well.
As I mentioned in Web Site solutions that run on .Net, I decided to go the DNN route for at least two of my public Internet projects ( more on those later ). I needed control of the following three features:
User authentication and authorization
As Bil mentioned, the Sharepoint authentication mechanism uses Active Directory and prompts for user credentials by using a Windows login dialog. The interface with AD wasn't a big issue for me as I could run the Sharepoint sites in AD Creation Mode. The issue was the fact that I wanted users to log in via their email address using a web page. This is not easily done in Sharepoint. You can create a CustomAuth.dll to handle it or purchase third party solutions such as Infogenic, but in the end, you're making Sharepoint do something that it really wasn't intended to handle. Plus the fact that it looks like you would introduce scalability issues at some point in the project's life cycle.
Secondarily, Sharepoint has an "interesting" security model where it lets a user attempt a task and if that task is outside of their security role, it will tell them access denied. I much prefer not to show the users anything outside of their role. It tends to limit support calls that way. :)
DNN has a true role-based forms authentication system that allows the Administrator to define who can do (and see) what. DNN v4.x was upgraded to utilize role-based membership system that ships standard with .NET 2.0.
Sharepoint v3.0 will support more than just Windows Integrated security and should solve this problem.
Look and Feel
As you probably know by now, the look and feel of a web site can make it a success or failure. Not only just the overall design elements, but the site navigation as well.
Due to the architectural differences between the two products, I think the DNN "skins" model vs. Sharepoint's templates and themes shows a decided advantage toward DNN. This will all change when Sharepoint v3.0 ships due to its incorporation of .NET 2.0 Master Themes
Extensibility
If I need to, how hard is it to extend the platform's capabilities? DNN uses a "module" concept while Sharepoint has its "webpart." Both offer the developer extensive tools for creating enhancements and there are a multitude of vendors for each. I have tons of experience dealing with Sharepoint webparts and none at all with DNN modules, so I'm not exactly sure how things will go as my DNN design and implementation proceeds. At least the module use and creation process is fairly well documented and many of the commercially-available modules come with source code so it's pretty easy to change the module to suit your requirements.
In Conclusion
If you're in a similar situation and contemplating portal development where you want to focus on the solution, and not writing a web site, you should read these articles.
While I think that DNN, as it stands today, is a great platform for solution development, I continue to hold out hopes that Sharepoint v3.0 will be to ideal platform solution that I have been looking for.
Leave a reply