пользователям назначена роль sql azure

Я пытаюсь убедиться, что всем пользователям была назначена определенная роль. Есть ли какой-либо вид или SQL-запрос для получения этой информации?


person user682732    schedule 06.10.2011    source источник


Ответы (2)


Представления изменили имена, но следующее должно работать с SQL Azure.

select m.name as Member, r.name as Role
from sys.database_role_members
inner join sys.database_principals m on sys.database_role_members.member_principal_id = m.principal_id
inner join sys.database_principals r on sys.database_role_members.role_principal_id = r.principal_id
person gplwhite    schedule 20.02.2012
comment
Этот ответ - именно то, что требуется в SQL Azure (для которого вопрос помечен). - person James Skimming; 20.05.2013

Я считаю, что в приведенном ниже запросе должны быть перечислены пользователи и роли одной базы данных.

select b.name as USERName, c.name as RoleName  from dbo.sysmembers a   join dbo.sysusers b   on a.memberuid = b.uid join dbo.sysusers c  on a.groupuid = c.uid

Или для всех БД в экземпляре SQL вы можете использовать sp_MSForEachDB

Exec dbo.sp_MSForEachDB 'select ''?'' as DB, b.name as USERName, c.name as RoleName  from dbo.sysmembers a   join dbo.sysusers b   on a.memberuid = b.uid join dbo.sysusers c  on a.groupuid = c.uid'
person Rob Knight    schedule 29.11.2011