Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Список защищаемых объектов роли / 3 сообщений из 3, страница 1 из 1
01.08.2019, 15:21
    #39844155
Алексаша
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Список защищаемых объектов роли
Здравствуйте.

Как получить список защищаемых объектов роли?
...
Рейтинг: 0 / 0
01.08.2019, 15:30
    #39844161
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Список защищаемых объектов роли
Алексаша,

это что ли?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
SELECT pm.state_desc PermType,
  pm.permission_name PermName, 
  pm.class_desc PermClass, 
  CASE
    WHEN pm.class_desc = 'schema' THEN sc.name
    ELSE OBJECT_NAME(pm.major_id)
  END ObjectName
FROM sys.database_principals pr
  LEFT JOIN sys.database_permissions pm
    ON pr.principal_id = pm.grantee_principal_id
  LEFT JOIN sys.schemas sc
    ON pm.major_id = sc.schema_id
WHERE pr.name = 'DbRole1';
...
Рейтинг: 0 / 0
01.08.2019, 16:27
    #39844218
Алексаша
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Список защищаемых объектов роли
TaPaK,

Спасибо.

на просторах интернета нашел такое решение :
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
SELECT  DB_NAME() AS 'DBName' ,
    p.[name] AS 'PrincipalName' ,
    p.[type_desc] AS 'PrincipalType' ,
    p2.[name] AS 'GrantedBy' ,
    dbp.[permission_name] ,
    dbp.[state_desc] ,
    CASE WHEN [dbp].[class_desc] = 'DATABASE' THEN 'DATABASE'
         ELSE COALESCE(so.[name], t.name)
    END AS 'ObjectName' ,
    CASE WHEN [dbp].[class_desc] = 'DATABASE' THEN 'DATABASE'
         ELSE COALESCE(so.[type_desc], N'TYPE')
    END AS 'ObjectType' 
FROM    [sys].[database_permissions] dbp
        LEFT JOIN [sys].[all_objects] so ON dbp.[major_id] = so.[object_id]
        LEFT JOIN [sys].[database_principals] p ON dbp.[grantee_principal_id] = p.[principal_id]
        LEFT JOIN [sys].[database_principals] p2 ON dbp.[grantor_principal_id] = p2.[principal_id]
        LEFT JOIN [sys].[types] t ON dbp.major_id = t.user_type_id
WHERE   p.[name] = 'db_executor';
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Список защищаемых объектов роли / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]