How stable / usable is the SqlRoleProvider & aspnet_regsql?

it is not asp.net, some of these WinForms applications, and will also add some Wpf and maybe some Silverlight applications in the future.

It is currently developing a requirement to include role-based and permission-based access protection in a new application.

.net RoleProviders in general and SqlRoleProvider in particular seem to have everything we need, however some issues around Db Schema change as aspnet_regsql.

I tried a google search but I'm not sure what to ask.

i.e.

  • How simple (or not) will this update be between .net versions?
  • Are .Net 2.0 and .net 3.5 applications happily using the same schemas? Those. can we have .net 2.0 and 3.5 applications with the same permissions in the same Db?
  • How stable are the Sql Security providers, is anyone out there using them in anger? Should you use them?

Am I better off biting the bullet and implementing my own - limited role (which will do whatever I need) and my own custom RoleProvider?

As you can see, I got caught between "not wanting to reinvent the wheel" and "not getting hung up on problems with unknown third-party code" (unknown to me anyway, that's why I'm asking you)

Thanks in advance for your advice and feedback,

Bw

0


source to share


2 answers


I have been using built-in providers for many years (on various projects) with no problem. Nothing has changed since it was launched at 2.0.

If the sql provider does everything you need to go with it, there is little reason to deploy yourself if you don't need additional functionality.



The only thing you might want to pay attention to - and this applies to profile, membership and roles - is the efficiency of the sprocs. If you look at the sprocs, you can see that there is activity on every execution to get data from different tables. For example, almost every request (which I remember looking at), requests for the application for the current request. If you only have one application running in the DB that might be overflowing and subject to change. This article (draft code) by Omar Al Zabir talks about improving the profile.

+3


source


I believe SqlRoleProvider is the way to go. It is highly scalable and easy to configure. If you have already rolled back your tested solution (then why are you posting this question) then this is not a problem.



I agree with webchanix, the system allows multiple applications and does a lot of table scans, but at the end of the day I think we are talking about a rather small performance based on its benefits.

+1


source







All Articles