Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 побочный эффект DENY CONTROL  [new]
o-o
Guest
люди, у меня уже крыша едет, объясните, кто может.
ситуация все та же: в базу отмаплена виндовая группа, она в базе db_owner.
отмаплены также индивидуальные учетки из той же группы.
индивидуальной учетке соседа делаю явный DENY CONTROL:
deny control on database::BASEDATI_BI to [esp\ee26245]

выполняется.
хочу посмотреть, что осталось у этого юзера. облом-с:
execute as user = 'esp\ee26245'
select * from sys.fn_my_permissions(null, 'DATABASE')


Msg 916, Level 14, State 1, Line 1
The server principal "esp\ee26245" is not able to access the database "BASEDATI_BI" under the current security context.


прошу соседа, у чьей учетки отобран на базу, (esp\ee26245) законнектиться.
хих, на сервер пускает, в базу НЕТ.
ФИГАСЕБЕ. ОТОБРАЛСЯ CONNECT НА БАЗУ У DB_OWNER-А?
проверяю, остался ли он как database_principal. остался.
select *
from sys.database_principals
where name = 'esp\ee26245'
------------------------------
name	principal_id	type	type_desc	default_schema_name	create_date	modify_date	owning_principal_id	sid	is_fixed_role
ESP\EE26245	506	U	WINDOWS_USER	ESP\EE26245	2013-11-26 15:21:50.563	2013-11-26 15:21:50.563	NULL	0x010500000000000515000000BE043E3237DA950F828BA628FF380300	0

интересно, что у него поменялась дата создания.
на сейчас поменялась. т.е. моих рук дело.
но его никто не дропал и не создавал.
только и делаю, grant control/deny control.
что за фигня? у вас воспроизводится?
27 ноя 13, 18:24    [15200965]     Ответить | Цитировать Сообщить модератору
 Re: побочный эффект DENY CONTROL  [new]
o-o
Guest
точно, "крыша едет". дата вчерашняя, время совпало
не, не меняется дата при grant control/deny control.
а почему вчера юзер пересоздался, уже и не помню.
но все остальное в силе.
отбираю намертво права у db_owner-а.
он себе не смог выдать ничего, в базу не попадает, и из мастера не канает:

Msg 4610, Level 16, State 1, Line 1
You can only grant or revoke permissions on objects in the current database.
27 ноя 13, 18:51    [15201128]     Ответить | Цитировать Сообщить модератору
 Re: побочный эффект DENY CONTROL  [new]
o-o
Guest
DENY (Transact-SQL)

Caution note
Caution

Denying CONTROL permission on a database implicitly denies CONNECT permission on the database. A principal that is denied CONTROL permission on a database will not be able to connect to that database.

ну это и наблюдаю.
вот вам и способ обломать "непрямого" db_owner-а.

т.е. аналогично отбиранию CONNECT-a к серверу индивиду,
проникающему на сервер через группу.

если DB_OWNER не "в чистом виде", а всего лишь член группы- DB_OWNER-а,
то индивидуальной учетке можно устроить DENY CONTROL,
выкинув абсолютно из базы.
27 ноя 13, 20:04    [15201595]     Ответить | Цитировать Сообщить модератору
 Re: побочный эффект DENY CONTROL  [new]
o-o
Guest
да вообще у любого db_owner-а все отбирается посредством DENY CONTROL.
пофиг, "групповой" он или просто.
любой db_owner у всех остальных db_owner-ов спокойно отбирает CONNECT, исполняя DENY CONTROL.
и если на сервере ты никто, попробуй в базу вернись.
28 ноя 13, 20:12    [15208252]     Ответить | Цитировать Сообщить модератору
 Re: побочный эффект DENY CONTROL  [new]
o-o
Guest
цитата из темы однодневной давности:
invm
ЗЫ: Нельзя db_owner'ов чего-либо лишить - они всегда могут себе это вернуть.


вот и не всегда.
db_owner-а можно лишить коннекта двумя способами:
DENY CONNECT
DENY CONTROL
попробуй себе что-то верни, не попавши в базу.
конечно, если ты еще и sysadmin, другое дело.
а обычный db_owner вылетает из базы и привет.

монолог у меня тут какой-то, обидно даже
28 ноя 13, 23:31    [15208937]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить