您可以使用“包装工具”包装(混淆)您的过程,但 Oracle 声明:
“包装 PL/SQL 源文本不是隐藏密码或表名的安全方法。要获得高保证的安全性,请使用 Oracle Database Vault,如 Oracle Database Vault 管理员指南中所述。”
create or replace procedure p
as
l_password varchar2(100);
begin
l_password := 'mysupersecretpassord';
end;
/
me@XE> @source p
SOURCE
--------------------------------------------------------------------------------
CREATE OR REPLACE PROCEDURE "ME"."P" as l_password varchar2(100);
begin l_password := 'mysupersecretpassord'; end;
$ wrap iname=p.prc
PL/SQL Wrapper: Release 11.2.0.2.0- 64bit Production on Sun Jan 13 08:37:42 2013
Copyright (c) 1993, 2009, Oracle. All rights reserved.
Processing p.prc to p.plb
me@XE> @p.plb
Procedure created.
me@XE> @source p
SOURCE
--------------------------------------------------------------------------------
CREATE OR REPLACE PROCEDURE "ME"."P" wrapped
a000000
369
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
7
5e 96
VoaqA4NZ8B46JZ/ptgsDoULsSlwwg5nnm7+fMr2ywFwWj8B0iwlp
pfQouHTLy/4owMznx3TA
M7h0ZSV8IXxQoIvAwDL+0oRcOAEKDkG6k3GjyKPDbuxxiaMJyFRxbg+JUUj
XQ/zB4Nempk3k
q6k=