中文

保护 Oracle PL/SQL 源代码免受 DBA 用户访问

数据库 2012-09-17 v1

摘要

在本文中,我们提出了一种新方法,旨在禁止 Oracle 数据库中的 DBA 用户对某些特定 PL/SQL 过程执行 DDL 语句。如今,DBA 用户能够访问大量数据和源代码,即使他们没有合法权限查看或修改这些内容。通过这种方法,我们可以禁止任何 Oracle 数据库用户(即使拥有 DBA 角色)对某些特定 PL/SQL 过程执行 DDL 和 DML 语句。Oracle 为开发者提供了封装 PL/SQL 过程、函数和包的可能性,但这些封装脚本可以通过第三方工具被解封。我们开发的脚本会分析所有数据库会话,如果它们检测到未经授权的用户对应受保护的过程、函数或包执行 DML 或 DDL 语句,则该语句的执行将被拒绝。此外,这些脚本不允许 DBA 用户删除或禁用脚本本身。换言之,通过在 DBA 用户最终执行某条语句之前管理会话,我们可以阻止针对我们脚本的最终语句的执行。

关键词

引用

@article{arxiv.1209.2794,
  title  = {Protecting oracle pl/sql source code from a dba user},
  author = {Hakik Paci and Elinda Kajo Mece and Aleksander Xhuvani},
  journal= {arXiv preprint arXiv:1209.2794},
  year   = {2012}
}