Re: SQL 2000 Windows Authentication - Same User Multiple Groups



We want to allow Dan to execute both the SelectResearch and
UpdateResearch stored procs. However, because we have denied the
Resarch group (of which he is also a member), he won't be able to
execute UpdateResearch.

Due to the "additive" nature of SQL integrated/Windows permissioning,
is there a workaround to the "same user in different groups with
different object permissions" issue?

Personally, I use GRANTs almost exclusively and avoid explicit DENY except
in special cases. IMHO, GRANTs are easier to understand and manage.

It's unclear to me why you explicitly denied execute on UpdateResearch to
the Research group in your example. If you were to revoke this deny
permission from Research, it seems to me you would achieve the desired
result; Bob could not execute the proc because he is a member of only
Research yet Dan could because of his IT role membership. Is there another
scenario in your environment that requires the deny?

--
Hope this helps.

Dan Guzman
SQL Server MVP

<d_lepre@xxxxxxxxxxx> wrote in message
news:1155912277.053570.244930@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
We have a SQL 2000 server with multiple databases. We currently manage
security at the user level but we're trying to clean things up and move
to using integrated Windows groups.

My question is: what is the best practice for assigning stored proc and
view-level permissions such that we can permit/deny a database action
on the same database object for a user that belongs to more than one
Windows group?

For example ... we have a Research database that is used by 2 groups of
Windows users: Research and IT. Bob is a member of Research but not
IT. Dan is a member of both Research and IT. There are 2 stored
procedures in Research: SelectResearch (performs a select against 1
table) and UpdateResearch (performs an update to 1 table) ... we have
assigned Execute permission on SelectResearch to Research and IT and
Execute permission on UpdateResearch to only IT (and explicitly Denied
to Research).

Due to his group membership, Bob will be able to execute SelectResearch
but not UpdateResearch ... easy enough because Bob is only in one
Windows group and we have assigned the appropriate group permissions on
each of the procs.

We want to allow Dan to execute both the SelectResearch and
UpdateResearch stored procs. However, because we have denied the
Resarch group (of which he is also a member), he won't be able to
execute UpdateResearch.

Due to the "additive" nature of SQL integrated/Windows permissioning,
is there a workaround to the "same user in different groups with
different object permissions" issue?

FYI - we looked into Application roles but they would involve code
changes and we understand that there are connection pooling and other
ADO issues that might cause problems with some of our legacy (COM+/VB6)
applications.



.



Relevant Pages

  • Re: SQL 2000 Windows Authentication - Same User Multiple Groups
    ... App1 contains CRUD functionality using stored procs (EXEC perms on ... UpdateResearch stored procs. ... execute UpdateResearch. ... view-level permissions such that we can permit/deny a database action ...
    (microsoft.public.sqlserver.security)
  • Re: SQL 2000 Windows Authentication - Same User Multiple Groups
    ... App1 contains CRUD functionality using stored procs (EXEC perms on ... Resarch group (of which he is also a member), ... execute UpdateResearch. ... view-level permissions such that we can permit/deny a database ...
    (microsoft.public.sqlserver.security)
  • SQL 2000 Windows Authentication - Same User Multiple Groups
    ... view-level permissions such that we can permit/deny a database action ... Execute permission on UpdateResearch to only IT (and explicitly Denied ... Windows group and we have assigned the appropriate group permissions on ...
    (microsoft.public.sqlserver.security)
  • Re: cant block delete permissions
    ... If you have any roles apart from db_datareader and db_datawriter revoke ... Now execute the delete statatement on that table. ... opened the table's 'manage permissions' dialog and explicitly denied delete ... We looked at her database role membership and saw that she was a member of ...
    (microsoft.public.sqlserver.security)
  • Re: Application execution?
    ... The first place would be to check permissions of the folder for the ... a computer as a regular user and then use runas to execute filemon/regmon ... of aministrator group can execute my .net application, ... member of users or power users .net apllication can't execute. ...
    (microsoft.public.win2000.security)