`
moonfly2004
  • 浏览: 55038 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

如何限制用户对自己对象的DDL权限

 
阅读更多
2008-03-01 来自:java060515

问题:如何才能限制用户对自己对象的DDL权限(触发器实现)?

解决此问题的示例:


create or replace trigger ddl_refuse_trig
before ddl on schema
declare
v_ipaddress varchar2(20);
begin
select sys_context('userenv','ip_address')
into v_ipaddress from dual;
if v_ipaddress <> '192.168.1.152' then
raise_application_error(-20099,'Sorry,You
can not execute the command.Please contact the DBA',false);
end if;
end;
/
分享到:
评论

相关推荐

    Oracle用户角色及权限管理.docx

    系统权限允许用户执行DDL(数据定义语言)操作,如创建、修改或删除数据库对象,以及进行系统级别的活动。对象权限则允许用户执行DML(数据操纵语言)操作,如查询、插入、更新或删除特定对象的数据。 角色是权限的...

    DDL与DML

    DDL是SQL的一种语言,用于定义数据库的结构,如创建、修改或删除数据库对象,例如表、索引、视图、存储过程等。DDL语句包括CREATE、ALTER、DROP等。 数据操纵语言(DML) DML是SQL的一种语言,用于修改数据,例如...

    DML DCL DDL

    DML、DCL、DDL 是数据库管理系统中三个重要的语言概念,它们分别用于数据操作、权限控制和数据库定义。下面将详细解释这三个概念。 DML(Data Manipulation Language) ----------------------------- DML 是数据...

    数据库DDL实战精华

    数据库DDL(Data Definition Language)是用于创建、修改和删除数据库对象的SQL命令。在本文档中,作者分享了关于数据库DDL的实际操作经验,主要涵盖了创建(CREATE)、删除(DROP)和修改(ALTER)表的技巧,特别...

    [Oracle] dbms_metadata.get_ddl 的使用方法总结

    获取用户的DDL主要是获取用户的所有权限和属性,包括默认表空间、临时表空间等: - 单个用户: ```sql SELECT DBMS_METADATA.GET_DDL('USER', 'EPAY_USER') FROM DUAL; ``` - 所有用户: ```sql SELECT DBMS_...

    sqlserver2005权限设置到列

    8. **db_denydatareader** 和 **db_denydatawriter** - 这两个角色用于限制用户对数据的读写权限,防止他们访问或修改指定的数据。 通过为用户分配适当的固定服务器角色或固定数据库角色,可以精细地控制SQL Server...

    DDL、DML和DCL的区别与理解

    GRANT和REVOKE语句在这里同样适用,用于控制用户或角色对数据库对象的访问权限。GRANT用于赋予用户特定的权限,如SELECT、INSERT、UPDATE、DELETE等,而REVOKE则用于撤销这些权限。DCL还包括DENY语句,用于明确拒绝...

    浅谈ORACLE数据库安全技术及其应用.pdf

    通过设置不同级别的用户权限,可以限制用户对数据的访问和修改,防止误操作和非授权访问。例如,可以为每个用户级别分配特定的访问权限,仅允许他们执行与其工作职责相关的操作。此外,用户也可以自我管理,设置自己...

    4-Oracle数据定义语言(DDL).pptx

    Oracle 数据定义语言(DDL)是用于定义和管理 Oracle 数据库对象的语言。DDL 语句用于创建、修改和删除数据库对象,如表、索引、视图、同义词等。 4.1 创建和管理 Oracle 表 ============================= ### ...

    DQL,DML, DDL,DCL区别.docx

    这包括`GRANT`和`REVOKE`语句,用于赋予或撤销用户对数据库对象的操作权限。例如,`GRANT SELECT ON customers TO user1`将允许`user1`查询`customers`表。 在Oracle数据库中,DML和DDL语句的使用至关重要,它们...

    Oracle中sys和system用户、系统权限和角色的区别

    sysdba和sysoper是两种系统权限,sysdba提供了对数据库实例的全面管理权限,包括创建、删除数据库,备份恢复,以及执行各种DDL(数据定义语言)和DML(数据操纵语言)操作。sysoper权限相对较小,主要用于数据库的...

    Oracle数据定义语言(DDL).pptx

    Oracle 数据定义语言(DDL)是用于创建和管理数据库对象,如表、视图、序列、索引和同义词的SQL语句集合。在Oracle数据库系统中,DDL扮演着核心角色,因为它允许开发者构建和维护数据库结构。以下是关于Oracle DDL的...

    详解SQL四种语言:DDL DML DCL TCL

    GRANT用于赋予用户访问权限,可以指定对特定对象的操作权限;REVOKE用于撤销已经授予的权限。通过DCL,数据库管理员可以精细控制不同用户对数据库的访问和操作。 4. TCL(事务控制语言): TCL用于管理数据库事务...

    oracle 用户操作、赋权、事务、锁、索引资料.doc

    通过`GRANT SELECT, UPDATE(sal) ON emp TO tim`,可以指定用户对特定表的访问权限,甚至精确到字段级别。 三、事务特性 Oracle遵循ACID原则,确保事务的正确性: 1. 原子性(Atomicity):事务中的所有操作要么...

    oracle内置常用表和视图及其日志管理.docx

    - USER_CONSTRAINTS:用户对象的约束信息。 - USER_SYS_PRIVS:当前用户的系统权限。 - USER_TAB_PRIVS:当前用户对对象的权限。 - USER_COL_PRIVS:当前用户对表列的权限。 - USER_ROLE_PRIVS:当前用户的角色...

    ORACLE数据库封装过程DBMS_SQL的应用.pdf

    DBMS_SQL 的应用可以解决在项目开发中对用户管理和 DDL 使用的问题。 静态联接和动态联接是两种不同的联接方式。在静态联接中,PL/SQL 编译器会在编译时查找程序中引用的 ORACLE 对象的定义,然后将它们的存储地址...

    oracle数据库对象

    同时,Oracle的数据字典提供了关于数据库及其对象的元数据信息,用户可以通过特定的视图来查询这些信息,例如`USER_TABLES`、`ALL_TABLES`和`DBA_TABLES`等,以获取与自己权限相关的对象详情。 了解和熟练掌握这些...

    Oracle知识综合整理.docx

    - 数据控制语言(DCL):包括GRANT和REVOKE,用于授权和回收用户对数据库对象的访问权限。 2. SQL常用数据类型: - CHAR和VARCHAR2:CHAR为固定长度字符串,VARCHAR2为可变长度字符串。 - LONG:用于存储大量...

    ADO对象动态创建数据库和表

    而ADOX(ADO Extensions for DDL and Security)是ADO的一个扩展,它提供了创建、修改和删除数据库模式对象的能力,比如表、索引、用户和权限等。要使用ADOX,我们需要在VB项目中引用“Microsoft ADO Ext 2.x For ...

    Oracle数据库安全配置

    2.1.5 使用ROLE管理对象的权限 5 2.1.6 控制用户属性 5 2.1.7 启用数据库字典保护 6 2.2 口令 7 2.2.1 静态口令认证的密码复杂度控制 7 2.2.2 静态口令认证的密码生命周期 7 2.2.3 静态口令认证的密码重复使用限制 8...

Global site tag (gtag.js) - Google Analytics