SQL Server 2005: права доступа типа - Control

?????? ?? ?? ???…

 

? SQL Server 2005 ???????? ???? ???????????? ????? ?????? ???? Control ? ??????? (???????, ???? ? ?.?.), ??????? ?????????? ???? ?? ?? ?????, ??? ? ? ???????????? ???????.

?????? :

GRANT CONTROL

ON t_Table TO Uesr1

GO

Control ????? ????????? ???????????.

?????? ??????? ?????????????? ???? ??????? ? ??????? ?????????????? ?????? ????????, ?? ??????, ???? ? ?????????? ??? ????? ????? ???????? ? ?????????????? ????? Cascade.

????????:

1. ???????????? User1 ??? ????? ??????? ???? Select ? ??????? Table ???????????? User2;

2. ????? ???????????? User1 ?? ??????? ? ??????? Table ???? ???????? ? ?????????????? ????? Cascade;

3. ? ?????????? User2 ????? ??????? ???? ??????? ? ???????.

? Control???????? ???????? ?????.

?????? :

1.???????? ??????? ??? ????? ??????? ? ??????? ???? Control ???????????? User1 ? ?????????????? ????? GRANTOPTION;

2.???????????? User1 ??? ????? ??????? ???? Control ???????????? User2;

3.????? ???????????? User1 ?? ??????? ? ??????? ???? ???????? ? ?????????????? ????? Cascade;

4.???????????? User2 ??-???????? ????? ????? Control ?? ??????.

Grant Control on T

to usr1

WITH GRANT OPTION

go

Execute as user = 'usr1'

go

Grant Control on T

to usr2

go

REVERT

go

Revoke Control on T

from usr1 Cascade

go

--Usr2 ??-???????? ????? ????? Control ?? T

??? ?????? ??? ????????…

???? ?????????, ????? ????? Control ???? ???????? ? ???? ?????????????, ??????? ?? ??? User1, User1 ?????? ???? ???? ?????? ? ?????? ?????????????? ???? ??????? ????????????:

Grant Control on T

to usr2

as usr1

go

Comments

  • Anonymous
    January 01, 2003
    Cпасибо за интересное замечание, оно навело меня на определенные мысли: правильно ли будет сказать, что в общем случае, если user имеет effective permission CONTROL на объект, то разрешения на этот объект , данные им другим user'ам , будут фактически выданы от владельца этого объекта (то есть , в поле grantor будет указан owner этого объекта)??? Если так, то почему, кстати??