SQL явные и неявные разрешения - PullRequest
0 голосов
/ 14 марта 2012

Если по умолчанию 'sa' учетная запись имеет sys_admin permissions для всего экземпляра SQL и всех его баз данных.На самой базе данных, если у меня не включено разрешение db_datareader, я бы предположил, что оно не нужно, как это подразумевается, но мне было интересно в .net, есть ли способ проверить, явно ли было db_datareaderвключен, а не только подразумевается, что 'sa' является sys_admin.

1 Ответ

1 голос
/ 14 марта 2012

поэкспериментируйте с каталогом syspermissions:

SELECT u.name, o.name
FROM syspermissions p, sysobjects o, sysusers u
WHERE p.id = o.id
AND u.uid = p.grantee
AND o.xtype = 'U' --user

Кроме того, вы можете использовать эти сценарии, чтобы получить разрешения для вашего имени пользователя / логина пользователя на сервере / базе данных

SELECT * FROM fn_my_permissions(NULL, 'SERVER');

SELECT * FROM fn_my_permissions (NULL, 'DATABASE');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...