----
-----------TCL
A C I D
---commit
---rollback
自动提交
exit disconnect conn DDL DCL
自动回滚
X shut mmediate 断电 断网
-------------------------------------------------------------------------------
DCL
GRANT 授权
REVOKE 回收权限
GRANT 权限|角色 TO 用户|角色
REVOKE 权限|据色 FROM 用户|角色
权限---privilege
用户
属性
USERNAME NOT NULL VARCHAR2(30)
USER_ID NOT NULL NUMBER
PASSWORD VARCHAR2(30)
ACCOUNT_STATUS NOT NULL VARCHAR2(32)
LOCK_DATE DATE
EXPIRY_DATE DATE
DEFAULT_TABLESPACE NOT NULL VARCHAR2(30)
TEMPORARY_TABLESPACE NOT NULL VARCHAR2(30)
CREATED NOT NULL DATE
--OPEN
---LOCKED
-EXPIRED
--locked & expired
SQL> create user user2 identified by user2 account lock;---LOCK
SQL> create user user2 identified by user2 ;-----------------OPEN
SQL> create user user3 identified by user3 password expire; ---EXPIRE
SQL> create user user4 identified by user4 password expire account lock; --EXPIRE LOCK
修改属性
解锁|上锁
ALTER USER XXX ACCOUNT UNLOCK;
密码过期
ALTER USER XXX PASSWORD EXPIRE;
密码忘记
ALTER USER XX IDENTIFIED BY XXXX;
查看数据库里有哪些权限?
dba_sys_privs --查看用户直接有什么权限
dba_roles --查看数据库有什么角色
session_privs --查看自己有什么权限
dba_role_privs --查看用户有什么角色
as sysdba
SQL> desc dba_sys_privs
Name
-----------------
GRANTEE 权限给了谁,谁有什么权限
PRIVILEGE 有什么权限
ADMIN_OPTION 是否允许级联
角色 里面 套 角色
user12-----role1----resource---8 -----10
----connect----1
select privilege from dba_sys_privs where grantee='USER12';---0
select grateed_role from dba_role_privs where grantee='USER12'---1--role1
select privilege from dba_sys_privs where grantee='ROLE1';---0
r1--r2----priv
-role---r3---pr
--x
dba_sys_privs
dba_role_privs
grant create session to new1 identified by new1;
drop role r1;
drop role r2;
create role r1;
create role r2;
grant create table to r1;
grant create view to r2;
grant r1 to r2;
grant r2 to new1;
dba---new1
new1---sesi
NEW1-----create seession
--ROLE2 ---create view
---r1 --create table
--xx
SQL> conn new1/new1
Connected.
SQL> select * from session_privs;
PRIVILEGE
----------------------------------------
CREATE SESSION
CREATE TABLE
CREATE VIEW
权限的级联
SQL> create user u1 identified by u1;
SQL> create user u2 identified by u2;
WITH ?
SYS--------U1-----U2
权限分类
系统权限 dba_sys_privs------------DDL create alter drop
对象权限 dba_tab_privs---------------DML DQL select update delete insert
GRANT 权限 ON 对象 TO 用户
0
SQL> desc dba_tab_privs
Name Null? Type
----------------------- -------- ----------------
GRANTEE U1
OWNER U2
TABLE_NAME T1
GRANTOR U2
PRIVILEGE SELECT
GRANTABLE YES
CONN U3/U3
GRANT SELECT ON U2.T1 TO U1;
权限的级联问题
对象权限 with grant option , 对象可以级联回收
系统权限 with admin option ,系统不可以级联回收
----
-----------TCL
A C I D
---commit
---rollback
自动提交
exit disconnect conn DDL DCL
自动回滚
X shut mmediate 断电 断网
-------------------------------------------------------------------------------
DCL
GRANT 授权
REVOKE 回收权限
GRANT 权限|角色 TO 用户|角色
REVOKE 权限|据色 FROM 用户|角色
权限---privilege
用户
属性
USERNAME NOT NULL VARCHAR2(30)
USER_ID NOT NULL NUMBER
PASSWORD VARCHAR2(30)
ACCOUNT_STATUS NOT NULL VARCHAR2(32)
LOCK_DATE DATE
EXPIRY_DATE DATE
DEFAULT_TABLESPACE NOT NULL VARCHAR2(30)
TEMPORARY_TABLESPACE NOT NULL VARCHAR2(30)
CREATED NOT NULL DATE
--OPEN
---LOCKED
-EXPIRED
--locked & expired
SQL> create user user2 identified by user2 account lock;---LOCK
SQL> create user user2 identified by user2 ;-----------------OPEN
SQL> create user user3 identified by user3 password expire; ---EXPIRE
SQL> create user user4 identified by user4 password expire account lock; --EXPIRE LOCK
修改属性
解锁|上锁
ALTER USER XXX ACCOUNT UNLOCK;
密码过期
ALTER USER XXX PASSWORD EXPIRE;
密码忘记
ALTER USER XX IDENTIFIED BY XXXX;
查看数据库里有哪些权限?
dba_sys_privs --查看用户直接有什么权限
dba_roles --查看数据库有什么角色
session_privs --查看自己有什么权限
dba_role_privs --查看用户有什么角色
as sysdba
SQL> desc dba_sys_privs
Name
-----------------
GRANTEE 权限给了谁,谁有什么权限
PRIVILEGE 有什么权限
ADMIN_OPTION 是否允许级联
角色 里面 套 角色
user12-----role1----resource---8 -----10
----connect----1
select privilege from dba_sys_privs where grantee='USER12';---0
select grateed_role from dba_role_privs where grantee='USER12'---1--role1
select privilege from dba_sys_privs where grantee='ROLE1';---0
r1--r2----priv
-role---r3---pr
--x
dba_sys_privs
dba_role_privs
grant create session to new1 identified by new1;
drop role r1;
drop role r2;
create role r1;
create role r2;
grant create table to r1;
grant create view to r2;
grant r1 to r2;
grant r2 to new1;
dba---new1
new1---sesi
NEW1-----create seession
--ROLE2 ---create view
---r1 --create table
--xx
SQL> conn new1/new1
Connected.
SQL> select * from session_privs;
PRIVILEGE
----------------------------------------
CREATE SESSION
CREATE TABLE
CREATE VIEW
权限的级联
SQL> create user u1 identified by u1;
SQL> create user u2 identified by u2;
WITH ?
SYS--------U1-----U2
权限分类
系统权限 dba_sys_privs------------DDL create alter drop
对象权限 dba_tab_privs---------------DML DQL select update delete insert
GRANT 权限 ON 对象 TO 用户
0
SQL> desc dba_tab_privs
Name Null? Type
----------------------- -------- ----------------
GRANTEE U1
OWNER U2
TABLE_NAME T1
GRANTOR U2
PRIVILEGE SELECT
GRANTABLE YES
CONN U3/U3
GRANT SELECT ON U2.T1 TO U1;
权限的级联问题
对象权限 with grant option , 对象可以级联回收
系统权限 with admin option ,系统不可以级联回收
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69949806/viewspace-2662399/ ,如需转载,请注明出处,否则将追究法律责任。