I have a stored procedure that runs xp_cmdshell with a user with sysadmin right.(it was created by someone else long time ago). For security purposes I need to remove the sysadmin right from this user. So I created a proxy account and gave execute privilege to this user on the xp_cmdshell (practically followed the steps how to run xp_cmdshell with a non sysadmin user ). But when I run the stored procedure I am getting the below error:

error number 15466 severity 16 errorline 1 An error occurred during decryption.

I use SQL Server 2008

What could be the problem?

1 Answer 1


This is most likely occurring as the old user ( the one with sysdmin rights) had access to the SQL Server Symmetric Keys which are used to encrypt/decrypt keys which the new user does not.

The Grant Symmetric key article provides details and the links at the end provide some good reading.

  • i used the following query to see who has access and it is showing no data:
    – user183067
    Commented Jun 13, 2019 at 12:05
  • select u.name, p.permission_name, p.class_desc, object_name(p.major_id) ObjectName, state_desc from sys.database_permissions p join sys.database_principals u on p.grantee_principal_id = u.principal_id where class_desc = 'SYMMETRIC_KEYS'
    – user183067
    Commented Jun 13, 2019 at 12:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.