<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-7  評論-24  文章-102  trackbacks-0


    一、創建用戶
    二、用戶授權
    三、角色機制
    四、配置模版及資源限制
    附錄


        數據庫安全的作用是控制用戶是否能夠對數據庫及其中的對象執行操作。要連接到 Oracle 數據庫,就需要創建一個用戶帳戶,該用戶可以根據需要授予不同的操作權限。


    一、創建用戶    CREATE/ALTER/DROP USER xxxx    [幫助文檔]

    CREATE USER prod4
      IDENTIFIED BY ssss
      DEFAULT TABLESPACE users
      TEMPORARY TABLESPACE temp;

        刪除一個用戶時,會刪除該用戶所擁有的模式對象。DROP USER prod4 CASCADE;



    二、用戶授權        GRANT/REVOKE        [幫助文檔]
        權限(privilege)即執行特定類型 SQL 語句的權利,若無任何權限,新創建用戶將無法登陸 Oracle 數據庫。

    1、系統權限
        系統權限(system privilege)允許用戶執行某些數據庫操作。

        GRANT CONNECT,RESOURCE,DBA TO prod4
          [WITH ADMIN OPTION];

        CONNECT,RESOURCE,DBA 三個預定義的角色封裝了大部分系統權限;
        WITH ADMIN OPTION 選項使 被授權的用戶 也可以把該權限賦予其他用戶。(級聯授權,A->B、B->C)

    ps.更多的系統權限,請參考幫助文檔 GRANT - Table 18-1 System Privileges。


    2、模式對象權限
        模式對象權限(schema object privilege)允許用戶對某一特定對象執行特定操作。要授予對象權限,用戶必須滿足以下條件之一:
        ● 用戶擁有指定對象;
        ● 或者用戶已經擁有 GRANT OPTION (級聯授權)的能力。

    sys:
        GRANT SELECT ON sys.test TO prod
          [WITH GRANT OPTION];
    prod:
        SELECT * FROM sys.test;

    ps.更多的模式對象權限,請參考幫助文檔 GRANT - Table 18-3 Object Privileges Available for Particular Objects。



    三、角色機制    CREATE/ALTER/DROP ROLE xxx        [幫助文檔]
        角色(role)類似于操作系統中的用戶組,它封裝了多個權限。用戶可以通過角色繼承權限,從而簡化權限的管理與控制。推薦使用基于角色授權,通過角色控制用戶。

        角色的使用注意:
        ● 角色不屬于任何模式(schema)。因此,創建角色的用戶可以被移除而不會對角色有所影響。
        ● 角色可以被授予其他角色。但是角色不能授予其自身,角色間也不能形成閉環。例如,當角色 B 已經被授予角色 A 時,角色 A 就不能再授予角色 B。

        -- 創建角色 myrole 并賦予權限,然后將該角色賦予用戶 prod(繼承該角色) --
        CREATE ROLE myrole;
        GRANT SELECT ON sys.test TO myrole;
        GRANT SELECT ON sys.test4 TO myrole;
        GRANT myrole TO prod;



    四、配置模版及資源限制    CREATE/ALTER/DROP PROFILE xxx
        每個用戶都對應一套配置模版(profile),其中描述了用戶使用多種系統資源時的限制,具體包括:

        ● 用戶能夠建立的并發會話(concurrent session)數
        ● 用戶會話及 SQL 語句對 Oracle 進行一次調用時可用的 CPU 處理時間
        ● 用戶會話及 SQL 語句對 Oracle 進行一次調用時可用的邏輯 I/O(logical I/O)量
        ● 用戶會話的最大空閑時間(idle time)
        ● 用戶會話的最大連接時間(connect time)
        ● 密碼限制規則:
            多次嘗試登錄均失敗時對帳戶加鎖
            密碼過期時間(expiration period)及寬限期(grace period)
            密碼重用(reuse)及復雜度(complexity)限制規則



    附錄
    1、模式(schema):模式是指用戶與其擁有對象的邏輯集合。

    2、[轉] Oracle 查看用戶權限
    ORACLE中數據字典視圖分為3大類,用前綴區別,分別為:USER,ALL 和 DBA,許多數據字典視圖包含相似的信息。

        ● USER_*:有關用戶所擁有的對象信息,即用戶自己創建的對象信息
        ● ALL_*:有關用戶可以訪問的對象的信息,即用戶自己創建的對象的信息加上其他用戶創建的對象但該用戶有權訪問的信息
        ● DBA_*:有關整個數據庫中對象的信息

    (這里的*可以為TABLES, INDEXES, OBJECTS, USERS等)

    1.查看所有用戶:
    select * from dba_user;
    select * from all_users;
    select * from user_users;

    2.查看用戶系統權限:
    select * from dba_sys_privs;
    select * from all_sys_privs;
    select * from user_sys_privs;

    3.查看用戶對象權限:
    select * from dba_tab_privs;
    select * from all_tab_privs;
    select * from user_tab_privs;

    4.查看所有角色:
    select * from dba_roles;

    5.查看用戶所擁有的角色:
    select * from dba_role_privs;
    select * from user_role_privs;

    6.查看當前用戶的缺省表空間
    select username,default_tablespace from user_users;

    7.查看某個角色的具體權限,如grant connect,resource,create session,create view to TEST;
      查看RESOURCE具有那些權限,用SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='RESOURCE';


    3、[轉] 對象權限

    模式對象/權限 ALTER DELETE EXECUTE INDEX INSERT READ REFERENCE SELECT UPDATE
     Directory            √      
     function      √            
     procedure      √            
     package      √            
     DB Object      √            
     Libary      √            
     Operation      √            
     Sequence  √                
     Table  √  √    √  √    √  √
     Type      √            
     View    √      √      √  √

        對象由不止一個權限,特殊權限ALL可以被授予或撤銷。如TABLE的ALL權限就包括:
        SELECT,INSERT,UPDATE和DELETE,還有INDEX,ALTER,和REFERENCE。


    4、[轉] Oracle 9i預定義的角色

     角色名稱  說明
     CONNECT
     數據庫連接角色,用于連接數據庫,具有創建簇、數據庫鏈接、序列、同義詞、表和視圖,以及修改會話的權利
     DBA
     數據庫管理員角色,具有所有使用ADMIN選項創建的系統權限,可以將系統權限授予其他用戶或角色
     DELETE_CATALOG_ROLE
     刪除目錄角色,可以刪除或重建數據字典
     EXECUTE_CATALOG_ROLE
     執行目錄角色,能夠執行所有系統包
     EXP_FULL_DATABASE
     能夠使用導出程序執行數據庫的完全和增量導出
     IMP_FULL_DATABASE
     能夠使用導入程序執行數據庫的完全導入
     RESOURCE
     可以創建簇、表、序列以及PL/SQL編程用方案對象,包括過程、程序包、觸發器等
     SELECT_CATALOG_ROLE
     查詢數據字典表或視圖


    參考文章:
    Oracle Concepts 中文版 (10g R2) -- 第 20 章,數據庫安全


    posted on 2008-10-13 20:03 黃小二 閱讀(2234) 評論(0)  編輯  收藏 所屬分類: [DB].Oracle
    主站蜘蛛池模板: 免费一级e一片在线播放| 亚洲电影一区二区| 亚洲成a人无码亚洲成av无码| 亚洲精品国产av成拍色拍| 麻豆一区二区免费播放网站| 亚洲日本国产乱码va在线观看| 1000部免费啪啪十八未年禁止观看 | 亚洲欧洲校园自拍都市| 99re6免费视频| 亚洲国产成人乱码精品女人久久久不卡 | 三年片免费观看大全国语| 丁香花免费高清视频完整版| 亚洲午夜电影在线观看| 天黑黑影院在线观看视频高清免费 | 最近免费中文字幕大全免费版视频| 亚洲成综合人影院在院播放| 国产卡一卡二卡三免费入口| 亚洲一区二区三区高清在线观看 | 免费A级毛片在线播放| 中文字幕亚洲免费无线观看日本 | 成人黄页网站免费观看大全| 亚洲av午夜福利精品一区人妖| 亚洲av永久无码精品秋霞电影秋| 日韩一品在线播放视频一品免费| 男女男精品网站免费观看| 国产偷国产偷亚洲清高动态图 | 国产午夜精品免费一区二区三区| 久久久无码精品亚洲日韩蜜臀浪潮| 亚洲免费观看网站| 免费在线观看亚洲| 成年女人永久免费观看片| 一级毛片高清免费播放| 国产免费av一区二区三区| 久久成人18免费网站| 亚洲精品国产免费| 7m凹凸精品分类大全免费| 亚洲精品蜜夜内射| 亚洲av午夜福利精品一区人妖| 91视频国产免费| 国产免费一区二区三区免费视频 | 亚洲国产精品ⅴa在线观看|