Thursday, August 1, 2013

MSSQL View grants for specific user

USE [database];

 SELECT
    class_desc
  , CASE WHEN class = 0 THEN DB_NAME()
               WHEN class = 1 THEN OBJECT_NAME(major_id)
               WHEN class = 3 THEN SCHEMA_NAME(major_id) END [Securable]

  , USER_NAME(grantee_principal_id) [User]
 , permission_name
 , state_desc
FROM sys.database_permissions
where USER_NAME(grantee_principal_id) = 'USER_NAME'
and state_desc = 'GRANT'
Till Next Time