T-SQL to list all the user mappings with database roles/permissions for a Login

前端 未结 7 2611
无人及你
无人及你 2020-12-06 05:09

I am looking for a t-sql script which can list the databases and and the respective roles/privileges mapped for a particular user. Using SQL Server 2008 R2.

7条回答
  •  青春惊慌失措
    2020-12-06 05:48

    CREATE TABLE #tempww (
    
        LoginName nvarchar(max),
        DBname nvarchar(max),
        Username nvarchar(max), 
        AliasName nvarchar(max)
    )
    
    INSERT INTO #tempww 
    
    EXEC master..sp_msloginmappings 
    
    -- display results
    
    declare @col varchar(1000)
    
    declare @sql varchar(2000)
    
    select @col = COALESCE(@col + ', ','') + QUOTENAME(DBname)
    
    from #tempww Group by DBname
    
    Set @sql='select * from (select LoginName,Username,AliasName,DBname,row_number() over(order by (select 0)) rn from #tempww) src
    
    PIVOT (Max(rn) FOR DBname
    
    IN ('+@col+')) pvt'
    
    EXEC(@sql)
    
    
    
    -- cleanup
    DROP TABLE #tempww
    

提交回复
热议问题