Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 SQL Server 2000 Forums
 SQL Server Administration (2000)
 Multi-level access

Author  Topic 

cyorka
Starting Member

7 Posts

Posted - 2003-05-05 : 10:11:47
I am wondering if anyone could address a specific challenge I have:

I need to create a set of logins, users, and/or roles that will accommodate three levels of database access across three different servers. Going from highest to lowest, the levels are as follows:

Level 3: Access to all databases (multiple servers)
Level 2: Access to different subsets of databases (could be multiple servers)
Level 1: Access to one database (one server)

We currently are using SQL Server authentication with a unique login for each database (we’ll eventually move to Windows authentication). A user connects to SQL Server through a front-end application using an existing database login and will have only one level of access.

If possible we’d like to keep the existing logins (one per database), but now allow this multi-level access. I’m thinking a second connection will have to be made with a different login allowing the specific level of access?

Any input would be appreciated.


efelito
Constraint Violating Yak Guru

478 Posts

Posted - 2003-05-05 : 10:21:45
Have you looked into Application Roles? You assign the different access levels to three different app roles. When a user connects, you determine which set of rights they should have and then execute the appropriate app role. When the app role is executed, the connections current set of permissions are dropped and the connection is assigned the rights of the app role. Check BOL for more details.


Jeff Banschbach, MCDBA
Go to Top of Page

cyorka
Starting Member

7 Posts

Posted - 2003-05-07 : 12:28:17
Thanks for the feedback.

Unfortunately, I don't think this will work for me since I need the logins to access multiple databases. If I'm understanding correctly, the application role applies to one database, and the "guest" user has to be in the other databases for the role to gain access. As a result, the application role cannot distinguish between what databases it can access and which ones it cannot, since all databases will have the guest user.

Go to Top of Page
   

- Advertisement -