为什么我的新用户可以用sysdba登录oracle ?



我刚刚在windows 7机器上安装了Oracle 11g R2。我可以使用我的sys作为sysdba帐户登录。

使用sys帐户创建了一个用户,如下所示

create user testuser identified by testuser;

当我尝试以正常用户testuser连接数据库时,它说'用户testuser缺乏CREATE SESSION权限;这是可以理解的,因为到目前为止我还没有授予testuser任何权限。

但是当我尝试使用testuser作为sysdba登录数据库时,它允许我连接到数据库,并且所选择的模式对我来说似乎是SYS模式。

是否有一些我错过了,因为我认为用户testuser不应该能够甚至登录更不用说登录到SYS模式。我还发现我可以用sysdba连接任何用户名,不管它是否存在于数据库中。

如何创建一个普通的oracle用户,该用户不能访问任何其他模式?

您的windows用户属于dba组(oradba)。使用Windows认证方式连接as sysdba。查看AskTom:

"as sysdba"功能非常强大,它使用OS身份验证,确实如此不需要数据库身份验证(在此之前用于登录)是"数据库"还是"实例"!)

作为dba组的成员,您可以使用任何数据库用户登录as sysdbasqlplus / as sysdba .

我通常是这样创建一个新用户的:

create user &amp2 .由&amp默认表空间&amp临时表空间&4;

grant connect, resource to &1;

**了解情况;还包括其他默认权限,如"create…":序列、同义词、表、视图、数据库链接select_catalog_role等

最新更新