重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 343|回复: 0
打印 上一主题 下一主题

[讨论] 常用角色选项

[复制链接]
跳转到指定楼层
楼主
发表于 2025-12-14 13:14:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
常用角色选项
sql

-- 授予多个角色
ROLES = (CONNECT, RESOURCE, DBA)

-- 或自定义角色
ROLES = (PDB_ADMIN_ROLE, CONNECT)

角色            作用                                是否必须
CONNECT    基本连接权限(CREATE SESSION)    通常需要
DBA            数据库管理员角色(全权)            可选,强大权限
PDB_DBA    PDB 专属 DBA 角色(12c+)                推荐
RESOURCE    资源创建权限(表、序列等)        可选


为什么需要 ROLES 参数?······························································
1. 简化管理

    避免 PDB 创建后再手动授权

    一键完成管理员用户的权限配置

2. 安全控制
sql

-- 安全建议:使用最小权限原则
ROLES = (CONNECT, PDB_DBA)  -- 而非完全 DBA

-- 限制权限
ROLES = (CONNECT)  -- 仅能连接,无其他权限

3. 应用容器特殊需求

对于 Application Container:
sql

-- 应用容器的 ADMIN USER 需要特定权限管理应用
CREATE PLUGGABLE DATABASE app_container
AS APPLICATION CONTAINER
ADMIN USER app_admin IDENTIFIED BY password
ROLES = (CONNECT, DBA);  -- 通常需要 DBA 权限管理应用

实际执行流程·····················································································
1. PDB 创建时自动执行
sql

-- Oracle 在创建 PDB 后内部执行类似:
ALTER SESSION SET CONTAINER = appli;
CREATE USER admini IDENTIFIED BY app_123;
GRANT CONNECT TO admini;
-- 其他必要权限...

2. 验证结果
sql

-- 连接到新 PDB
ALTER SESSION SET CONTAINER = appli;

-- 查看用户权限
SELECT * FROM dba_role_privs
WHERE grantee = 'ADMINI';

-- 结果:
-- GRANTEE  GRANTED_ROLE  ADMIN_OPTION DEFAULT_ROLE
-- ADMINI   CONNECT       NO           YES

重要注意事项···················································································
1. 默认行为

    如果不指定 ROLES:用户只有 CREATE SESSION 权限

    可能需要后续手动授权更多角色

2. 角色作用范围
sql

-- 这些角色是 PDB 本地角色
-- 不是 CDB 级别的公共角色
-- 只在当前 PDB 内有效

3. 权限限制
sql

-- 不能授予 CDB 级别角色
ROLES = (CDB_DBA)  -- 错误!CDB_DBA 是根容器角色

-- 不能授予不存在的角色
ROLES = (MY_CUSTOM_ROLE)  -- 需确保角色已存在

4. 后续管理
sql

-- 创建后可修改权限
ALTER SESSION SET CONTAINER = appli;
GRANT RESOURCE TO admini;
REVOKE CONNECT FROM admini;  -- 如果需要
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2026-4-17 20:57 , Processed in 0.231855 second(s), 24 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表