2016年2月8日 星期一

Oracle User區


參考︰ http://www.techonthenet.com/oracle/users/index.php


參考︰http://chingchangmeng.blogspot.tw/2013/09/oracle.html


建帳號


CREATE USER &USER BY &PWD  ;
改密碼
ALTER USER   &USER    IDENTIFIED BY &PWD ;


一開始建帳號又要給登入
CREATE   USER    &SER   IDENTIFIED  BY    &PWD  ;

GRANT CREATE SESSION TO &USER  ;


解鎖,鎖定

ALTER USER elvismeng ACCOUNT UNLOCK;
ALTER USER elvismeng ACCOUNT LOCK;





學習目標:


學會如何管理Oracle 帳號、 密碼、 權限與角色。


1. 新增帳號CREATE USER 使用者名稱  IDENTIFIED BY 密碼;
2. 權限設定GRANT 權限 ON 資料庫物件 TO 使用者名稱;
                      GRANT 角色 TO 使用者名稱
3. 取消權限: REVOKE 權限 ON 資料庫物件 FROM 使用者名稱;
4. 新增角色: CREATE ROLE 角色名稱 [ NOT IDENTIFIED | IDENTIFIED { BY 密碼 | USING [ 鋼要 .] PACKAGE | EXTERNALLY | GLOBALLY } ] ;
5. 取消角色: DROP ROLE 角色名稱
6. 更改密碼ALTER USER  使用者名稱 IDENTIFIED BY 密碼;
7. 強制變更密碼ALTER USER 使用者名稱 PASSWORD EXPIRE;
8. 鎖住現有的使用者ALTER USER 使用者名稱 ACCOUNT LOCK;9. 解鎖現有的使用者ALTER USER 使用者名稱 ACCOUNT UNLOCK;10. 刪除現有的使用者DROP USER 使用者名稱;






1. 新增帳號:


SQL> CREATE USER elvismeng  IDENTIFIED BY elvismeng;

如以此帳號立即登入, 系統會告知下列錯誤:
C:\Documents and Settings\elvismeng>sqlplus elvismeng/elvismeng
SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 3月 26 10:23:04 2008
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
ERROR:
ORA-01045: 使用者 ELVISMENG 缺乏 CREATE SESSION 權限; 登入被拒

系統告知使用者elvismeng並沒有CREATE SESSION的權限 (Privilege), 所以無法登入.  




2. 建立權限


我們可透過IE瀏覽器來設定使用者elvismeng的權限:
我們也可以Command Line的方式設定權限:

SQL> GRANT CREATE SESSION TO elvismeng;
順利授權.


接下來, 我們驗證帳號elvismeng是否有權限登入到資料庫:

SQL> connect elvismeng/elvismeng;
已連線.



3 取消權限


使用者權限亦可依需求取消:

SQL> REVOKE CREATE SESSION FROM elvismeng;
順利撤銷.


4. 角色 (Role)


建立角色:

SQL> CREATE ROLE TEST_ROLE;
已建立角色.

SQL> GRANT CREATE SESSION TO TEST_ROLE;
順利授權.

SQL> CREATE USER TEST IDENTIFIED BY TEST;
已建立使用者.

SQL> GRANT TEST_ROLE TO TEST;
順利授權.

取消角色:
SQL> DROP ROLE TEST_ROLE;
已刪除角色.

5. 更改密碼


SQL> connect elvismeng/elvismeng
已連線.

SQL> ALTER USER elvismeng IDENTIFIED BY elvismeng01;
已更改使用者.
SQL> connect elvismeng/elvismeng
ERROR:
ORA-01017: 使用者名稱/密碼無效; 無法登入
警告: 您已不再與 ORACLE 相連

SQL> connect elvismeng/elvismeng01
已連線.

6. 強制變更密碼


C:\Documents and Settings\elvismeng>SQLPLUS

SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 3月 26 16:09:27 2008Copyright (c) 1982, 2005, Oracle.  All rights reserved.
輸入使用者名稱:  SYSTEM
輸入密碼:

連線到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options


SQL> ALTER USER elvismeng PASSWORD EXPIRE已更改使用者.

SQL> GRANT CREATE SESSION TO elvismeng;順利授權.

SQL> DISCONNECT
已切斷與 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 的連線

 

SQL> CONNECT elvismeng/elvismeng01
ERROR:
ORA-28001: 密碼已經屆滿

為 elvismeng 變更密碼
新密碼:
重新輸入新密碼:
變更密碼
已連線.

 

SQL>

7. 鎖住 / 解除現有的使用者


SQL> ALTER USER elvismeng ACCOUNT LOCK;
已更改使用者.

SQL> GRANT CREATE SESSION TO elvismeng;順利授權.

SQL> DISCONNECT
已切斷與 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 的連線

 

SQL> CONNECT elvismeng/elvismeng
ERROR:
ORA-28000: 帳戶已被鎖定


SQL> DISCONNECT

SQL> CONNECT SYSTEM/SYSTEM
已連線.

SQL> ALTER USER elvismeng ACCOUNT UNLOCK;
已更改使用者.
 

SQL> CONNECT elvismeng/elvismeng
已連線.



8. 刪除現有的使用者


SQL> DROP USER elvismeng;
已刪除使用者.
 

SQL> connect elvismeng/elvismeng;
ERROR:
ORA-01017: 使用者名稱/密碼無效; 無法登入
警告: 您已不再與 ORACLE 相連

沒有留言:

RHEL install EPEL

  https://www.linuxtechi.com/install-epel-repo-on-rhel-system/ EPEL dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest...