Oracle用户为什么都可以以sysdba身份登录?

21蓝冰 2011-08-23 06:31:27
1、我们都知道,Oracle有两个具有dba角色的用户,分别是sys与system,他们都可以以sysdba身份登录数据库。既然system具有dba角色,为什么还分配他sysoper身份?
2、对于普通用户,例如store用户,为什么允许他可以这样conn store/tiger as sysdba的方式登录?普通用户可以以sysdba身价登录,岂不是避开了对普通用户的限制,让他可以以sys身份访问任何数据和进行任何操作?希望好心的朋友给个解答,不知道的,请不要回帖?
...全文
1606 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
小盒 2011-09-06
  • 打赏
  • 举报
回复
这个是系统认证
Alessandro_ 2011-09-03
  • 打赏
  • 举报
回复
SQL> conn sys/oracle@orcl as sysdba;
Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0
Connected as sys@orcl AS SYSDBA

SQL> show user;
User is "SYS"

SQL> conn scott/scott@orcl as sysdba;
Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0
Connected as scott@orcl AS SYSDBA

SQL> show user;
User is "SYS"

SQL>
yuncc 2011-09-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zftang 的回复:]
1、我们都知道,Oracle有两个具有dba角色的用户,分别是sys与system,他们都可以以sysdba身份登录数据库。既然system具有dba角色,为什么还分配他sysoper身份?

【sys】所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。sys用户拥有dba,sysdba,sy……
[/Quote]

支持。。。
我是睡 2011-08-31
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 yixilan 的回复:]
引用 7 楼 gs_zhaoyang 的回复:
我是在我机子上装着玩的,在本地普通用户为什么可以以as sysdba登陆啊?以怎么改配置呢?
这个身份登陆后,其实还是sys用户?

Oracle登录的时候有两种认证方式,一种是“操作系统认证”,一种是“口令文件认证”。
1、当采取操作系统认证的时候,在本地用任何用户都可以以sysdba登陆;(默认方式)
2、当采取口令文件认证的时候,就……
[/Quote]

oracle有三种验证登陆机制 还有一只是数据库验证,
对于LZ你说的问题,你是在windows下把 你把windwos用户组里的ora_dba这个组删除或者改参数文件 不使用操作系统验证方式, 你就能明白了,当然前提是你在测试环境下。
新丁11111 2011-08-26
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 yixilan 的回复:]
引用 7 楼 gs_zhaoyang 的回复:
我是在我机子上装着玩的,在本地普通用户为什么可以以as sysdba登陆啊?以怎么改配置呢?
这个身份登陆后,其实还是sys用户?

Oracle登录的时候有两种认证方式,一种是“操作系统认证”,一种是“口令文件认证”。
1、当采取操作系统认证的时候,在本地用任何用户都可以以sysdba登陆;(默认方式)
2、当采取口令文件认证的时候,就……
[/Quote]

还区分这个啊,学习。。。。。。
搞怪的索引 2011-08-26
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 yixilan 的回复:]
引用 7 楼 gs_zhaoyang 的回复:
我是在我机子上装着玩的,在本地普通用户为什么可以以as sysdba登陆啊?以怎么改配置呢?
这个身份登陆后,其实还是sys用户?

Oracle登录的时候有两种认证方式,一种是“操作系统认证”,一种是“口令文件认证”。
1、当采取操作系统认证的时候,在本地用任何用户都可以以sysdba登陆;(默认方式)
2、当采取口令文件认证的时候,就……
[/Quote]

赞同此观点
滇西蛮子 2011-08-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zftang 的回复:]

1、我们都知道,Oracle有两个具有dba角色的用户,分别是sys与system,他们都可以以sysdba身份登录数据库。既然system具有dba角色,为什么还分配他sysoper身份?

【sys】所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。sys用户拥有dba,sysdba,s……
[/Quote]

billlyh 2011-08-26
  • 打赏
  • 举报
回复
sys用户拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。
用户只能用normal身份登陆em,除非你对它授予了sysdba的系统权限或者syspoer系统权限
yixilan 2011-08-26
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 gs_zhaoyang 的回复:]
我是在我机子上装着玩的,在本地普通用户为什么可以以as sysdba登陆啊?以怎么改配置呢?
这个身份登陆后,其实还是sys用户?
[/Quote]
Oracle登录的时候有两种认证方式,一种是“操作系统认证”,一种是“口令文件认证”。
1、当采取操作系统认证的时候,在本地用任何用户都可以以sysdba登陆;(默认方式)
2、当采取口令文件认证的时候,就不是任何用户都可以用sysdba登陆了,这个时候必须输入正确的用户名口令才可以(其实这种方法才是安全的)
3、至于你本地的到底采用哪种认证方式,是可以通过parameter来设置的。我以前用过,但是现在本机没有服务端环境了,具体如何设置,你可以百度一下。
21蓝冰 2011-08-25
  • 打赏
  • 举报
回复
我是在我机子上装着玩的,在本地普通用户为什么可以以as sysdba登陆啊?以怎么改配置呢?
这个身份登陆后,其实还是sys用户?
  • 打赏
  • 举报
回复
其实,conn system/manager这样登录的system用户也只有普通用户权限.除非是声明as sysdba.
普通用户如果以sysdba登录,比如楼主说的conn store/tiger as sysdba,这样应该是无法成功的.
还有就是,根据Oracle数据库的配置,一般情况下,as sysdba在远程计算机上是不允许的,即使是system用户.因此,Oracle10g的EM默认配置下system也是不能以sysdba登录的.我还见过因设置不当的Oracle8i在本地计算机上system也得不到sysdba权限.囧
Alessandro_ 2011-08-23
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zftang 的回复:]

1、我们都知道,Oracle有两个具有dba角色的用户,分别是sys与system,他们都可以以sysdba身份登录数据库。既然system具有dba角色,为什么还分配他sysoper身份?

【sys】所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。sys用户拥有dba,sysdba,s……
[/Quote]

很清楚。
njlywy 2011-08-23
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zftang 的回复:]
1、我们都知道,Oracle有两个具有dba角色的用户,分别是sys与system,他们都可以以sysdba身份登录数据库。既然system具有dba角色,为什么还分配他sysoper身份?

【sys】所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。sys用户拥有dba,sysdba,sy……
[/Quote]
+1
灰哥 2011-08-23
  • 打赏
  • 举报
回复
普通用户虽然可以按你说的那种以dba身份登录,但问题是是否能登录成功?
如果登录不成功就算给他以sysdba登录又怎样?还不是没用.
兄弟,其实你想想也就好了。
Rotel-刘志东 2011-08-23
  • 打赏
  • 举报
回复
sys用户拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。
用户只能用normal身份登陆em,除非你对它授予了sysdba的系统权限或者syspoer系统权限
秋雨飘落 2011-08-23
  • 打赏
  • 举报
回复
1、我们都知道,Oracle有两个具有dba角色的用户,分别是sys与system,他们都可以以sysdba身份登录数据库。既然system具有dba角色,为什么还分配他sysoper身份?

【sys】所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。sys用户拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。
【system】用户用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息。system用户拥有普通dba角色权限。
2) 其次的区别,权限的不同。
【system】用户只能用normal身份登陆em,除非你对它授予了sysdba的系统权限或者syspoer系统权限。
【sys】用户具有“SYSDBA”或者“SYSOPER”系统权限,登陆em也只能用这两个身份,不能用normal。

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧