Determine Permission for all Users at Object Level

I was looking out to determine Permissions for all Users at an Object Level in a database. Here’s the query to do so:

SELECT,, permission_name ,
granted_by = suser_name(grantor_principal_id)
FROM sys.database_permissions
JOIN sys.sysusers sysU on grantee_principal_id = uid
JOIN sys.sysobjects sysO on major_id = id
order by



If anyone knows a better way, I would love to hear it!

About The Author

Suprotim Agarwal, MCSD, MCAD, MCDBA, MCSE, is the founder of DotNetCurry, DNC Magazine for Developers, SQLServerCurry and DevCurry. He has also authored a couple of books 51 Recipes using jQuery with ASP.NET Controls and a new one recently at The Absolutely Awesome jQuery CookBook.

Suprotim has received the prestigous Microsoft MVP award for nine times in a row now. In a professional capacity, he is the CEO of A2Z Knowledge Visuals Pvt Ltd, a digital group that represents premium web sites and digital publications comprising of Professional web, windows, mobile and cloud developers, technical managers, and architects.

Get in touch with him on Twitter @suprotimagarwal, LinkedIn or befriend him on Facebook

No comments: