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

Как получить список защищаемых объектов роли?
...
Рейтинг: 0 / 0
Список защищаемых объектов роли
    #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
Список защищаемых объектов роли
    #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
3 сообщений из 3, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Список защищаемых объектов роли
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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