加密存储过程,授于其它用户执行

文章作者 100test 发表时间 2008:03:15 10:02:30
来源 100Test.Com百考试题网


随着社会的分工与合作越来越密切,同一台服务器里可能会运行几家公司不同的服务产品,

有时候服务之间需要互相提供数据,以实现经济上的双赢;当然各自的安全和独立性也需要保证。

如果这样的服务后台用的是ORACLE数据库,可以用加密存储过程,并授于其它用户执行的方法。

首先我们要为提供的数据写一个正确合乎逻辑的存储过程或函数test_proc,假设源代码是test.sql。

然后用wrap实用工具(默认的目录$ORACLE_HOME/bin)加密它:

使用wrap的语法是:

$wrap iname = input_file [oname=output_file]
↑ ↑
加密前存储过程或函数 加密后存储过程或函数,默认的后缀为*.plb

举例: $wrap iname=test.sql

会在当前目录产生test.plb加密的存储过程或函数

备注: Windows和unix平台的下wrap生成*.plb加密文件可以通用,版本是向上兼容的。

最后编译这个加密后的test.plb

SQL> @/tmp/test.plb

并赋于相关合作用户(another_user)执行的权限

SQL> grant execute on test_proc to another_user.

其它的注意事项:

合作用户不能有过多的权限, 使他们不能查数据字典和其它用户下的表,密码要起得难一些。



相关文章


用DMRC解除远程管理X 2的烦恼
给WindowsVista减肥删除不必要文件
给WindowsVista系统加入一键还原功能
用 ool unixshell生成文本文件
加密存储过程,授于其它用户执行
Linux下MySQL数据库二进制日志恢复方法
北京机电研究所2008年硕士研究生招生简章
新手学堂:嵌入式Linux文件系统详细介绍
08考研政治当代世界经济与政治部分深度分析
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛