oracle创建新用户,并且只给新用户赋予查询权限

创建账户

  • 拿到一个比较高权限的账号,最好是管理员的,创建用户
sql 复制代码
CREATE USER new_user IDENTIFIED BY password;

赋予登录权限

此时用户已经有了,但是还要赋予登录权限

sql 复制代码
 GRANT CREATE SESSION TO new_user;

赋予一个表的查询权限

sql 复制代码
GRANT SELECT ON employees TO new_user;

赋予所有表的查询权限

sql 复制代码
 GRANT SELECT ANY TABLE TO new_user;

取消所有表的查询权限

sql 复制代码
REVOKE SELECT ANY TABLE FROM new_user;

取消一个表的查询权限

sql 复制代码
REVOKE SELECT ON employees FROM new_user;

查询

  • 因为表隶属的用户不同,所以需要加前缀
  • 确保在授权时,表名和用户名是正确的。
  • 如果C##BIGSCREEN需要访问C##DCP下的多个表,你需要为每个表重复执行授权命令,或者考虑使用角色来集中管理权限。
  • 如果实例(orcl)有特定的安全策略或配置,也需要考虑这些因素可能对权限授予产生的影响。
  • 通过上述步骤,C##BIGSCREEN用户应该能够看到并访问C##DCP用户下的表。
sql 复制代码
  SELECT * FROM C##DCP.example_table;
相关推荐
xyy202529 分钟前
Spring事务的传播方式
java·数据库·spring
非凡的世界43 分钟前
Thinkphp8 Redis队列与消息队列topthink/think-queue 原创
数据库·redis·bootstrap·thinkphp
yookay zhang1 小时前
DM线程的管理知识学习
数据库
l1t1 小时前
测试DuckDB电子表格读取插件rusty_sheet 0.2版
数据库·rust·插件·xlsx·duckdb
TiAmo zhang2 小时前
SQL Server 2019实验 │ 表数据插入、修改和删除
数据库·oracle
慕容雪_2 小时前
MySQL去除表、字段注释
数据库·mysql
zym大哥大2 小时前
C++客服端访问redis
数据库·redis·缓存
洛克大航海2 小时前
Ubuntu安装Hbase
大数据·linux·数据库·ubuntu·hbase
小蒜学长3 小时前
springboot餐厅信息管理系统设计(代码+数据库+LW)
java·数据库·spring boot·后端
Justin_193 小时前
mysql数据库高级特性(一)
数据库·mysql