oracle为什么新创建的用户就直接是dba权限?

oracle为什么新创建的用户就直接是dba权限?

今天遇到一个问题,记录一下,之前没注意到这个问题

我在oracle中新创建了一个用户杨过yangguo,使用yangguo用户登录数据库,发现,在没有给yangguo用户授予DBA权限的情况下,yangguo居然可以使用sysdba的身份登录成功,如下

我们再来做个测试,我们随便使用一个用户名和密码连接oracle数据库,在连接时后面加上as sysdba

我现在随便乱写一个用户名和密码来连接数据库,比如asdfgh/ewrw6472 as sysdba

大家注意,注意:我oracle数据库中根本就没有asdfgh这个用户,asdfgh这个用户是我瞎写的。大家看下图

居然可以登录成功

再看下图,居然是sys用户,这到底是为什么呢?

其实新建的用户默认没有任何权限

在登录时加了as sysdba,这种登录,在本地计算机上默认是不检查用户名和密码的

加了as sysdba,我们会发现,用户名其实是sys

我们可以再次测试一下,随便写一个用户名和密码,后面加上as sysdba,看看效果就知道了

sqlplus aaa/aaa as sysdba(aaa是随手写的,不是任何用户名,数据库中也没有aaa这个用户),都可以登录成功,登录后show user,你会发现用户名其实是sys

因为oracle默认使用操作系统认证方式,只是你是以特定的操作系统帐户进入的操作系统(如Windows的administrator或unix的oracle账户),就可以这样做。换了别的操作系统账户身份就不行了,或者通过网络连接也是不可以的。

我们再测试一下,不在用户名和密码后面加as sysdba,看看是什么效果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值