Feb 4, 2008

How to encrypt a stored procedure in SQL Server 2005


At times, it is needed that you encrypt the text of stored procedures containing sensitive information. SQL Server provides the WITH ENCRYPTION to encrypt the text of the stored procedure.

CREATE procedure [dbo].[Ten Most Expensive Products Encyrpt]
WITH ENCRYPTION AS
SET ROWCOUNT 10
SELECT Products.ProductName AS TenMostExpensiveProducts, Products.UnitPrice
FROM Products
ORDER BY Products.UnitPrice DESC

Once the stored procedure has been created WITH ENCRYPTION, attempts to view the stored procedure returns a message specifying that the text is encrypted:

EXEC sp_helptext usp_SEL_EmployeePayHistory

'The text for object 'Ten Most Expensive Products Encyrpt' is encrypted.'

One note of caution. Save the original text of the stored procedure before encrypting it, as there is no straightforward way to decode the encrypted text. One hack is to attach a debugger to the server process and retrieve the decrypted procedure from memory at runtime.

Submit this story to DotNetKicks

Related Posts In This Category



Widget by Hoctro | Jack Book

 
  Feedback:

comments

1 Response to "How to encrypt a stored procedure in SQL Server 2005"
  1. jayant das said...
    February 12, 2009 11:01 PM

    Hi All

    This is very usefull for my business logic


    Thanks Regards
    Jayant.dass@gmail.com
    09650336531

 

Copyright 2009 All Rights Reserved SQL Server Curry by Suprotim Agarwal