<今天在oracle里创建用户 用system以DBA身份登录后执行语句 create user test identified by test default tablespace tspace temporary tablespace temp; 然后我又删除了该用户,drop user testcascade 可是这时候我发现test用户用normal用户无法登录,但是用SYSDBA竟然能登录进去,这是为什么?>
看来下面的解答,貌似都不对. 最后终于找到答案,原因是oracle认证.
oracle认证分为os认证和口令认证
出现以上状况,登录的时候根本和test这个用户无关,登录oracle用的是os认证,登录后用户是sys
你用test,123,578,随意密码都能登,因为根本没关系.
解决办法是更改认证方式:
修改sqlnet.ora
SQLNET.AUTHENTICATION_SERVICES= (NTS)改为SQLNET.AUTHENTICATION_SERVICES= (NONE)
再试试,除了存在的用户,神马都不行了.搞定收工.
ps:被工具软件欺骗了,toad连接数据库的时候,显示的用户是test.用sqlplus连接后,执行show user 显示的用户为sys.
联系客服