用户(USER)、角色(ROLE)、给予(GRANT···TO···)/收回(REVOKE···FROM···)权限
蓝色底色的字为个人喜欢的名字,根据喜好进行修改
用户(USER)
在Oracle数据库中,用户的作用是实现数据库的安全性和权限管理。 每个用户都有自己的用户名和密码,通过用户名和密码验证后,用户可以访问和操作数据库中的对象,如表、视图、存储过程等。 不同用户之间的数据是相互隔离的,一个用户只能访问和操作自己拥有权限的对象。 其中,username是用户的名称,password是用户的密码。
创建用户
创建用户 test_name 密码 123456
CREATE USER test_name IDENTIFIED BY 123456
创建用户 test_name 密码 123456 用户下的默认表空间为 def_tabspace 临时表空间为 temp_tabspace
CREATE USER test_name IDENTIFIED BY 123456 DEFAULT TABLESPACE def_tabspace TEMPORARY TABLESPACE temp_tabspace
给予权限
系统权限:CREATE SESSION(创建会话权限)、CREATE TABLE(创建表权限)、CREATE VIEW(创建视图权限)、CREATE USER(创建用户权限)、···
对象权限:SELECT(查询权限)、INSERT(插入权限)、UPDATE(更新权限)、DELETE(删除权限)、ALL(所有对象权限)、···
给予用户 test_username01 和用户 test_username02 创建表权限和创建视图权限(多个用户用逗号隔开,多个权限用逗号隔开)
GRANT CREATE TABLE,CREATE VIEW TO test_username01,test_username02
给予用户 test_username 创建表权限和创建视图权限,同时用户 test_username 能将自己的系统权限赋予他人(WITH ADMIN OPTION 有将自己的系统权限赋予给别人的权力)
GRANT CREATE TABLE,CREATE VIEW TO test_username WITH ADMIN OPTION
角色(ROLE)
角色可以包含多个系统权限和对象权限,将这些权限组合成一个集合,然后将该角色授予用户
创建角色 test_rolename,给予角色 test_rolename 创建表权限和创建视图权限,将角色 test_rolename 的身份赋予给用户 test_username
CREATE ROLE test_rolename;
GRANT CREATE TABLE,CREATE VIEW TO test_rolename;
GRANT test_rolename TO test_username;
给予用户 test_username 对表 test_tablename 的查找和插入权限
GRANT SELECT,INSERT ON test_tablename TO test_username
给予用户 test_username 对表 test_tablename 的查找和插入权限,同时用户 test_username 能将自己的对象权限赋予他人(WITH GRANT OPTION 有将自己的对象权限赋予给别人的权力)
GRANT SELECT,INSERT ON test_tablename TO test_username WITH GRANT OPTION
收回权限
收回用户 test_username 创建表权限和创建视图权限
REVOKE CREATE TABLE,CREATE VIEW FROM test_username
收回用户 test_username 对表 test_tablename 的查找权限
REVOKE SELECT ON test_tablename FROM test_username

浙公网安备 33010602011771号