a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 數據庫 > Oracle > 正文

oracle權限管理

2024-08-29 13:54:02
字體:
來源:轉載
供稿:網友
一、系統的默認用戶
java代碼
sys;//系統管理員,擁有最高權限      
system;//本地管理員,次高權限      
scott;//普通用戶,密碼默認為tiger,默認未解鎖   

二、登陸
Java代碼
sqlplus conn / as sysdba;//登陸sys帳戶      
sqlplus sys as sysdba;//同上      
sqlplus scott/tiger;//登陸普通用戶scott  

三、管理用戶
Java代碼
create user zhangsan;//在管理員帳戶下,創建用戶zhangsan      
alert user scott identified by tiger;//修改密碼  

四,授予權限
1、默認的普通用戶scott默認未解鎖,不能進行那個使用,新建的用戶也沒有任何權限,必須授予權限
Java代碼
/*管理員授權*/     
grant create session to zhangsan;//授予zhangsan用戶創建session的權限,即登陸權限      
grant unlimited session to zhangsan;//授予zhangsan用戶使用表空間的權限      
grant create table to zhangsan;//授予創建表的權限      
grant drop table to zhangsan;//授予刪除表的權限      
grant insert table to zhangsan;//插入表的權限      
grant update table to zhangsan;//修改表的權限      
grant all to public;//這條比較重要,授予所有權限(all)給所有用戶(public)    

2、oralce對權限管理比較嚴謹,普通用戶之間也是默認不能互相訪問的,需要互相授權
Java代碼
/*oralce對權限管理比較嚴謹,普通用戶之間也是默認不能互相訪問的*/     
grant select on tablename to zhangsan;//授予zhangsan用戶查看指定表的權限      
grant drop on tablename to zhangsan;//授予刪除表的權限      
grant insert on tablename to zhangsan;//授予插入的權限      
grant update on tablename to zhangsan;//授予修改表的權限      
grant insert(id) on tablename to zhangsan;      
grant update(id) on tablename to zhangsan;//授予對指定表特定字段的插入和修改權限,注意,只能是insert和update      
grant alert all table to zhangsan;//授予zhangsan用戶alert任意表的權限    

五、撤銷權限
Java代碼
基本語法同grant,關鍵字為revoke  

六、查看權限
Java代碼
select * from user_sys_PRivs;//查看當前用戶所有權限      
select * from user_tab_privs;//查看所用用戶對表的權限    

七、操作表的用戶的表
Java代碼
/*需要在表名前加上用戶名,如下*/     
select * from zhangsan.tablename    

八、權限傳遞
即用戶A將權限授予B,B可以將操作的權限再授予C,命令如下:
Java代碼
grant alert table on tablename to zhangsan with admin option;//關鍵字 with admin option      
grant alert table on tablename to zhangsan with grant option;//關鍵字 with grant option效果和admin類似    

九、角色
角色即權限的集合,可以把一個角色授予給用戶
Java代碼
create role myrole;//創建角色      
grant create session to myrole;//將創建session的權限授予myrole      
grant myrole to zhangsan;//授予zhangsan用戶myrole的角色       
drop role myrole;刪除角色      
/*但是有些權限是不能授予給角色的,比如unlimited tablespace和any關鍵字*/   


本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/JustForFly/archive/2009/10/16/4681707.aspx

對象權限:

1、對象權限賦予語法:
    GRANT object_privilege ON object_name TO username [ WITH GRANT OPTION ];
    注:使用WITH GRANT OPTION語句后,使用戶可以將相同權限賦給其他用戶,與系統權限相同。

2、對象權限撤銷語法:
    REVOKE object_privilege ON object_name FROM username;
    注:當刪除A用戶的權限時,通過A賦予B的權限自動消失,與系統權限相反。

3、查看具體的對象權限:
    select * from dba_tab_privs where grantee= 'WANGXIAOQI' ;   
    select * fromTABLE_PRIVILEGESwhere GRANTEE='WANGXIAOQI';  
    注1:兩者均可以查看對象權限,只是展現形式不同。
    注2:表名為TABLE_PRIV,但 不光只有table,而是所有object的信息,包括function、procedure、package等。

4、object privilege 種類比較少,而且根據對象類型的不同而不同。

    在賦值時可以使用all代替該類型對象的所有權限類型,如:
    grant select , update , delete , insert on table_name to user_name;

    grant all on table_name to user_name;


    注:對于TABLE,all包括:ALTER、DELETE、INDEX、INSERT、SELECT、UPDATE、REFERENCES、ON COMMIT REFRESH、QUERY REWRITE、DEBUG、FlashBACK



角色管理:

1、通過role來簡化賦權操作,每個role含有若干項系統權限。role包括系統預定義和自定義兩種。
    select * from dba_roles; --查詢當前所有ROLE列表,包括自定義
    select * from dba_role_privs; --查詢某用戶的ROLE權限
    select * from ROLE_SYS_PRIVS; --查詢當前用戶的ROLE,及其所包含的系統權限

2、系統預定義角色:
    CONNECT:
        CREATE VIEW
        CREATE TABLE
        ALTER SESSION
        CREATE CLUSTER
        CREATE SESSION
        CREATE SYNONYM
        CREATE SEQUENCE
        CREATE DATABASE LINK
    RESOURCE:
        CREATE TYPE
        CREATE TABLE
        CREATE CLUSTER
        CREATE TRIGGER
        CREATE OperaTOR
        CREATE SEQUENCE
        CREATE INDEXTYPE
        CREATE PROCEDURE
    另外包括比較重要的ROLE如:DBA、EXP_FULL_DATABASE、IMP_FULL_DATABASE等。


3、自定義角色:
    
    創建ROLE:
    CREATE ROLE role_name
    [ NOT IDENTIFIED | IDENTIFIED BY passWord]
    注:IDENTIFIED 表示在修改該ROLE時是否需要提供密碼 <修改,不包括賦權和取消權限>

    在創建 role 之后,使用 grant 和 revoke 手動設置 role 對應的權限
    再使用 grant 和 revoke 將 role 賦給 user
    注:可以將 role 賦給 role

4、啟用和禁用ROLE:
    SET ROLE [role [identified by password] |,role [identified by password]...]
    | ALL [EXCEPT role[,role]...]
    | NONE ];
    注:ALL 表示啟用改用戶的所有角色,NONE表示禁用所有角色。

    例:
    禁用所有角色:setrolenone;
    啟用所有角色:setroleall; --role不能有密碼
    啟用某個角色:setrole role_test identifiedby test; --有密碼的話
    禁用某個角色:setroleallexcept role_test;
    注:setrole命令是覆蓋性質的,即不能先啟用一個,再啟用另一個,必須一條命令中全部啟動;

5、修改用戶時設置角色:
    ALTER USER username
    [default role [role_name[,role_name,...]]
    | all [except role_name[,role_name,...]]
    | none ];


本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/cosio/archive/2009/08/18/4459756.aspx


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 成人高清在线 | 国产中文视频 | 99精品一区二区三区 | 国产精品久久久久久久久久久久冷 | 国产精品久久久久久久久久久久冷 | 国产裸体bbb视频 | 国产精品久久久久久久久久久久午夜片 | 午夜精品久久久 | 精品色 | 亚洲精品成人av | 成人精品一区二区三区中文字幕 | 91久久久www播放日本观看 | 91在线看视频 | 日韩高清在线 | 久久久九九九九 | 亚洲精品久久久久久下一站 | 色婷婷综合久色aⅴ | 狠狠操综合网 | 青青草免费在线观看 | 日韩欧美国产成人一区二区 | 国产精品一区三区 | 午夜久久视频 | 欧美精品区| 中文字幕在线观看 | 黄色av免费看 | 日中文字幕在线 | 日韩www| 亚洲精品在线网站 | 亚洲精品久久久久久久久久久 | 国产色视频在线观看免费 | 亚洲午夜精品一区二区三区 | 久久久久久国产精品免费免费 | 最近日韩中文字幕 | 亚洲视频免费在线观看 | 69热在线观看 | 欧美日韩在线一区二区 | 成人国产网站 | 狠狠色噜噜| 成人在线观 | 蜜桃视频网站在线观看 | 日韩成人在线播放 |