簡體   English   中英

SQL 服務器數據庫角色 - 表

[英]SQL Server database roles - tables

我試圖找到一個 SQL 語句來了解所有數據庫角色到表連接的概述。 所以我正在尋找sys.tablessys.database_principals where type_desc='DATABASE_ROLE'

目標是概述哪些角色在哪些表上。 任何人都可以幫忙嗎?

我正在使用 Microsoft SQL 服務器 2019。

親切的問候

sys.database_permissions是您正在尋找的。 您可以將其加入sys.tablessys.database_principals並獲取您需要的所有信息

SELECT
  schema_name = s.name,
  t.name,
  per.permission_name,
  prin.name,
  prin.state_desc
FROM sys.tables t
JOIN sys.schemas s ON s.schema_id = t.schema_id
JOIN sys.database_permissions ON per.major_id = t.object_id
    AND per.class = 1  -- object or column
    AND per.minor_id = 0  -- table only, not column
JOIN sys.database_principals prin ON print.principal_id = per.grantee_principal_id
    AND prin.type = 'R'; -- same as DATABASE_ROLE

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM