asp.net 2.0 Login and Membership?

Posts   
 
    
erichar11
User
Posts: 268
Joined: 08-Dec-2003
# Posted on: 21-Jan-2006 09:47:50   

Has anyone implemented the new asp.net 2.0 memberships model using llblgen? I have an asp.net 2.0 app built on llblgen where the user and roles tables are included in the application db. It seems as though one strategy is to store the username and password info along with other user/role data in a seperate database. The other strategy is use to use my existing db implementation and use the provider model to access the data. Anyone have comments on the best strategy to take? I'm so confused.

Is it better to store the user, password and membership info in a seperate db or should I use my existing DB structure where the user, password and membership info is store in the same db as my existing app.

Help!!

alexdresko
User
Posts: 336
Joined: 08-Jun-2004
# Posted on: 23-Jan-2006 16:17:44   

erichar11 wrote:

Has anyone implemented the new asp.net 2.0 memberships model using llblgen? I have an asp.net 2.0 app built on llblgen where the user and roles tables are included in the application db. It seems as though one strategy is to store the username and password info along with other user/role data in a seperate database. The other strategy is use to use my existing db implementation and use the provider model to access the data. Anyone have comments on the best strategy to take? I'm so confused.

Is it better to store the user, password and membership info in a seperate db or should I use my existing DB structure where the user, password and membership info is store in the same db as my existing app.

Help!!

I have. I just have to get permission from the boss man to post the code here. It was really pretty easy.

Posts: 19
Joined: 03-Feb-2006
# Posted on: 03-Feb-2006 11:37:17   

It means you have all data in one table?

erichar11
User
Posts: 268
Joined: 08-Dec-2003
# Posted on: 03-Feb-2006 18:02:34   

No, data is stored in multiple tables. For example, there is a roles table, user table, membership table, application table, etc. You can run the C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727> aspnet_regsql.exe to install the database. Once installed, you can take a look at the schema. I then created a llblgen project using the database. Now I just need llblgenPro to support multiple catalogs which I think it will shortly.smile smile

briankb
User
Posts: 51
Joined: 03-Jun-2007
# Posted on: 13-Jun-2007 00:55:47   

Hey Alexdresko,

Are you able to upload your implementation of the Membership/Role providers?

I'm about to give it a try and it would be a great reference.

luciusism
User
Posts: 119
Joined: 02-Jun-2007
# Posted on: 13-Jun-2007 21:46:27   

Creating the asp.net sqlMembership provider is easy enough (see previous post). Deciding if you should use that or a custom provider is a more difficult question which depends on what you plan on doing. For example, if your app is the only thing that will use the asp.net provider for AAA and you already have a schema mapping out the security principles, then it might make more sense to create a custom provider based off it. Otherwise, I'd recommend using the default asp.net sqlmembership provider. Especially if you'll ever have more than one app.

For example in our case, we want to use the sqlMembership provider b/c sharepoint 2007, Community Server 3.0 and others are using it out-of-the-box. If I had my own custom provider, then it would have taken much more time to get the different apps to use it.

As far as where llblgen comes in... not sure if I understand that part of the question. the sqlMembership provider db schema is just like any other, add it to llblgen and start using it as objects. Though I recommend that you have a strong understanding of what asp.net does (i.e, what the stored procs do) before editing data via llblgen. Wherever possible, I'd recommend using asp.net's own object model. (for example, instead of creating a role via llblgen aspnet_roles entity, use the Roles object to create your role)

briankb
User
Posts: 51
Joined: 03-Jun-2007
# Posted on: 13-Jun-2007 22:40:39   

LLBLGen will just make it easier to extend or fully customize the providers.

In my case I will probably just extend the default SQL providers instead of overriding all of the methods and properties. I just want to have each profile property in it's own column and found a good article on doing just that. http://www.theserverside.net/tt/articles/showarticle.tss?id=CreatingProfileProvider it seems a bit complex but I just looked over it last night. I've seen similar articles on just extending the default membership provider as well.

luciusism
User
Posts: 119
Joined: 02-Jun-2007
# Posted on: 13-Jun-2007 22:49:39   

thanks for the follow-up post, will look into that link.

P.S. Nice avatar. Trying to scare the kids away? smile

briankb
User
Posts: 51
Joined: 03-Jun-2007
# Posted on: 13-Jun-2007 22:56:18   

Hopefully not too much. wink

Seth avatar
Seth
User
Posts: 204
Joined: 25-Mar-2006
# Posted on: 20-Jul-2007 00:18:29   

In several projects I have been a part of, I simply inherited from MembershipProvider, ProfileProvider, and RoleProvider. The projects simply needed the ASP.NET security so I only needed to implement a few of the methods in each of the classes in order to get the security level I needed. A couple of inserts into the web.config file were also needed. A lot of the methods really were unnecessary since I was doing the user management through a different interface. I could post them if you like. They use the adapter model.

briankb
User
Posts: 51
Joined: 03-Jun-2007
# Posted on: 20-Jul-2007 04:59:27   

That would be very helpful. It is on my to do list to create a custom membership and profile provider and your examples would be very helpful.

Seth avatar
Seth
User
Posts: 204
Joined: 25-Mar-2006
# Posted on: 21-Jul-2007 06:09:16   

I am afraid you are going to laugh at how simple it really is.... (Like I said, I only needed to override a couple of things. If I remember right, there is still the default throw exception things in there. It is also very rudimentary. There is a one to many from the EmployeeType (Role) to Employee (User) table. So an employee could only have one role).

Here is a zip file: http://www.strivea.com/Security.zip

There are the three classes that override the profile, role, and membership providers as well as the web.config xml fragments that allow asp.net to use it. If you would like to see the project I did it is located at:

http://www.cleverproject.com A user I set up is: User: LLBL@LLBL.com Pwd: password

I gave minimal permissions. It is an app I wrote for school and simply havent had time to polish it up and finish it all the way. (It took a couple of weekends to do).

It uses LLBLGen DAL, custom Business tier, and Telerik presentation layer. Have fun!

-Seth

briankb
User
Posts: 51
Joined: 03-Jun-2007
# Posted on: 21-Jul-2007 06:39:08   

Very nice. I'll have a look at your code tomorrow as I'm about to fall out at the moment. But I wanted to say that app looks very nice and easy to use.

I give you an solid 10 on domain name, very clever!