zoukankan      html  css  js  c++  java
  • oracle中所有存在不存在的用户都可以使用dba连接到数据库

    oracle中所有存在不存在的用户都可以使用dba连接到数据库及解决方式

    以前一直使用conn /as sysdba连接数据库,不明白里面的意思。今天无意中使用其他的用户名密码连接到dba竟然也可以(例如conn aaa/bbb sysdba).oracle只要是sysdba没有验证你的账户名和密码。是因为oracle设置了使用操作系统本地验证。也就是说你只要设置当前的用户隶属于ora_dba组,那么该用户则可以连接到dba,不验证其用户密码。

    解决方案:

    1.设置用户不属于ora_dba这个用户组

    2.修改oracle目录下的sqlnet.ora文件

      SQLNET.AUTHENTICATION_SERVICES= (NTS)          基于操作系统验证,
      SQLNET.AUTHENTICATION_SERVICES= (NONE)        基于Oracle密码文件验证
      SQLNET.AUTHENTICATION_SERVICES= (NONE,NTS)  二者并存

      window:

      设置oracle中的sqlnet.ora文件的SQLNET.AUTHENTICATION_SERVICES值为NONE即可

      linux

      在linux下的oracle是没有这个SQLNET.AUTHENTICATION_SERVICES参数设置的,默认为操作系统验证和Oracle密码验证并存,加上SQLNET.AUTHENTICATION_SERVICES这个参数后,不管是设置为NONE还是NTS还是(NONE,NTS),都是基于Oracle密码验证。

  • 相关阅读:
    shell-用户权限操作
    Python 库列表
    【random】模块运用,随机数实例
    Python 原生文件读写
    Python 运用pymysql+pandas 完成连接 MySQL 数据库读
    MySQL命名、设计及使用规范
    测试for循环计算耗时
    正则表达式速查表
    MySQL8.0.21下载安装详细教程
    MySQL 修改目录重置
  • 原文地址:https://www.cnblogs.com/gavinYang/p/3780163.html
Copyright © 2011-2022 走看看