一、创建用户
create user 用户名 identified by 密码:
例如:创建一个用户名wuyanzu,密码123的用户
注:用户名不能以数字开头
二、修改用户密码
自己修改密码的话直接使用:
passw:
或者alter user 用户名 identified by 新密码:
三:删除用户
drop user 用户名(cascade)
四、权限
权限分为两类,系统权限和对象权限。
系统权限:用户对数据库的相关权限,connect,resorce,dba等系统权限,如建库、建表、建索引、建存储过程、登陆数据库、修改密码等。
对象权限:用户对其他用户的数据对象操作的权限,select.insert,delete,update.all
等对象权限,数据对象有很多,比如表,索引,视图,触发器、存储过程、包等。
执行SELECT * FROM Dba_Object_Size;语句可得到oracle数据库对象。
五:权限的赋予
新创建的用户是没有任何权限的,甚至连登录数据库额权限都没有
如:登录wuyanzu:
给一个用户赋权限使用命令grant。
回收权限使用命令revoke.
五:权限的传递
如果是系统权限,就加入with admin option
如果是对象权限,就加入with grant option
六:with admin option与with grant option区别
1、with admin option用于系统权限授权(系统权限授权撤销不影响其传播的),with grant option用于对象授权(对象授权撤销影响其传播的)。
2、给一个用户授予系统权限带上with admin option时,此用户可把此系统权限授予其他用户或角色,但收回这个用户的系统权限时,这个用户已经授予其他用户或角色的此系统权限不会因传播无效,如授予A系统权限create session with admin option,然后A又把create session权限授予B,但管理员收回A的create session权限时,B依然拥有create session的权限,但管理员可以显式收回B create session的权限,即直接revoke create session from B.
3、with grant option用于对象授权时,被授予的用户也可把此对象权限授予其他用户或角色,不同的是但管理员收回用with grant option授权的用户对象权限时,权限会因传播而失效,如grant select on table with grant option to A,A用户把此权限授予B,但管理员收回A的权限时,B的权限也会失效,但管理员不可以直接收回B的SELECT ON TABLE 权限
七:用户口令的管理
概述:指定该账户(用户)登陆时最多可以输入密码的次数,也可以指定用户锁定的时间(天)一般用dba的身份去执行该命令。
例子:指定scott这个用户最多只能尝试3次登陆,锁定时间为2天,让我们看看怎么实现。
创建profile文件
SQL> create profile lock_account limit failed_login_attempts 3 password_lock_time 2;
SQL> alter user scott profile lock_account;
给用户解锁:
SQL> alter user scott account unlock;
终止口令:
为了让用户定期修改密码可以使用终止口令的指令来完成,同样这个命令也需要dba的身份来操作。
例子:给前面创建的用户test创建一个profile文件,要求该用户每隔10天要修改自己的登陆密码,宽限期为2天。看看怎么做。
SQL> create profile myprofile limit password_life_time 10 password_grace_time 2;
SQL> alter user test profile myprofile;