In SQL Server 2005, how do I display all permissions a user/login has? Is there a stored procedure to do this?

Tags:
SQL Server 2005
SQL Server administration
In SQL Server 2005, how do I display all permissions a user/login has? Is there a stored procedure to do this?

Answer Wiki

Thanks. We'll let you know when a new response is added.

SQL Server includes a procedure which I’m not fond of. It’s called sp_helprotect. However I’ve got some code which I’ve thrown together which will display this data nicely and in a single call instead of the mess of code within the procedure.

select sys.schemas.name 'Schema', sys.objects.name Object, sys.database_principals.name username, sys.database_permissions.type permissions_type,
sys.database_permissions.permission_name,
sys.database_permissions.state permission_state,
sys.database_permissions.state_desc,
state_desc + ' ' + permission_name + ' on ['+ sys.schemas.name + '].[' + sys.objects.name + '] to [' + sys.database_principals.name + ']' COLLATE LATIN1_General_CI_AS
from sys.database_permissions
join sys.objects on sys.database_permissions.major_id =
sys.objects.object_id
join sys.schemas on sys.objects.schema_id = sys.schemas.schema_id
join sys.database_principals on sys.database_permissions.grantee_principal_id =
sys.database_principals.principal_id
order by 1, 2, 3, 5

Discuss This Question: 3  Replies

 
There was an error processing your information. Please try again later.
Thanks. We'll let you know when a new response is added.
Send me notifications when members answer or reply to this question.

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
  • Denny Cherry
    Check out my SQL Server blog "SQL Server with Mr Denny" for more SQL Server information.
    66,065 pointsBadges:
    report
  • BrianFerry
    Yes, you can use sp_helprotect procedure like suggested above. You can also achieve this with a new version of enterprise security reporter that is already avialable as a beta at http://www.scriptlogic.com/beta I've implemented this tool in our environment a while ago. It does the job quite well inlcuding very powerful sql reporting abilities with a plenty of predefined reports. In addition to the report that you are looking for, the tool includes reports on database object and schema permissions, effective database object permissions, database and server role membership, effective database and server role membership. Hope this was useful!
    20 pointsBadges:
    report
  • SQL Server Ask the Experts
    [...] In SQL Server 2005, how do I display all permissions a user/login has? Is there a stored procedure t... (tags: sqlserver) [...]
    0 pointsBadges:
    report

Forgot Password

No problem! Submit your e-mail address below. We'll send you an e-mail containing your password.

Your password has been sent to:

To follow this tag...

There was an error processing your information. Please try again later.

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Thanks! We'll email you when relevant content is added and updated.

Following