Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeOur CommunityOur CommunityGeneral Discuss...General Discuss...Duplicate usernames in different portalsDuplicate usernames in different portals
Previous
 
Next
New Post
2/28/2006 8:15 PM
 

Hello everyone.  I am in a situation where I need to add users into different portals with the same username but different passwords.  These are different users and there is no need in my implementation for a user from one portal to authenticate on a different portal. I'm currently using 3.2 and this scenario does not work, adding a user with the same username but different password fails with an invalid username message.

I am trying to determine if this is a Membership provider or a DNN limitation, or possibly just a DNN bug.  I spent some time looking at the UserController.vb,  the signin control,  the membership docs, and the stored procedures behind all of these functions and I don't see why this scenario wouldn't be supported.

From what I saw, all authentication happens passing in the PortalId, which is translated into the ApplicationId which make the username/password/applicationid  completely unique.  When adding users in different portals the data always seems to be stored with an ApplicationId that corresponds to the correct portal, so adding users seem to work as I would expect it.

The only place I see the problem is in the adduser routine.  It calls getuserbyname with a null portalid to check for a conflict with a superuser, which makes sense.  If it returns any rows, it also uses the membership validate routine to see if they are already registered in that portal.  That makes sense, but what doesn't make sense as why it fails at that point just because there is a username in another portal.

Is this a backward compatability issue?  Can anyone let me know what I'm missing or if they think it would be safe to rewrite that piece of code to allow the duplicates.

Thanks for any advice.  

Steve

 

 

 

 
New Post
3/1/2006 11:19 AM
 
I'm glad to see you did some of the leg work. I have been trying to figure this issue out on my own for quite some time. Has anyone else looked into this? Let us know what you found out, I can really use this functionality.
 
New Post
3/3/2006 9:49 AM
 

By the lack of responses I'm guessing this hasn't come up much before.  Can anyone direct me to a dnn cosultant who has experience with the dnn membership.  I'd gladly pay a couple hours of consulting time to confirm I'm not going to make a huge mistake by changing the code to allow duplicates username in different portals.

 
New Post
3/3/2006 11:48 AM
 
I haven't dealt with the DNN membership a ton, but I would recommend against it because of a couple APIs - mainly the "GetUserByUsername" function.  Also, with DNN, the way it handles authentication is that users from one portal can be created in another portal, but only if the passwords match.  Can you share a little more about your scenerio?
 
New Post
3/3/2006 2:07 PM
 

I don't know why this was originally designed this way, as I did not do it.  However, I have classicly seen it as a potentially good thing rather than a bad.  My company does a lot with large organizations that have many locations.  We give each one of those locations their own portal.  This allows each location to have some autonomy but also be connected to the overall host.  A particular person may register in multiple locations and have different permissions in each portal.  However, it is useful for that user to have a single, common username throughout them all.  DNN forces this to happen because it will not let some other random person come in and register using a username that is already taken, unless it is the person who 'owns' that username and knows the current password.  We have used it sort of as a little universal identity system for a DNN host (like Microsoft Passport or AOL Screen Name Service). 

Now, the fact that it works this way is not very clear, and I would say the user experience should be less confusing.  I have seen the 'owner' of a username try to register on a new portal, and if they forgot their password on the other portal or happened to use a different one, they get very confused by the fact that the portal tells them the username already exists.  When they see that error, many people then backout and try to login, but that doesnt work of course because that username is not registered on the current portal.  I think that for this to work properly, the login and registration should be prompt the user with a different screen notifying the user that they are registered on a different portal in the 'network'.  If the password the entered is incorrect, they should be prompted to enter their correct password and allow them to get reminded of their password.  Once they do verify the password, they should be prompted as to whether or not they want to share their data from the other portal with the new portal.  There are other implications around branding the login as a common host wide 'xyz organization login' and some issues around the lack of management of a users profiles across portals, but overall, the current way the dnn membership operates does work in some situations.

For your situation, it sounds like these are totally seperate portals/organizations, and any sort of cross portal registration does not make sense, as each organization will want the own very unique identity.  If that is the case, I don't know of any way to configure DotNetNuke to not behave how you descibe without modifying the code.  I do know that there are some alternate Membership Providers out there.  They may allow you to do this, I don't know.  Perhaps someone else can chime in here if they know of another way around this.

 
Previous
 
Next
HomeHomeOur CommunityOur CommunityGeneral Discuss...General Discuss...Duplicate usernames in different portalsDuplicate usernames in different portals


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out