任何用户密码都能以sysdba角色登入

这是因为在安装Oracle的时候默认是使用了操作系统验证:

数据库用sysdba登录的验证有两种方式,一种是通过os认证,一种是通过密码文件验证;登录方式有两种,一种是在数据库主机直接登录(用os认证的方式),一种是通过网络远程登录;需要设置的参数有两个,一个是SQLNET.AUTHENTICATION_SERVICES,一个是REMOTE_LOGIN_PASSWORDFILE。 

安装下面的方法修改之后,可以限制sysdba不用密码就能登录的问题。

sqlnet.authentication_services=(NTS),在$ORACLE_HOME\network\admin\sqlnet.ora中NTS特指的是windows系统,或者设为all,这两种情况都允许操作系统认证。如果在unix下如果没有设置sqlnet.authentication_services,默认就是操作系统认证!或者设为all也允许操作系统认证。参数SQLNET.AUTHENTICATION_SERVICES= (NONE,NTS)表明用户连接Oracle服务器时使用哪种验证方式NONE表示Oracle数据库身份验证,NTS表示操作系统身份验证,两种方式可以并用。

os认证:如果启用了os认证,以sysdba登录,那么我们只要用oracle软件的安装用户就能登录:sqlplus “/ as sysdba”。如果我们要禁用os认证,只利用密码文件登录,我们首先要有一个密码文件: orapwd file=C:\oracle\product\10.2.0\db_1\database\PWDoralocal.ora password=maximo entries=10; 然后我们要把$ORACLE_HOME/network/admin/sqlnet.ora中设置: SQLNET.AUTHENTICATION_SERVICES= none
时间: 2024-08-11 09:52:25

任何用户密码都能以sysdba角色登入的相关文章

Oracle数据库任何用户密码都能以sysdba角色登入

* 本文相关环境:Windows 10,64位操作系统:Oracle 11gR2:toad for Oracle12.1 最近在学习Oracle数据库,使用Toad for Oracle来查看数据库的信息,发现在以sysdba角色登录数据库时,无论输入什么密码,均可以连接到数据库,以为是数据库又出故障了,带着疑问,查找资料.发现里面有很多的学问,下面简单记述一下. Oracle认证用户有两种方式:操作系统认证与口令认证.操作系统认证也叫本地认证. 操作系统认证:Oracle认为操作系统用户是可靠

mysql 报1045 就是密码设置了还是可以直接登入

1 .停止mysql5服务: net stop mysql5 2.开一个DOS窗口执行:(启动mysql,关闭权限的检查) c:\mysql\bin>mysqld-nt --skip-grant-tables & 3.再开一个DOS窗口执行: c:\mysql\bin>mysql mysql > update user set password = password('123456') where user = 'root'; root密码即为设置为123456! 原文地址:ht

第三篇 ubuntu下,mysql 的root用户密码忘了怎么办?

好长一段时间没有使用ubuntu了,今天进来玩玩,结果连mysql的root用户密码都忘记了.就上网找了一下,发现如下解决办法,试了一下,可行!记录在此,环境问题,是需要注意的. Ubuntu Server 12.04 LTS,用 apt-get 安装 MySQL 过程中没有提示设置 root 账号的密码,安装完成后发现 root 空密码无法登录. 解决方案: 其实 debian 系的 MySQL 安装过程中会设置一个默认的账户,这个文件里保存了默认账号的信息 cat /etc/mysql/de

linux下批量修改用户密码

对系统定期修改密码是一个很重要的安全常识,通常,我们修改用户密码都使用 passwd user 这样的命令来修改密码,但是这样会进入交互模式,即使使用脚本也不能很方便的批量修改,除非使用expect 这样的软件来实现,难道修改一下密码还需要单独安装一个软件包吗? 不,我们其实还有其他很多方法可以让我们避开交互的,下面具体写一下具体的实现方式: 第一种:echo "123456" | passwd --stdin root echo doiido:helloboy |chpasswd 优

(转)linux passwd批量修改用户密码

linux passwd批量修改用户密码 原文:http://blog.csdn.net/xuwuhao/article/details/46618913 对系统定期修改密码是一个很重要的安全常识,通常,我们修改用户密码都使用 passwd user 这样的命令来修改密码,但是这样会进入交互模式,即使使用脚本也不能很方便的批量修改,除非使用expect 这样的软件来实现,难道修改一下密码还需要单独安装一个软件包吗? 不,我们其实还有其他很多方法可以让我们避开交互的,下面具体写一下具体的实现方式:

flask笔记:6:用户登入登出

用户登入登出需要用到 Flask-Login 插件 初始化 修改配置文件 app/__init__.py from flask import Flask from flask.ext.sqlalchemy import SQLAlchemy import os from flask.ext.login import LoginManager app=Flask(__name__) app.config.from_object('config') db=SQLAlchemy(app) lm = L

关于Oracle数据库sys用户登入的解惑

一直有个问题困扰,在window系统安装Oracle后,打开sqlplus,可以直接用conn / as sysdba登入,无需用户名和密码,如图: 然而,我们还可以这样,con sys/sadfa as sysdba,密码随便输入,还是可以登入. 然而,我们还可以这样,用户名和密码随便输入,还是可以登入. 到这里,不了解同学,是不是觉得,orale疯了,这么弱的安全机制.还可以这样玩.其实,这里的原因是这样的. 验证登入数据库有2种机制,1:用户名和密码验证(输入正确的用户名和密码),2:是主

MySQL密码设置和重置,以及远程登入数据库

1.配置MySQL的root密码 默认情况下MySQL没有密码,直接就可以进入: [[email protected] ~]# mysql -uroot 下面我们设置root密码: [[email protected] ~]# mysqladmin -uroot password '123456' 再进入时需要输入密码(p选项后无空格): [[email protected] ~]# mysql -uroot -p123456 重启生效 [[email protected] ~]# /etc/i

oracle 12C SYS,SYSTEM用户的密码都忘记或是丢失

密码 1 conn / as sysdba 2 alter user system identified by Abcd1234; manual script first -->manual_script_before_install.sql 1 -- must connect as sysdba to execute the following script 2 -- this manual script is to minimize the configuration change on t