Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 revoke impersonate, control, alter, view definition  [new]
tmak7
Member

Откуда:
Сообщений: 3
Пытаюсь удалить пользователя, появляется ошибка 15284 (Участнику базы данных предоставлены или запрещены разрешения на доступ к объектам базы данных)
SELECT * FROM sys.database_permissions
WHERE grantor_principal_id = DATABASE_PRINCIPAL_ID('vdn\vp6206')

class class_desc major_id minor_id grantee_principal_id state state_desc
----- ------------------------------------------------------------ ----------- ----------- -------------------- ----- ----------
4 DATABASE_PRINCIPAL 11 0 9 G GRANT
4 DATABASE_PRINCIPAL 11 0 9 G GRANT
4 DATABASE_PRINCIPAL 11 0 9 G GRANT
4 DATABASE_PRINCIPAL 11 0 9 G GRANT
SELECT * FROM fn_my_permissions('vdn\vp6206', 'USER');

entity_name permission_name
----------------------------------------------------------------------------- ----------------------------------
vdn\vp6206 IMPERSONATE
vdn\vp6206 VIEW DEFINITION
vdn\vp6206 ALTER
vdn\vp6206 CONTROL
SELECT PRINCIPAL_ID,
 NAME,
 TYPE_DESC,
 IS_DISABLED
FROM sys.server_principals 
WHERE PRINCIPAL_ID = 9

PRINCIPAL_ID NAME TYPE_DESC IS_DISABLED
------------ --------------------------------------------------------------------------------------------------------------------------------
9 dbcreator SERVER_ROLE 0
5 янв 10, 10:39    [8148457]     Ответить | Цитировать Сообщить модератору
 Re: revoke impersonate, control, alter, view definition  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381

> Пытаюсь удалить пользователя, появляется ошибка 15284 (Участнику базы
> данных предоставлены или запрещены разрешения на доступ к объектам базы
> данных)

тут перевод неправильный, насколько мне помнится. не "участни_ку", а "участни_ком".
первый запрос, собственно, как раз и показывает, какие у кому разрешения
предоставил ваш 'vdn\vp6206'. кому - grantee_principal_id = 9.

> SELECT * FROM sys.database_permissions
> WHERE grantor_principal_id = DATABASE_PRINCIPAL_ID('vdn\vp6206')

только его среди database_principals искать надо. вы среди серверных
почему-то смотрите.

а этот запрос и его результаты:

> SELECT * FROM fn_my_permissions('vdn\vp6206', 'USER');

к делу отношения вообще не имеют.

Posted via ActualForum NNTP Server 1.4

6 янв 10, 15:12    [8152196]     Ответить | Цитировать Сообщить модератору
 Re: revoke impersonate, control, alter, view definition  [new]
tmak7
Member

Откуда:
Сообщений: 3
daw,
Спасибо за помощь! sys.database_principals рулит)))
11 янв 10, 09:07    [8163462]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить