Oracle權(quán)限+用戶+角色管理_第1頁
Oracle權(quán)限+用戶+角色管理_第2頁
Oracle權(quán)限+用戶+角色管理_第3頁
Oracle權(quán)限+用戶+角色管理_第4頁
Oracle權(quán)限+用戶+角色管理_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

一.前言1.查看所有用戶:

select*fromdba_users;

select*fromall_users;

select*fromuser_users;

2.查看用戶或角色系統(tǒng)權(quán)限(直接賦值給用戶或角色的系統(tǒng)權(quán)限):

select*fromdba_sys_privs;

select*fromuser_sys_privs;3.查看角色(只能查看登陸用戶擁有的角色)所包含的權(quán)限sql>select*fromrole_sys_privs;

4.查看用戶對象權(quán)限:(實際從pl/sql界面,用戶的user視圖中可以看到)

select*fromdba_tab_privs;

select*fromall_tab_privs;

select*fromuser_tab_privs;

5.查看所有角色:

select*fromdba_roles;

6.查看用戶或角色所擁有的角色:

select*fromdba_role_privs;

select*fromuser_role_privs;7.查看哪些用戶有sysdba或sysoper系統(tǒng)權(quán)限(查詢時需要相應(yīng)權(quán)限)select*fromV$PWFILE_USERS二.Oracle權(quán)限設(shè)置一、權(quán)限分類:

系統(tǒng)權(quán)限:系統(tǒng)規(guī)定用戶使用數(shù)據(jù)庫的權(quán)限。(系統(tǒng)權(quán)限是對用戶而言)。實體權(quán)限:某種權(quán)限用戶對其它用戶的表或視圖的存取權(quán)限。(是針對表或視圖而言的)。

二、系統(tǒng)權(quán)限管理:

1、系統(tǒng)權(quán)限分類:

DBA:擁有全部特權(quán),是系統(tǒng)最高權(quán)限,只有DBA才可以創(chuàng)建數(shù)據(jù)庫結(jié)構(gòu)。RESOURCE:擁有Resource權(quán)限的用戶只可以創(chuàng)建實體,不可以創(chuàng)建數(shù)據(jù)庫結(jié)構(gòu)。CONNECT:擁有Connect權(quán)限的用戶只可以登錄Oracle,不可以創(chuàng)建實體,不可以創(chuàng)建數(shù)據(jù)庫結(jié)構(gòu)。對于普通用戶:授予connect,resource權(quán)限。

對于DBA管理用戶:授予connect,resource,dba權(quán)限。

2、系統(tǒng)權(quán)限授權(quán)命令:

[系統(tǒng)權(quán)限只能由DBA用戶授出:sys,system(最開始只能是這兩個用戶)]

授權(quán)命令:SQL>grantconnect,resource,dbato用戶名1[,用戶名2]...;[普通用戶通過授權(quán)可以具有與system相同的用戶權(quán)限,但永遠不能達到與sys用戶相同的權(quán)限,system用戶的權(quán)限也可以被回收。]例:

SQL>connectsystem/manager

SQL>Createuseruser50identifiedbyuser50;

SQL>grantconnect,resourcetouser50;查詢用戶擁有哪里權(quán)限:

SQL>select*fromdba_role_privs;

SQL>select*fromdba_sys_privs;

SQL>select*fromrole_sys_privs;刪除用戶:SQL>dropuser用戶名cascade;

//加上cascade則將用戶連同其創(chuàng)建的東西全部刪除

3、系統(tǒng)權(quán)限傳遞:

增加WITHADMINOPTION選項,則得到的權(quán)限可以傳遞。SQL>grantconnect,resorcetouser50withadminoption;

//可以傳遞所獲權(quán)限。

4、系統(tǒng)權(quán)限回收:系統(tǒng)權(quán)限只能由DBA用戶回收

命令:SQL>Revokeconnect,resourcefromuser50;

說明:1)如果使用WITHADMINOPTION為某個用戶授予系統(tǒng)權(quán)限,那么對于被這個用戶授予相同權(quán)限的所有用戶來說,取消該用戶的系統(tǒng)權(quán)限并不會級聯(lián)取消這些用戶的相同權(quán)限。2)系統(tǒng)權(quán)限無級聯(lián),即A授予B權(quán)限,B授予C權(quán)限,如果A收回B的權(quán)限,C的權(quán)限不受影響;系統(tǒng)權(quán)限可以跨用戶回收,即A可以直接收回C用戶的權(quán)限。

三、實體權(quán)限管理

1、實體權(quán)限分類:select,update,insert,alter,index,delete,all

//all包括所有權(quán)限

execute

//執(zhí)行存儲過程權(quán)限user01:

SQL>grantselect,update,insertonproducttouser02;

SQL>grantallonproducttouser02;user02:

SQL>select*fromduct;//此時user02查user_tables,不包括duct這個表,但如果查all_tables則可以查到,因為他可以訪問。

2.將表的操作權(quán)限授予全體用戶:

SQL>grantallonproducttopublic;

//public表示是所有的用戶,這里的all權(quán)限不包括drop。[實體權(quán)限數(shù)據(jù)字典]:

SQL>selectowner,table_namefromall_tables;//用戶可以查詢的表

SQL>selecttable_namefromuser_tables;

//用戶創(chuàng)建的表

SQL>selectgrantor,table_schema,table_name,privilegefromall_tab_privs;//獲權(quán)可以存取的表(被授權(quán)的)

SQL>selectgrantee,owner,table_name,privilegefromuser_tab_privs;

//授出權(quán)限的表(授出的權(quán)限)

3.DBA用戶可以操作全體用戶的任意基表(無需授權(quán),包括刪除):

DBA用戶:

SQL>Createtableduct(

idnumber(10),

namevarchar2(20));

SQL>droptablestud02.emp;SQL>createtablestud02.employee

as

select*fromscott.emp;

4.實體權(quán)限傳遞(withgrantoption):

user01:SQL>grantselect,updateonproducttouser02withgrantoption;//user02得到權(quán)限,并可以傳遞。

5.實體權(quán)限回收:

user01:

SQL>Revokeselect,updateonproductfromuser02;

//傳遞的權(quán)限將全部丟失。

說明1)如果取消某個用戶的對象權(quán)限,那么對于這個用戶使用WITHGRANTOPTION授予權(quán)限的用戶來說,同樣還會取消這些用戶的相同權(quán)限,也就是說取消授權(quán)時級聯(lián)的。

Oracle用戶管理

一、創(chuàng)建用戶的Profile文件

SQL>createprofilestudentlimit

//student為資源文件名

FAILED_LOGIN_ATTEMPTS

3

//指定鎖定用戶的登錄失敗次數(shù)

PASSWORD_LOCK_TIME5

//指定用戶被鎖定天數(shù)

PASSWORD_LIFE_TIME30

//指定口令可用天數(shù)

二、創(chuàng)建用戶

SQL>CreateUserusername

Identifiedbypassword

DefaultTablespacetablespace

TemporaryTablespacetablespace

Profileprofile

Quotainteger/unlimitedontablespace;例:

SQL>Createuseracc01

identifiedbyacc01

//如果密碼是數(shù)字,請用雙引號括起來

defaulttablespaceaccount

temporarytablespacetemp

profiledefault

quota50monaccount;

SQL>grantconnect,resourcetoacc01;[*]查詢用戶缺省表空間、臨時表空間

SQL>selectusername,default_tablespace,temporary_tablespacefromdba_users;[*]查詢系統(tǒng)資源文件名:

SQL>select*fromdba_profiles;

資源文件類似表,一旦創(chuàng)建就會保存在數(shù)據(jù)庫中。

SQL>selectusername,profile,default_tablespace,temporary_tablespacefromdba_users;SQL>createprofilecommonlimit

failed_login_attempts5

idle_time5;

SQL>Alteruseracc01profilecommon;

三、修改用戶:

SQL>AlterUser用戶名

Identified口令

DefaultTablespacetablespace

TemporaryTablespacetablespace

Profileprofile

Quotainteger/unlimitedontablespace;

1、修改口令字:

SQL>Alteruseracc01identifiedby"12345";2、修改用戶缺省表空間:

SQL>Alteruseracc01defaulttablespaceusers;3、修改用戶臨時表空間

SQL>Alteruseracc01temporarytablespacetemp_data;4、強制用戶修改口令字:

SQL>Alteruseracc01passwordexpire;5、將用戶加鎖

SQL>Alteruseracc01accountlock;

//加鎖

SQL>Alteruseracc01accountunlock;

//解鎖

四、刪除用戶

SQL>dropuser用戶名;

//用戶沒有建任何實體

SQL>dropuser用戶名CASCADE;

//將用戶及其所建實體全部刪除*1.當(dāng)前正連接的用戶不得刪除。

五、監(jiān)視用戶:

1、查詢用戶會話信息:

SQL>selectusername,sid,serial#,machinefromv$session;2、刪除用戶會話信息:

SQL>Altersystemkillsession'sid,serial#';3、查詢用戶SQL語句:

SQL>selectuser_name,sql_textfromv$open_cursor;

Oracle角色管理一、何為角色

角色。角色是一組權(quán)限的集合,將角色賦給一個用戶,這個用戶就擁有了這個角色中的所有權(quán)限。二、系統(tǒng)預(yù)定義角色

預(yù)定義角色是在數(shù)據(jù)庫安裝后,系統(tǒng)自動創(chuàng)建的一些常用的角色。下介簡單的介紹一下這些預(yù)定角色。角色所包含的權(quán)限可以用以下語句查詢:

sql>select*fromrole_sys_privswhererole='角色名';1.CONNECT,RESOURCE,DBA

這些預(yù)定義角色主要是為了向后兼容。其主要是用于數(shù)據(jù)庫管理。oracle建議用戶自己設(shè)計數(shù)據(jù)庫管理和安全的權(quán)限規(guī)劃,而不要簡單的使用這些預(yù)定角色。將來的版本中這些角色可能不會作為預(yù)定義角色。

2.DELETE_CATALOG_ROLE,EXECUTE_CATALOG_ROLE,SELECT_CATALOG_ROLE

這些角色主要用于訪問數(shù)據(jù)字典視圖和包。

3.EXP_FULL_DATABASE,IMP_FULL_DATABASE

這兩個角色用于數(shù)據(jù)導(dǎo)入導(dǎo)出工具的使用。

4.AQ_USER_ROLE,AQ_ADMINISTRATOR_ROLE

AQ:AdvancedQuery。這兩個角色用于oracle高級查詢功能。

5.SNMPAGENT

用于oracleenterprisemanager和IntelligentAgent

6.RECOVERY_CATALOG_OWNER

用于創(chuàng)建擁有恢復(fù)庫的用戶。關(guān)于恢復(fù)庫的信息,參考oracle文檔《Oracle9iUser-ManagedBackupandRecoveryGuide》

7.HS_ADMIN_ROLE

ADBAusingOracle'sheterogeneousservicesfeatureneedsthisroletoaccessappropriatetablesinthedatadictionary.

三、管理角色

1.建一個角色

sql>createrolerole1;

2.授權(quán)給角色

sql>grantcreateanytable,createproceduretorole1;

3.授予角色給用戶

sql>grantrole1touser1;

4.查看角色所包含的權(quán)限

sql>select*fromrole_sys_privs;

5.創(chuàng)建帶有口令以角色(在生效帶有口令的角色時必須提供口令)

sql>createrolerole1identifiedbypassword1;

6.修改角色:是否需要口令

sql>alterrolerole1notidentified;

sql>alterrolerole1identifiedbypassword1;

7.設(shè)置當(dāng)前用戶要生效的角色

(注:角色的生效是一個什么概念呢?假設(shè)用戶a有b1,b2,b3三個角色,那么如果b1未生效,則b1所包含的權(quán)限對于a來講是不擁有的,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論