asp.net users with same username

Hi,
I am writing an application that allows multiple companies to use the application, I was planning on using the Applications table to hold the company names and so allow for example, two seperate companies to have users with the same user name, this would also allow me to use the multiple built in membership classes. But I just found this on the microsoft site, so I am presuming this is not a good idea. Is there an alternative to this?

Caution
Because a single default membership provider instance is used for all of the requests served by an HttpApplication object, you can have multiple requests executing concurrently and attempting to set the ApplicationName property value. The ApplicationName property is not thread safe for multiple writes, and changing the ApplicationName property value can result in unexpected behavior for multiple users of an application. We recommend that you avoid writing code that allows users to set the ApplicationName property, unless you must. An example of an application where setting the ApplicationName property may be required is an administrative application that manages membership data for multiple applications. Such an application should be a single-user application and not a Web application.
 
LVL 1
SolugaAsked:
Who is Participating?
 
SolugaConnect With a Mentor Author Commented:
It appears I will have to create a provider for each section to reflect the company in the web config like so...

http://www.dotnetmonster.com/Uwe/Forum.aspx/asp-net-security/3911/Membership-ApplicationName-and-thread-safety 
0
 
Alpha AuCommented:
is it good to hold different company data in a single db?
or you can maintain multiple instance of your server to hold different company data?
0
 
Carl TawnSystems and Integration DeveloperCommented:
I don't really think that should affect you. It is simply warning about changing an Applications name, rather than simply using multiple applications. Changing the name isn't really something you should need to do in this scenario.
0
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
SolugaAuthor Commented:
So I need to be able to set the application name property for the membershipProvider, the roleProvider and the profileProvider when a user logs in. Is there a way of doing this?
0
 
Carl TawnSystems and Integration DeveloperCommented:
How are you planning on determining which company is accessing the site? Are you using two seperate entry points with a shared code base?
0
 
SolugaAuthor Commented:
I have a seperate company details table that holds a general company ID number, when a user logs in, they have to enter the company id number, their username and password. A class then returns the applicationID which if correct can be used to authenticate the users in the membership table.
0
 
SolugaAuthor Commented:
So if the users in authenticated, I need to be able to set the application name property for the membershipProvider, the roleProvider and the profileProvider
0
 
SolugaAuthor Commented:
I can use.....
 Membership.ApplicationName = "test" but that is all so far!
0
 
SolugaAuthor Commented:
Getting closer....

Dim roleprovider As RoleProvider = New SqlRoleProvider
 Dim profileProvider As ProfileProvider = New SqlProfileProvider
 Dim memberProvider As MembershipProvider = New SqlMembershipProvider

roleprovider.ApplicationName = "test"

profileProvider.ApplicationName = "test"


memberProvider.ApplicationName = "test"
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.