2010-08-31 8 views
11

Je souhaite obtenir une liste de tous les utilisateurs de la base de données du serveur SQL et de leurs rôles. Ce que j'essaie de faire, c'est de savoir si certains utilisateurs ont des privilèges pour plus d'une base de données. Y a-t-il une requête qui peut le faire directement?Liste des utilisateurs et de leurs rôles dans SQL Server

+5

Un titre plus descriptif qui a trait à la question réelle profiterait à votre question. – Oded

Répondre

16

Je pense que vous trouverez cette ressource utile:

http://consultingblogs.emc.com/jamiethomson/archive/2007/02/09/SQL-Server-2005_3A00_-View-all-permissions.aspx

de l'article:

select dp.NAME AS principal_name, 
     dp.type_desc AS principal_type_desc, 
     o.NAME AS object_name, 
     p.permission_name, 
     p.state_desc AS permission_state_desc 
from sys.database_permissions p 
left OUTER JOIN sys.all_objects o 
on  p.major_id = o.OBJECT_ID 
inner JOIN sys.database_principals dp 
on  p.grantee_principal_id = dp.principal_id 
Questions connexes