依照下方的語法,加入WITH ENCRYPTION,即可以把自己所寫的預存程序程式內容加密。
CREATE procedure TESTProcedure
WITH ENCRYPTION AS
SELECT *
FROM sys.all_objects
使用指令檢視預存程序的內容。
EXEC sp_helptext TESTProcedure
在訊息視窗中會出現下列訊息。
物件 'TESTProcedure' 的文字已加密。
執行預存程序的結果也正常。

在SSMS工具中,想利用無法利用[修改]做檢視內容。

在ORACLE一樣提供了對PACKAGE的加密功能,不同的是必須先把Package放至檔案中,透過wrap這命令列工具程式來加密。舉例SQL檔為TEST.sql
D:\> wrap iname=TEST.sql
D:\> wrap iname=TEST.sql oname=TEST.wrap
執行結果

加密後的PACKAGE內容,就會變成下面類似亂碼的內容:
重點:兩種加密後都不能回復,請加密前保存好明碼的程式內容。
沒有留言:
張貼留言