Solved

asp.net users with same username

Posted on 2010-08-24
9
278 Views
Last Modified: 2012-05-10
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.
 
0
Comment
Question by:Soluga
  • 6
  • 2
9 Comments
 
LVL 7

Expert Comment

by:Alpha Au
ID: 33509276
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
 
LVL 52

Expert Comment

by:Carl Tawn
ID: 33509284
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
 
LVL 1

Author Comment

by:Soluga
ID: 33509358
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
Active Directory Webinar

We all know we need to protect and secure our privileges, but where to start? Join Experts Exchange and ManageEngine on Tuesday, April 11, 2017 10:00 AM PDT to learn how to track and secure privileged users in Active Directory.

 
LVL 52

Expert Comment

by:Carl Tawn
ID: 33509386
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
 
LVL 1

Author Comment

by:Soluga
ID: 33509426
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
 
LVL 1

Author Comment

by:Soluga
ID: 33509446
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
 
LVL 1

Author Comment

by:Soluga
ID: 33509658
I can use.....
 Membership.ApplicationName = "test" but that is all so far!
0
 
LVL 1

Author Comment

by:Soluga
ID: 33510281
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
 
LVL 1

Accepted Solution

by:
Soluga earned 0 total points
ID: 33510507
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

Featured Post

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.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this Article, I will provide a few tips in problem and solution manner. Opening an ASPX page in Visual studio 2003 is very slow. To make it fast, please do follow below steps:   Open the Solution/Project. Right click the ASPX file to b…
IntroductionWhile developing web applications, a single page might contain many regions and each region might contain many number of controls with the capability to perform  postback. Many times you might need to perform some action on an ASP.NET po…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

828 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question