第38章 管理用户安全性 2018-08-11
default tablespace <表空间名字> 如果不指定,分配默认用户表空间
default temporary tablespace <表空间名字> 如果不指定,分配默认表空间
查看数据库中的默认表空间
select * from database_properties where property_name like 'DEFAULT_%';
如果没有打开可以先使用下面的语句打开数据库,之后再查看上面的数据库
alter database open;
查看用户默认表空间
select username,default_tablespace,temporary_tablespace from dba_users where username='a1';
每个程序分配独立的用户表空间,独立的临时表空间,独立用户
1.创建数据文件
create tablespace apps datafile '+DB' size 10m sutoextend on;
2.创建临时表空间
create tempprary tablespace temp_apps tempfile '+FRA' size 100m autoextend on uniform size 1m;
3.创建用户
create user apps identified by apps123# default tablespace appstemporary tablespace temp_apps;
账号的状态
open lock expire expire&locked
查看账号的状态
select username,account_status from dba_users where username='A1';
更改账号的状态
alter user a1 account unlock|lock;
账号到期
alter user a1 password expire;
alter user <> identified by ... default dablespace <>
alter user a1 account unlock identified by oracle;
grant connect,resource to a1;
select * from session_prives;
创建用户和授权一步到位
grant connect,resource to a2 identified by oracle;
conn a2/oracle
查看用户具备哪些权限
desc dba_sys_privs
select * from dba_sys_privs where grantee='A2';
资源概要文件
控制文件
cp /u01/oralce/10g/rdbms/utlpwdmg.sql /tmp
vi /tmp/utlpwdmg.sql
更改默认的profile
create profile pa1 limit
FAILED_LOGIN_ATTEMPTS 3
PASSWORD_LOCK_TIME 2/1440
connect_time 60
idle_time 15
PASSWORD_CERIFY_FUNCTION verify_function_a1;
保存退出,然后以sysdba的身份连接上去
rlwrap sqlplus / as sysdba
select username,profile from dba_user where username='A2';
alter user a2 profile pa1;
查看用户所使用的资源概要文件
select suername,profile from dba_users where username='A2';
CDB里面必须加上c##
select username,common from dba_users;
创建角色
create role c##r1 contrainer=all;
给角色授予权限
grant connect to c##r1 container=all;
grant connect to c##r1 contariner=current;
将角色的权限授予用a1
grant c##r1 to c##a1;
select username,common from dba_users where username='c##A1';
conn c##a1/oracle
select * from session_privs;
对a1授予资源使用权限
grant resource to c##a1 container=current;
grant resource to c##a1 container=all;
之后需要a1用户退出重连一次,才能生效
select * from session_privs;
##关于12c版本总结
如果是cdb -->> c## container=all
pdb -->> container=current
pdb里面dba_users -->> common=yes
那么没有alter user...权限