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;
相关推荐
冬奇Lab4 分钟前
RAG 系列(六):向量数据库——存储与检索的基础设施
数据库·人工智能·llm
vooy pktc4 分钟前
macOS安装Redis
数据库·redis·macos
辞旧 lekkk8 分钟前
【Qt】初识(上)
开发语言·数据库·qt·学习·萌新
落落121322 分钟前
MySQL事务四大特性(ACID)
数据库
阿维的博客日记28 分钟前
Redis的旁路缓存策略和先删除缓存后更新数据库,先更新数据库后删除缓存,这三种策略之间有什么关系??
数据库·redis·缓存
ictI CABL1 小时前
redis连接服务
数据库·redis·bootstrap
苍煜1 小时前
SpringBoot单体应用到分布式下的数据库锁、事务、Redis事务、分布式锁、分布式事务协调
数据库·spring boot·分布式
xmjd msup1 小时前
mysql的分区表
数据库·mysql
Lyyaoo.1 小时前
【JAVA Spring面经】Spring 事务失效情况
java·数据库·spring
MeAT ITEM1 小时前
MySQL Workbench菜单汉化为中文
android·数据库·mysql