sys.masked_columns (Transact-SQL)
S’applique à : SQL Server 2016 (13.x) et versions ultérieures d’Azure SQL Database Azure SQL Managed Instance SQL database dans Microsoft Fabric
Utilisez la vue sys.masked_columns pour interroger les colonnes de table qui ont une fonction de masquage dynamique des données appliquée. Celle-ci hérite de la vue sys.columns . Elle retourne toutes les colonnes de la vue sys.columns , ainsi que les colonnes is_masked et masking_function , en indiquant si les colonnes sont masquées et, dans ce cas, la fonction de masquage est définie. Cette vue présente uniquement les colonnes auxquelles une fonction de masquage est appliquée.
Nom de la colonne | Type de données | Description |
---|---|---|
object_id | int | Identificateur de l'objet auquel appartient cette colonne. |
name | sysname | Nom de la colonne. Unique dans l'objet. |
column_id | int | Identificateur de la colonne. Unique dans l'objet. Les ID de colonnes peuvent ne pas être séquentiels. |
sys.masked_columns retourne de nombreuses autres colonnes héritées de sys.columns. | various | Pour plus de définitions de colonnes, consultez sys.columns (Transact-SQL). |
is_masked | bit | Indique si la colonne est masquée. 1 indique masqué. |
masking_function | nvarchar(4000) | Fonction de masquage de la colonne. |
generated_always_type | tinyint | S’applique à : SQL Server 2016 (13.x) et versions ultérieures, SQL Database. Seuls 7, 8, 9, 10 s’appliquent à SQL Database. Identifie quand la valeur de colonne est générée (sera toujours 0 pour les colonnes dans les tables système) : 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 Pour plus d’informations, consultez Tables temporelles (bases de données relationnelles). |
autorisations
Cette vue retourne des informations sur les tables où l’utilisateur dispose d’une certaine autorisation sur la table ou si l’utilisateur dispose de l’autorisation VIEW ANY DEFINITION.
Exemple
La requête suivante joint sys.masked_columns à sys.tables pour retourner des informations sur toutes les colonnes masquées.
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;