zoukankan      html  css  js  c++  java
  • 控制用户访问

    控制用户访问

    数据库安全性:系统安全性,数据安全性

    系统权限:对于数据库的权限

    Show user 查看当前用户

    创建用户

    DBA创建User

    语法 Create user bz identified by oracle

    Conn bz/oracle 连接用户

    Grant create session to bz

    Grant create table to bz

    Grant unlimited tablespace to bz

    Grant create view to bz

     

    创建数据库连接

    CREATE PUBLIC DATABASE LINK HAILIANG CONNECT TO SCOTT IDENTIFIED BY ORACLE USING VDEDU;

    SELECT * FROM T1@HAILING

     

    创建角色并授予权限

    Create role manager;

    Grant creat table,create view to manager;

    Grant manager to alice;

    修改User密码

    DBA可以创建用户和修改密码

    用户自己可以使用ALTER USER语句修改密码

    ALTER USER DEMO IDENTIFIED BY EMPLOY;

    对象权限

    wpsD5C1.tmp

    HR用户的表EMPLOYEES授予查询权限授予用户SCOTT

    GRANT SELECT ON EMOPLOYEES TO SCOTT;

    授予指定的列给用户和角色

    GRANT UPDATE (DEPARTMENT_NAME,LOCATION_ID) ON DEPARTMENTS TO SCOTT,MANAGER

    grant resource,connect to u1,u2 给与u1,u2全部权限

    GRANTEE                              PRIVILEGE

    ------------------------------ ----------------------------------------

    RESOURCE                            CREATE CLUSTER

    RESOURCE                            CREATE INDEXTYPE

    RESOURCE                            CREATE OPERATOR

    RESOURCE                            CREATE PROCEDURE

    RESOURCE                            CREATE SEQUENCE

    RESOURCE                            CREATE TABLE

    RESOURCE                            CREATE TRIGGER

    RESOURCE                            CREATE TYPE

    GRANTEE                              PRIVILEGE

    ------------------------------ ----------------------------------------

    CONNECT                             CREATE SESSION

    创建u1 u2两个用户,在u1中创建表t1,给u2用户查看u1表t1的权限

    SQL> create user u1 identified by oracle;

    User created.

    SQL> create user u2 identified by oracle;

    User created.

    SQL> grant resource,connect to u1,u2

      2  ;

    Grant succeeded.

    SQL> conn u1/oracle

    Connected.

    SQL> create table t1(x number);

    Table created.

    SQL> insert into t1 values(1);

    1 row created.

    SQL> grant select on t1 to u2;

    Grant succeeded.

    SQL> conn u2/oracle

    Connected.

    SQL> select * from u1.t1;

    X

    ----------

    1

    SQL>

    WITH GRANT OPTION使用户同样具有分配权限的权利

    GRANT SELECT,INSERT

    ON DEPARTMENTS

    TO DEMO

    WITH GRANT OPTION

    向数据库中所有用户分配权限

    GRANT SELECT

    ON HR.DEPARTMENTS

    TO PUBLIC

    创建一个u3用户,u1用户分配给u2用户使同样具有分配权限的权力,u2用户分配给u3用户查看u1表t1的权力。

    SQL> conn u1/oracle

    Connected.

    SQL> grant select,insert on t1 to u2 with grant option;

    Grant succeeded.

    SQL> exit

    SQL> create user u3 identified by oracle;

    User created.

    SQL> grant resource,connect to u3;

    Grant succeeded.

    SQL> conn u2/oracle

    Connected.

    SQL> show user

    USER is "U2"

    SQL> grant select on u1.t1 to u3;

    Grant succeeded.

    SQL> conn u3/oracle

    Connected.

    SQL> select * from u1.t1;

    X

    ----------

    1

    SELECT * FROM ROLE_SYS_PRIVS;查看角色拥有的系统权限

    SELECT * FROM ROLE_TAB_PRIVS;查看角色拥有的对象权限

    SELECT * FROM USER_ROLE_PRIVS;用户拥有的角色

    SELECT * FROM USER_SYS_PRIVS;用户拥有的系统权限

    SELECT * FROM USER_SYS_PRIVS;用户分配的关于表对象的权限

    SELECT * FROM USER_TAB_PRIVS_RECD;用户拥有的关于表对象的权限

    SELECT * FROM USER_COL_PRIVS_MADE;用户分配的关于列的对象权限

    SELECT * FROM USER_COL_PRIVS_RECD;用户拥有的关于列的对象权限

    撤销对象权限

    使用REVOKE语句撤销权限

    使用WITH GRANT OPTION分配的权限一并被收回

    撤销授予给scott用户DEPARTMENTS表的SELECTHE INSERT权限

    REVOKE SELECT,INSERT ON DEPARTMENTS FROM SCOTT

    SQL> conn u1/oracle

    Connected.

    SQL> revoke select,insert on t1 from u2;

    Revoke succeeded.

    SQL> conn u2/oracle

    Connected.

    SQL> select * from u1.t1

      2  ;

    select * from u1.t1

                     *

    ERROR at line 1:

    ORA-00942: table or view does not exist

    SQL> conn u3/oracle

    Connected.

    SQL> select * from u1.t1;

    select * from u1.t1

                     *

    ERROR at line 1:

    ORA-00942: table or view does not exist

  • 相关阅读:
    jQuery选择器
    jQuery属性
    复选框的全选+全不选+ajax传递复选框的value值+后台接受复选框默认值
    [BZOJ1085][SCOI2005]骑士精神 搜索
    [BZOJ1004][HNOI2008]Cards 群论+置换群+DP
    [BZOJ1046][HAOI2007]上升序列 DP+贪心
    [BZOJ1016][JSOI2008]最小生成树计数 最小生成树 搜索
    [BZOJ1031][JSOI2007]字符加密Cipher 后缀数组
    后缀数组学习笔记
    [SPOJ8222]NSUBSTR
  • 原文地址:https://www.cnblogs.com/kawashibara/p/9038201.html
Copyright © 2011-2022 走看看