oracle管理用户安全,oracle中管理用户的安全
管理用戶的安全
一 用戶的介紹
1.用戶管理分為以下幾個方面
(1)在指定區域內創建用戶 (表空間).
(2)制定配額以限制存儲的使用.
(3)使用描述文件限制資源的使用.
(4)通過密碼鑒別用戶
(5)通過描述文件管理密碼角色(種植密碼并鎖定用戶).
(6)分配權限給角色,分配角色給用戶
2.數據庫用戶和方案
(1)方案就是屬于某一用戶的所有對象的集合.
(2)用戶名和方案名往往是通用的.
(3)一個用戶只能關聯一個方案.
(4)創建用戶時系統會自動創建一個同名方案
3.數據庫用戶賬戶所具備的
(1)一個唯一的用戶名
(2)一個驗證方法
(3)一個默認的表空間
(4)一個臨時表空間
(5)一個用戶概要文件
(6)一個消費群
(7)一個鎖狀態
(8)每個表空間的配額.
(9)權限和角色
3.預定義的賬戶 sys和system
(1)SYS 帳戶(數據庫擁有者):
i.擁有 DBA 權限
ii.擁有 ADMIN OPTION 的所有權限
iii.擁有 startup, shutdown, 以及若干維護命令
iv.擁有數據字典
(2)SYSTEM 帳戶擁有 DBA 權限.
(3)這些帳戶并非用于常規操作
二 用戶的創建和賦予權限
1.用戶的創建
SQL> create user lao identified by lao;
User created
2.為用戶賦予權限
首先來介紹一下權限兩種表現方式
(1)System(系統權限): 允許用戶執行對于數據庫的特定行為,例如:創建表、創建用戶等
(2)Object(對象權限): 允許用戶訪問和操作一個特定的對象,例如:對其他方案下的表的查詢
(3)授予創建的lao用戶會話的權限:
SQL> grant create session to lao;
Grant succeeded
取消會話授權:
SQL> revoke create session from laowang;
Revoke succeeded
(4)打開此用戶,不能進行任何操作,要創建表,所以要授系統權限
SQL> conn lao/lao;
Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0
Connected as lao
為用戶lao創建一個系統權限
grant create table to lao;
就可以向用戶中插入信息
3.對象權限的使用和說明
我們是在lao這個用戶下授予的權限,那么在此用戶下是否可以訪問其他用戶的表呢,如果執行語句:
select * from scott.emp
查詢不到
如果切換到scott用戶下查詢,結果為:
訪問select * from lao.emp可以
沒有權限
所以應該授予一個對象權限,來互相訪問:
附一個object權限,切換到scott下,授予lao的權限為:
grant select on emp to lao
就可以在lao用戶下執行select * from scott.emp
收回權限為:權限收回 grant revoke on emp from lao
也可以切換到system用戶下:
授權:grant select on scott.emp to lao
就可以訪問lao用戶下的信息
注:如果scott用戶付給lao用戶一個權限是創建表的系統權限,如果咋scott撤銷了創建表的系統權限,lao中還有創建表的權限,前提是要賦予lao一個權限為:
lao red create table with adminss option 權限
三 角色的創建和使用
(1)創建角色
SQL> create role man;
Role created
(2)給角色賦予權限
grant create session,create table,grant any privilege to man;
(3)把角色授予lao用戶
grant man to lao;
那么擁有角色就擁有這個角色下的所有權限
注:如果在授予某個用戶角色權限之后,必須在系統權限中授予unlimited tablespace才可以使用,即是擁有一般用戶所具備的權限
總結
以上是生活随笔為你收集整理的oracle管理用户安全,oracle中管理用户的安全的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: image.helper.php,ima
- 下一篇: oracle 日志写满,Oracle归档