推荐: 雅虎杨致远辞职| 学费涨价| 最新就业喜讯| 你为什么找不到好工作| 外地学员拨打118114转郑州北大青鸟免长话费
北大青鸟学费涨价
当前位置:北大青鸟>技术园地>Oracle如何操作数据的加密

Oracle如何操作数据的加密

来源:北大青鸟 作者:管理员 发布时间:2008-06-01

Oracle 应用服务器应用程序使用 Sec_Manager.Secure_Package 程序包中的例程存储加密格式的私人数据(如使用 Secure_Package.Secure_Data 存储 CARD_NO 数据)。根据create_packages.sql中描述的定制加密程序包的定义,对 CARD_NO 列的访问已被函数调用所取代,该函数调用的参数是要存储在列中的值以及用于数据解密的密钥。
例如,要将“a1b2c3d4”用作加密密钥,必须将最初如下所示的典型 INSERT 语句

insert into CUSTOMER (NAME, CARD_NO)
values ('Jane Doe', '1234123412341234');

转换为:
insert into CUSTOMER (NAME, CARD_NO)
values ('Jane Doe', Sec_Manager.Secure_Package.Secure_Data('1234123412341234','a1b2c3d4'));

同样,Oracle 应用服务器应用程序还使用 Sec_Manager.Secure_Package 中的例程读取加密格式的数据,如 CARD_NO 数据的 Secure_Package.Clear_Data。然后利用插入值时使用的加密密钥来以明文格式取回受保护信息。这种情况下,必须将最初为如下所示的典型 SELECT 语句
select NAME, CARD_NO
from CUSTOMER;

修改为:
select NAME, Sec_Manager.Secure_Package.Clear_Data(CARD_NO,'a1b2c3d4')
from CUSTOMER;

当完成所有开发(希望由值得信任的人员完成)后,还可以将升级后的代码加密,以便甚至连升级脚本的数据库管理员都无法确切了解安全性的实现方法。通过 Oracle 提供的实用程序实现加密,可以使用如下所示命令

wrap iname=Secure_Package.sql oname=Secure_Package.sec

打包后,可以在 SQL*Plus 提示符后象执行任何明文脚本一样执行 Secure_Package.sec,且 Oracle 引擎还将对其进行解释。同一概念也可应用于任何其他与安全性相关的 PL*SQL 脚本。此方法不但禁止了参与代码升级的人员(数据库管理员、开发人员、支持和管理人员)查看程序包内容,而且程序包内容还以加密格式部署到数据库中,因此以后要尝试破解这些程序包内容是很难的。
即使具有数据库管理员权限的入侵者将 CONNECT 权限授予安全对象所有者 Sec_Manager 以查看保护和加密程序包的内容,也不会有任何明文会存储在这些对象的数据库中。由于 Oracle 未提供任何“解包”实用程序,因此入侵者将必须破解 Oracle 的加密算法才能够查看程序包内容。


即使所有安全措施都已经到位了,了解是否对机密数据进行了未授权访问仍很重要。最简单的方法是使用内置的数据库审计功能在表级别监视对受保护数据的访问(SELECT、INSERT、UPDATE、DELETE),而不管请求事务的数据库连接如何,命令如下:
audit insert, update, select on SHIP2004.CUSTOMER;

但使用 Oracle Fine Grained Auditing (FGA),您可以进一步改进访问监视以最小化处理开销并提供有意义的信息。enable_fga.sql 中提供的示例使用 DBMS_FGA 程序包启用基本的审计策略。数据库中的内置审计机制禁止用户绕过审计,从而确保了它的精确性。可以在 DBA_FGA_AUDIT_TRAIL 视图以及 DBA_COMMON_AUDIT_TRAIL 视图中查看审计记录,在策略指定 audit_trail = DBMS_FGA.DB_EXTENDED 的情况下,审计记录甚至可以包含 SQLBIND 和 SQLTEXT 信息。

可以使用 Oracle 提供的功能轻松地增强此处提供的示例,从而加入电子邮件或寻呼机通知和激活条件,以只生成特定事件的审计记录。 
 




如果你想咨询课程、学费、就业、开班等情况!请拨打我们的咨询热线0371-67255555 或者点击QQ右侧的图标与我们在线老师咨询!

免费讲座

时间:11月22日14:00         (本周六)内容:"60分钟教你做游戏软件"主讲:北大青鸟资深金牌讲师北大青鸟地址:郑州市中原路京广        路交叉口东北角抢座热线:0371-67255555 电话抢座    名额有限

开班信息

班级 类型 状态
S124 专修班 热招
S123 专修班 热招
YS105 专修班 热招
S122 专修班 余7座
YS104 周末班 余4座
S121 专修班 余2座
S120 专修班 已满
  • 风靡世界的品牌
  • 权威的联合认证
  • 深厚的教育背景
  • 多模式教学方法
  • 独特的教育理念
  • 学术专家顾问团
  • 严格的教学管理
  • 先进的教育产品
  • 完善的就业服务
· 2008年8月 北大青鸟APTECH(郑州志远)授权培训中心双校区在校学员规模超过1千人,成为河南地区首屈一指的北大青鸟培训中心

· 2008年3月 国际权威调研公司IDC(国际数据公司)发布的《2007年度中国IT职业培训市场及相关市场研究》中,北大青鸟APTECH继续7年蝉联中国IT职业培训市场占有率冠军,市场份额由2006年的32.1%跃升至38.6%

· 2008年3月 北大青鸟APTECH(郑州志远)授权培训中心软件校区正式成立,中心整体教学面积近3000平米,9个高端机房,6个多媒体教室,3个项目开发实验室

· 2007年8月 北大青鸟APTECH(郑州志远)授权培训中心网络校区正式成立

· 2007年3月 国际权威调研公司IDC(国际数据公司)发布的《2006年度中国IT职业教育培训市场调研报告》中,北大青鸟APTECH继续蝉联中国IT职业市场占用率冠军,市场份额高达32.1%

· 2007年1月 北大青鸟APTECH推出BENET2.0网络工程师新产品,该产品着重培养学生的六大技能,为中国当代企业量身定制打造技能型网络工程师

· 2006年1月5日 ACCP4.0新产品发布会隆重举行

· 2006年1月 在APTECH公司2006年全球合作伙伴高峰会议上,我公司荣获全球唯一最高金奖——“杰出国家业绩”奖

· 2005年8月 北大青鸟APTECH组建国内首个TAG(技术专家顾问团)组织

· 2005年4月 北大青鸟APTECH摘IDC桂冠,再获中国IT培训市场第一

· 2005年2月 北大青鸟APTECH公司在CCID主办的“2005中国IT市场年会”上获得“2004年度IT职业教育和培训成功企业”称号;全体系收入、市场份额和增长率行业第一,连续第三次夺得IT职业教育市场的冠军
· 2004年9月 国家劳动和社会保障部职业技能鉴定中心与我公司达成协议,宣布对网络工程师职业培训和职业资格进行联合认证

· 2004年6月 全国累计培训学员突破100,000人,合作伙伴100余家

· 2003年12月 北大青鸟APTECH与ORACLE公司结成战略合作伙伴,成为国内第一家与国际知名IT企业开展合作的IT职业教育机构

· 2003年12月 北大青鸟APTECH推出ACCP3.0、ACCP启蒙星和BENET(网络工程师)三款新产品,同时确立了“中国IT职业教育第一品牌”、“中国最 大的IT职业教育机构”和“中国最大的IT职业教育产品开发商”的企业目标定位

· 2003年9月 北大青鸟APTECH公司荣获国家商务部授予的“中国外贸企业信用体系抒写示范单位”称号

· 2003年7月 著名计算机教育专家谭浩强教授出任北大青鸟APTECH首席学术顾问

· 2003年1月 北大青鸟APTECH获《中国计算机报》评选的“本土最具知名度认证” 等四项大奖

· 2002年8月20日 北大青鸟APTECH正式成为我国首家通过ISO9001:2000国际标准的专业化IT职业教育公司

· 2002年6月14日 全国在培学生突破20000人

· 2002年5月28日 国家劳动和社会保障部职业技能鉴定中心与我公司在北京新世纪饭店举行新闻发布会,宣布对软件工程师的职业培训和职业资格进行联合认证这是政府首次与企业合作开展的在 “职业资格培训领域” 的联合认证,在软件工程师培养领域开创了全新的合作模式

· 2002年4月28日 公司开始全面推行ISO9000质量管理体系

· 2002年1月 北大青鸟APTECH ACCP 2002 V1.0产品发布会在京举行

· 2001年12月 全国在培学生突破10000人,合作伙伴达60家

· 2000年1月 北大青鸟集团与印度APTECH公司合资成立北京阿博泰克北大青鸟信息技术有限公司

联系电话

  • 北大青鸟电话:0371-67255555
  • 夜间值班电话:13676927831
  • 就业合作电话:13676985050
北大青鸟电子杂志