2013-12-11 172 views
1

我的问题是有关Sybase ASE 15.3版本database.When我们的数据库由外包数据库专业人员为securtiy控制检查, 他们指出,问题:Sybase ASE的DDL_Prevent

“有人指出,DDL_PREVENT触发控制限制DDL 数据库中的命令未在您的数据库中建立,只有 数据库管理员帐户和部署应用程序帐户 (如TCDEPLOY)应该被允许在 触发器中执行DDL命令。

我知道“Oracle或MSSQL中有DLL_PREVENT机制”。是否有任何Sybase的方法? 我该如何解决这个问题?

谢谢

回答

0

根据Sybase以下不支持触发器:未在触发器不允许 由于触发器执行作为交易的一部分

SQL语句,下面的 声明不允许触发:

•所有创建命令,包括创建数据库,创建表,创建 索引,创建过程,创建默认值,c reate规则,创建触发器, 和CREATE VIEW

•所有下降命令

•alter table和修改数据库

•截断表

•grant和revoke

•更新统计信息

•重新配置

•负载的数据库和负载交易

•磁盘初始化,磁盘镜像,磁盘改装,磁盘重新发起,磁盘remirror之,盘 取消镜像

•选择到

这涵盖了大部分的DDL的。如果还有其他要限制的命令,则可能必须通过撤消对用户或组的授权来执行此操作。请参见“Sybase管理指南”中的Managing User Permissions

链接指向Sybase ASE 15.5,而不是15.3,但我不相信这些版本之间的这些区域发生了变化。