Thursday, October 25, 2007

DotNetNuke 4.6 custom provider

Today I started developing a custom provider for DotNetNuke 4.6. The new provider shall authenticate users against a Lotus Notes Directory instead of an active directory.
My approach is to inherit the new Active Directory provider that has been developed for DNN 4.6 and override the necassary methods:

public class LDAPAuthenticationProvider: DotNetNuke.Authentication.ActiveDirectory.AuthenticationProvider
{
public override Array GetAuthenticationTypes()
{
throw new NotImplementedException();
//Provider.Membership.LDAPProvider.LDAPAuthenticationProvider
}
public override System.Collections.ArrayList GetGroups()
{
throw new NotImplementedException();
}
public override string GetNetworkStatus()
{
throw new NotImplementedException();
}
public override DotNetNuke.Authentication.ActiveDirectory.UserInfo GetUser(string LoggedOnUserName)
{
throw new NotImplementedException();
}
public override DotNetNuke.Authentication.ActiveDirectory.UserInfo GetUser(string LoggedOnUserName, string LoggedOnPassword)
{
throw new NotImplementedException();
}
public override bool IsAuthenticationMember(DotNetNuke.Authentication.ActiveDirectory.GroupInfo AuthenticationGroup, DotNetNuke.Authentication.ActiveDirectory.UserInfo AuthenticationUser)
{
throw new NotImplementedException();
}
}


in the web.config I'll add the the provider:

add name="LDAPLDAPAuthenticationProvider" type="Provider.Membership.LDAPProvider.LDAPAuthenticationProvider" />

If I can tie it all together I'll probably share the code on codeplex or such.
/J.

No comments: