返回顶部
首页 > 资讯 > 数据库 >怎么理解oracle中default role
  • 698
分享到

怎么理解oracle中default role

2024-04-02 19:04:59 698人浏览 八月长安
摘要

本篇内容主要讲解“怎么理解oracle中default role”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么理解oracle中default role”吧

本篇内容主要讲解“怎么理解oracle中default role”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么理解oracle中default role”吧!

ORACLE创建角色的时候是可以带密码验证的。当为一个用户授予角色时,如果是授予的DEFAULT的时候,那么这个用户登录的时候自动就具备了这个角色,不需要进行这个角色的密码验证的。如果不是DEFAULT的,那么可以使用SET ROLE ROLE_NAME IDENTIFIED ROLE_PASSWord来进行密码验证后,用户才能具有相应的角色。

oracle权限体系中有个default role,比较难以理解。下面用实例说明一下作用。

我们可以给某个用户分配一些角色,比如role r1,r2,r3,r4,而其中可以将某些角色比如r1设置为default role,其他的不设置成default role,这样,当该用户登录时,自动具有default role中所包含的权限,其他的角色所具有的权限要通过set role 角色来获得。

下面我们举个例子:

(1)sys用户作为sysdba登录,创建4个角色:


create role r1;

create role r2 identified by r2;

create role r3 identified by r3;

create role r4 identified by r4;


(2)sys用户赋予这四个角色对应的权限:


grant create session to r1;

grant select on hr.test to r2;  (这里hr.test是我新创建的一个表,里面有ID和name两列)

grant update(name) on hr.test to r3;

grant insert on hr.test to r3;

grant delete on hr.test to r4;


(3)sys用户创建一个用户u3

create user u3 identified by u3;

(4)将角色r1,r2,r3,r4赋予用户u3

grant r1,r2,r3,r4 to u3;

在修改用户u3的默认角色前,r1,r2,r3,r4 角色均为u3的 default role,以u3用户登录,查询、增删改hr.test,都没有问题。

(5)现在sys用户修改用户u3的default role,仅将r1作为u3的默认角色:

alter user u3 default role r1;  --此时将覆盖原来的设置,u3 的default role =r1,仅仅有登录权限。

(6)用户u3 log off ,然后再log on,进去后发现,

查询、增删改hr.test都不能进行。

(7) 用户自己打开role权限

set role r2 identified by r2;

这时执行 select * from hr.test,发现没有问题。增删改不行。

将对应的角色打开:

set role r3 identified by r3;

此时修改和插入记录没有问题,但是select * from hr.test 确发现不行了。证明此时用户所属的角色仅仅是默认角色r1,和刚刚打开的角色r3,而r2被set role r3 identified by r3;覆盖掉了。

那要同时有r2,r3,r4的权限怎么办呢?

set role r2 identified by r2,r3 identified by r3,r4 identified by r4。此时就同时对hr.test可以进行查询,增删改了。

不过set role 的效果是临时的,只是当前session有效,其他的session无效,当结束当前session后再登录,又只有default role 的权限了。

到此,相信大家对“怎么理解oracle中default role”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

您可能感兴趣的文档:

--结束END--

本文标题: 怎么理解oracle中default role

本文链接: https://lsjlt.com/news/65111.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么理解oracle中default role
    本篇内容主要讲解“怎么理解oracle中default role”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么理解oracle中default role”吧...
    99+
    2024-04-02
  • ORA-01945: DEFAULT ROLE[S] already specified ORACLE 报错 故障修复 远程处理
    文档解释 ORA-01945: DEFAULT ROLE[S] already specified Cause: The default roles clause has been given twice. Action: Use only...
    99+
    2023-11-05
    报错 故障 ORA
  • oracle中default的用法是什么
    在Oracle数据库中,DEFAULT关键字用于指定一个列的默认值。当在插入数据时未指定该列的值时,数据库将自动使用该默认值。例如,...
    99+
    2024-04-09
    oracle
  • oracle中default的作用是什么
    在Oracle数据库中,DEFAULT关键字用于为列指定默认值。当向表中插入数据时,如果没有为该列指定值,那么将使用默认值。这样可以...
    99+
    2024-04-20
    oracle
  • c语言中default怎么用
    default 是 c 语言 switch 语句中的关键字,用于指定当没有匹配的分支时执行的代码块:语法:switch (表达式) { case 值1: 代码块 1; break; ca...
    99+
    2024-05-02
    c语言
  • default怎么修饰接口中的方法详解
    目录一、default修饰接口中的方法二、Java中的“多继承“?三、关于抽象类与接口的思考一、default修饰接口中的方法 在实现HandlerInterceptor接口时,我发...
    99+
    2024-04-02
  • 怎么理解Oracle中的buffer cache
    本篇内容主要讲解“怎么理解Oracle中的buffer cache”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么理解Oracle中的buffer cache...
    99+
    2024-04-02
  • 怎么理解oracle中的事务
    本篇内容主要讲解“怎么理解oracle中的事务”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么理解oracle中的事务”吧! 一组...
    99+
    2024-04-02
  • Oracle中的死锁怎么理解
    本篇内容主要讲解“Oracle中的死锁怎么理解”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Oracle中的死锁怎么理解”吧!死锁Dead Lock 我们大家最早接触死锁这个概念可能是...
    99+
    2023-06-06
  • MySQL数据库中怎么设置default
    这篇文章给大家介绍MySQL数据库中怎么设置default,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1. 建表脚本CREATE TABLE `test`&nbs...
    99+
    2024-04-02
  • 怎么解决mysql报错“#1067 invalid default value”
    这篇文章主要介绍了怎么解决mysql报错“#1067 invalid default value”,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一...
    99+
    2024-04-02
  • 怎么理解Oracle Buffer
    这篇文章主要介绍“怎么理解Oracle Buffer”,在日常操作中,相信很多人在怎么理解Oracle Buffer问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么理解Or...
    99+
    2024-04-02
  • 怎么理解Oracle checkpoint
    本篇内容主要讲解“怎么理解Oracle checkpoint”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么理解Oracle checkpoint”吧!che...
    99+
    2024-04-02
  • 怎么理解Oracle中GRID下root.sh脚本
    这篇文章主要介绍“怎么理解Oracle中GRID下root.sh脚本”,在日常操作中,相信很多人在怎么理解Oracle中GRID下root.sh脚本问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方...
    99+
    2024-04-02
  • 怎么理解Oracle中INITRANS和MAXTRANS参数
    怎么理解Oracle中INITRANS和MAXTRANS参数,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。 ...
    99+
    2024-04-02
  • 怎么理解Oracle事务
    本篇内容主要讲解“怎么理解Oracle事务”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么理解Oracle事务”吧!oracle事务1概述事务由一个或多个DM...
    99+
    2024-04-02
  • 怎么理解oracle角色
    本篇内容介绍了“怎么理解oracle角色”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!角色:创建角色:cr...
    99+
    2024-04-02
  • 怎么在java中利用default操作接口
    怎么在java中利用default操作接口?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。常用的java框架有哪些1.SpringMVC,Spring Web MVC是一种基...
    99+
    2023-06-14
  • 怎么理解Oracle中的sysctl.conf内核参数
    本篇内容介绍了“怎么理解Oracle中的sysctl.conf内核参数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够...
    99+
    2024-04-02
  • 怎么理解Oracle表空间
    这篇文章主要讲解了“怎么理解Oracle表空间”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么理解Oracle表空间”吧!1. 查询当前所有表空...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作