zoukankan      html  css  js  c++  java
  • Oracle 用户管理

    1. AS SYSDBA就是以系统管理员的身份登录。此时忽略用户名跟密码。就算你SQLPLUS / AS SYSDBA,或者CONN / AS SYSDBA,没有用户名跟密码也是行的。
      例如我新建用户jack,密码jackhub,没有授予任何权限登录oracle。
    SQL> conn jack/jackhub as sysdba
    Connected.
      既然as sysdba连接会忽略用户名跟密码,那么此时连接上的user应该不是jack。
    SQL> show user;
    USER is "SYS"
      可见,实际上是以SYS用户的角色登录的。
    2. 验证方式,以上我们任何user都可以以sysdba的角色登录,好像是没有什么安全验证一样的,实际是配置问题。
      将sqlnet.ora(位于$ORACLE_HOME/NETWORK/ADMIN目录中)中的sqlnet.ora文件中SQLNET.AUTHENTICATION_SERVICES参数决定验证方式。 
      这不是oracle的安全漏洞!!而是认证方式不同,一般对sysdba的管理有两种方式:操作系统认证和密码文件认证。   
      将SQLNET.AUTHENTICATION_SERVICES=   (NTS),即选择了os认证方式。这样数据库的安全性就是基于操作系统的安全性之上的。既然用connect internal可以登入系统,那用connect XXXXX/XXXX as sysdba登入又何妨?

  • 相关阅读:
    Linux部署Spingboot项目
    Linux Centos7yum安装Mysql8.0.21
    Linux配置网络yum源,提高下载速度
    Linux安装jdk1.8
    Spring的AOP
    Spring的事务管理
    Maven项目中,使用mybatis,根据数据库自动生成pojo实体类、dao、mapper
    Ubuntu14.04中使用docker容器部署tomcat镜像+java web项目
    mybatis
    spl
  • 原文地址:https://www.cnblogs.com/jackhub/p/3205436.html
Copyright © 2011-2022 走看看