oracle 學習第四天 【使用者管理】

來源:互聯網
上載者:User
 

建立使用者

SQL> create user feng identified by
f123;

使用者已建立。

使用建立的使用者串連報無許可權

SQL> conn feng/f123

ERROR:

ORA-01045: user FENG lacks CREATE SESSION
privilege; logon denied

警告: 您不再串連到 ORACLE。

SQL> grant create session to feng;

SP2-0640: 未串連

SQL> conn /as sysdba

已串連。

給新使用者授權,並指定使用者資料表空間

SQL> grant create session to feng;

授權成功。

SQL> grant select any table,create
table,create view to feng ;

授權成功。

SQL> select tablespace_name from
dba_tablespaces;

TABLESPACE_NAME

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

SYSTEM

UNDOTBS1

SYSAUX

TEMP

USERS

SCOTT_SPACE

已選擇6行。

SQL> alter user feng
default tablespace users quota 50M
on users;

使用者已更改。

查看使用者建立的對象

SQL> conn feng/f123

已串連。

SQL> select object_name,created from
user_objects;

未選定行

查看使用者的許可權

SQL> select * from session_privs;

PRIVILEGE

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

CREATE SESSION

CREATE TABLE

SELECT ANY TABLE

CREATE VIEW

查詢最近7天內建立的使用者

SQL> select username ,created from
dba_users

 
2  where

 

round(created,'day')>=round(sysdate,'day')-7;

USERNAME                       CREATED

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

FENG                           21-5月 -11

改變使用者口令

SQL> alter user feng
identified by f456;

使用者已更改。

SQL> conn feng/f456

已串連。

給使用者加解鎖

SQL> alter user feng account lock;

使用者已更改。

SQL> alter user feng account unlock;

使用者已更改。

刪除使用者

SQL> drop user feng;

使用者已刪除。

SQL>drop user 使用者名稱;  //使用者沒有建任何實體
SQL> drop user 使用者名稱 CASCADE;  // 將使用者及其所建實體全部刪除

*1. 當前正串連的使用者不得刪除。

 

系統許可權回收:系統許可權只能由DBA使用者回收
SQL> grant connect,resource to feng;

 

授權成功。

 

SQL>  Revoke connect, resource from  feng;

 

撤銷成功。

實體許可權回收:
SQL>Revoke  select , update  on 
product   from   feng;  //傳遞的許可權將全部丟失

角色管理

.建立一個角色
sql>create
role role1;

2.授權給角色
sql>grant
create any table,create procedure to role1;

3.授予角色給使用者
sql>grant
role1 to user1;

4.查看角色所包含的許可權
sql>select
* from role_sys_privs;

5.建立帶有口令以角色(在生效帶有口令的角色時必須提供口令)
sql>create role role1 identified by password1;

6.修改角色:是否需要口令
sql>alter
role role1 not identified;
sql>alter role role1 identified by password1;

7.設定目前使用者要生效的角色
(註:角色的生效是一個什麼概念呢?假設使用者a有b1,b2,b3三個角色,那麼如果b1未生效,則b1所包含的許可權對於a來講是不擁有的,只有角色生效了,角色內的許可權才作用於使用者,最大可生效角色數由參數MAX_ENABLED_ROLES設定;在使用者登入後,oracle將所有直接賦給使用者的許可權和使用者預設角色中的許可權賦給使用者。)
sql>set
role role1;//使role1生效
sql>set
role role,role2;//使role1,role2生效
sql>set
role role1 identified by password1;//使用帶有口令的role1生效
sql>set
role all;//使用該使用者的所有角色生效
sql>set
role none;//設定所有角色失效
sql>set
role all except role1;//除role1外的該使用者的所有其它角色生效。
sql>select
* from SESSION_ROLES;//查看目前使用者的生效的角色。

8.修改指定使用者,設定其預設角色
sql>alter
user user1 default role role1;
sql>alter user user1 default role all except role1;

9.刪除角色
sql>drop
role role1;
角色刪除後,原來擁用該角色的使用者就不再擁有該角色了,相應的許可權也就沒有了。

 

說明:

1)無法使用WITH GRANT OPTION為角色授予對象許可權

2)可以使用WITH ADMIN OPTION 為角色授予系統許可權,取消時不是級聯

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.