sys.masked_columns (Transact-SQL)
適用於:Microsoft Fabric 中的 SQL Server 2016 (13.x) 和更新版本 Azure SQL 資料庫 Azure SQL 受控執行個體 SQL Database
使用sys.masked_columns檢視來查詢已套用動態數據遮罩函式的數據表數據行。 此檢視繼承自 sys.columns 檢視。 它會傳回 sys.columns 檢視中的所有數據行,加上is_masked和masking_function數據行,指出數據行是否已遮罩,如果是,則會定義遮罩函式。 此檢視只會顯示套用遮罩函式的數據行。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
object_id | int | 這個數據行所屬之對象的標識碼。 |
NAME | sysname | 資料行的名稱。 在物件中是唯一的。 |
column_id | int | 數據行的識別碼。 在物件中是唯一的。 數據行標識碼可能不是循序的。 |
sys.masked_columns傳回繼承自 sys.columns 的更多數據行。 | various | 如需更多數據行定義,請參閱 sys.columns (Transact-SQL)。 |
is_masked | bit | 指出數據行是否已遮罩。 1 表示遮罩。 |
masking_function | nvarchar(4000) | 數據行的遮罩函式。 |
generated_always_type | tinyint | 適用於:SQL Server 2016 (13.x) 和更新版本,以及 SQL Database。 7、8、9、10 僅適用於 SQL 資料庫。 識別何時產生資料行值(系統數據表中的數據行一律為 0): 0 = NOT_APPLICABLE 1 = AS_ROW_START 2 = AS_ROW_END 7 = AS_TRANSACTION_ID_START 8 = AS_TRANSACTION_ID_END 9 = AS_SEQUENCE_NUMBER_START 10 = AS_SEQUENCE_NUMBER_END 如需詳細資訊,請參閱時態表(關係資料庫)。 |
權限
此檢視會傳回使用者擁有數據表某種許可權的數據表資訊,或者如果使用者具有 VIEW ANY DEFINITION 許可權,則傳回該數據表的相關信息。
範例
下列查詢會將 sys.masked_columns 聯結至 sys.tables ,以傳回所有遮罩數據行的相關信息。
SELECT tbl.name as table_name, c.name AS column_name, c.is_masked, c.masking_function
FROM sys.masked_columns AS c
JOIN sys.tables AS tbl
ON c.object_id = tbl.object_id
WHERE is_masked = 1;