Skip to content

Latest commit

 

History

History
67 lines (52 loc) · 2.72 KB

sys-fn-translate-permissions-transact-sql.md

File metadata and controls

67 lines (52 loc) · 2.72 KB
title description author ms.author ms.date ms.service ms.subservice ms.topic f1_keywords helpviewer_keywords dev_langs
sys.fn_translate_permissions (Transact-SQL)
sys.fn_translate_permissions (Transact-SQL)
rwestMSFT
randolphwest
03/15/2017
sql
system-objects
reference
sys.fn_translate_permissions
sys.fn_translate_permissions_TSQL
fn_translate_permissions
fn_translate_permissions_TSQL
permissions bitmask [SQL Server]
sys.fn_translate_permissions function
fn_translate_permissions function
TSQL

sys.fn_translate_permissions (Transact-SQL)

[!INCLUDE SQL Server]

Translates the permissions bitmask returned by SQL Trace into a table of permissions names.

:::image type="icon" source="../../includes/media/topic-link-icon.svg" border="false"::: Transact-SQL syntax conventions

Syntax

  
sys.fn_translate_permissions ( level , perms )  

Arguments

level
Is the kind of securable to which the permission is applied. level is nvarchar(60).

perms
Is a bitmask that is returned in the permissions column. perms is varbinary(16).

Returns

table

Remarks

The value returned in the permissions column of a SQL Trace is an integer representation of a bitmask used by [!INCLUDEssNoVersion] to calculate effective permissions. Each of the 25 kinds of securables has its own set of permissions with corresponding numerical values. sys.fn_translate_permissions translates this bitmask into a table of permissions names.

Permissions

Requires membership in the public role.

Example

The following query uses sys.fn_builtin_permissions to display the permissions that apply to certificates, and then uses sys.fn_translate_permissions to return the results of the permissions bitmask.

SELECT * FROM sys.fn_builtin_permissions('CERTIFICATE');  
SELECT '0001' AS Input, * FROM sys.fn_translate_permissions('CERTIFICATE', 0001);  
SELECT '0010' AS Input, * FROM sys.fn_translate_permissions('CERTIFICATE', 0010);  
SELECT '0011' AS Input, * FROM sys.fn_translate_permissions('CERTIFICATE', 0011);  

See Also

Permissions (Database Engine)
sys.server_permissions (Transact-SQL)
sys.database_permissions (Transact-SQL)