Oracle登录认证
oracle 登录认证
Table of Contents
1 简介
Oracle登录认证有两种方式,基于操作系统的登录认证,基于oracle的密码验证。
ORACLE数据库通过sqlnet.ora文件中的参数sqlnet.authentication_services,来控制用户是通过操作系统认证还是通过密码认证进行登录。
而对于拥有sysdba角色的用户,还有一个密码文件可以辅助密码验证。
sqlnet.authentication_services、参数remote_login_passwordfile和密码文件pwd<sid>.ora三者协同作用实现身份认证.
2 authentication_services
Windows环境与Linux/Unix环境有区别:
- Windows
-
- SQLNET.AUTHENTICATION_SERVICES= (NTS)是基于操作系统验证;
- SQLNET.AUTHENTICATION_SERVICES= (NONE)是基于Oracle验证;
- SQLNET.AUTHENTICATION_SERVICES= (NONE,NTS)是二者共存。
- SQLNET.AUTHENTICATION_SERVICES必须设置为NTS或者ALL才能使用OS认证;不设置或者设置为其他任何值都不能使用OS认证。
- Linux/Unix
- 在linux下,在SQLNET.AUTHENTICATION_SERVICES的值设置为
- ALL, 为OS验证;
- NONE或者NTS,都是基于oracle密码验证的。
- 不设置时,启用OS认证和oracle密码认证。
2.1 不同登录方式的写法
- 区分以下几种登录方式的区别
-
- conn / as sysdba 本机登陆,使用操作系统认证,有无监听都可以
- conn sys/password as sysdba 本机登陆,使用密码文件认证,有无监听都可以
- conn sys/password@dbanote as sysdba 兼容OS认证与密码认证。使用密码文件认证,必须有监听,必须有tnsnames.ora,remote_login_passwordfile必须是EXCLUSIVE
3 sysdba角色登录认证
3.1 无密本地登录
sqlplus / as sysdba
或者
sqlplus / nolog
conn / as sysdba
以上写法都是无密本地登录。
3.2 密码文件
密码文件是保存拥有sysdba/sysoper等role 的用户和密码信息的文件 。当拥有相关role的用户,想要登录 数据库实例时,如果authentication_services 要求进行密码验证,那么这些用户的密码会通过密码文件加以校验。
创建密码文件的语法如下:
orapwd file=<密码文件> password=<sys用户密码> entries=10 force=y
说明:
- file——密码文件名(必要)。默认在$Oracle_Home/dbs目录下
- password——SYS 的密码(必要)
- entries——DBA和操作员的最大数目(可选)
- force——是否重写现有的文件(可选)
- 创建密码文件时,= 号两边是没有空格的。
3.3 是否开启密码文件验证
Oracle提供了一个参数: remote_login_password=NONE|EXCLUSIVE|SHARED .
- NONE 高级管理员登录时,不使用密码文件验证
- EXCLUSIVE 高级管理员登录时,使用密码文件验证,且只允许本实例使用该密码文件。
- shared 高级管理员登录时,使用密码文件验证,且允许多个实例使用该密码文件
3.4 限制sys登录方式
3.4.1 不限制
不设置sqlnet.authentication_services,不设置 remote_login_password. 此时,不管是无密登录 、密码登录还是远程登录都可以。
3.4.2 只允许本地密码登录
sqlnet.authentication_services=(ALL) 且 remote_login_password=exclusive 或者shared
3.4.3 只允许远程登录
sqlnet.authentication_services=(NTS) 且 remote_login_password=exclusive 或者shared
Oracle登录认证的更多相关文章
- oracle修改登录认证方式
通过配置sqlnet.ora文件,我们可以修改oracle登录认证方式. SQLNET.AUTHENTICATION_SERVICES=(NTS);基于操作系统的认证 SQLNET.AUTHENTIC ...
- oracle数据库启动流程及登录认证方式详解
转自:https://www.2cto.com/database/201803/726644.html ■ oracle启动流程-windows下 1) lsnrctl start (启动监听) ...
- oracle改动登录认证方式
通过配置sqlnet.ora文件.我们能够改动oracle登录认证方式. SQLNET.AUTHENTICATION_SERVICES=(NTS);基于操作系统的认证 SQLNET.AUTHENTIC ...
- oracle登陆认证方式
转自:http://blog.itpub.net/14359/viewspace-683064/ 案例: 1,发现此时操作系统认证不成功: C:\Users\Administrator.WIN-201 ...
- Oracle OS认证 口令文件 密码丢失处理
Oracle OS认证 口令文件 密码丢失处理 分类: Oracle Basic Knowledge2009-10-19 14:24 5031人阅读 评论(9) 收藏 举报 oracleos数据库sq ...
- ELK日志系统:Filebeat使用及Kibana如何设置登录认证
根据elastic上的说法: Filebeat is a lightweight, open source shipper for log file data. As the next-generat ...
- Asp.Net MVC3.0网站统计登录认证的在线人数
Asp.Net MVC3.0网站统计登录认证的在线人数 前言 对于一个网站来说,统计在线人数是一个很重要的工作.平时也发现很多的网站论坛等都有在线人数的显示.对于一个网站如果在线人数很多,用户看到了这 ...
- Oracle登录时提示错误,导致用户无法登录
Oracle登录时提示错误,导致用户无法登录,错误如下 ------------------------------------------------------------------------ ...
- shiro实现APP、web统一登录认证和权限管理
先说下背景,项目包含一个管理系统(web)和门户网站(web),还有一个手机APP(包括Android和IOS),三个系统共用一个后端,在后端使用shiro进行登录认证和权限控制.好的,那么问题来了w ...
随机推荐
- Redis的最常见面试问题
Redis的那些最常见面试问题[转] 1.什么是redis? Redis 是一个基于内存的高性能key-value数据库. 2.Reids的特点 Redis本质上是一个Key-Value类型的内存数据 ...
- 关于select的困惑
困惑 首先,我知道select是IO复用.以UDP为例,select流程大体如下: for(;;) { //通过FD_SET告诉内核你感兴趣的fd fd_set read_fds; FD_CLEAR( ...
- django-bootstrap4|django 加载popper.min.js失败
1.现象 2.解决过程 2.1.右键查看网页源代码 在浏览器地址栏打开popper.min.js对应的URL,发现无法打开,这个地址是国外的,需要找一个可访问的地址替换. 2.2.找到URL在djan ...
- Mac下使用Charles抓包https接口
1 官方网站下载,安装好Charles https://www.charlesproxy.com/download/ 2 安装ssl证书 3 信任证书 4 手机iPhone配置 ,获取证书url 5 ...
- STM32TIM定时器的影子寄存器
1.简介 在STM32基本定时器的PSC预分频寄存器和ARR自动装载寄存器都有影子寄存器. 我们可以看到基本定时器功能框图上对应的寄存器有影子~ 2.功能 影子寄存器的存在起到一个缓冲的作用. 设置影 ...
- Linux特殊权限及ACL权限
一.SetUID与SGID 只能用于二进制程序,脚本不能设置 执行者需要有该二进制程序的x权限 执行具有SUID权限的二进制程序,那么执行者将具有该二进制程序所有者的权限. 举例来说,/etc/pas ...
- web开发:javascript案例
一.浮动与定位复习 二.小米菜单案例 三.轮播图 四.滚动轮播 一.浮动与定位复习 - 浮动与相对定位 ```js// 1.两者均参与布局// 2.主浮动布局, 相对布局辅助完成布局微调// 3.相对 ...
- vim文本编辑及文件查找应用2
vim编辑器: vim末行模式: 内建的命令行接口 (1)地址定界 :start_pos[,end_pos] #:特定的第#行,例如5即第5行 .:当前行 .,+#:当前行,加#行的行范围 $:最后一 ...
- bat 判断命令是否执行成功
bat 判断命令是否执行成功 连接符形式,&& 表示成功,|| 表示失败,例如: call xxx.bat && (goto succeed) || goto fail ...
- 开源Asp.net CMS mojoPortal-源码运行
1.下载mojoPortal源码 下载地址:http://mojoportal.codeplex.com/SourceControl/latest 我下载的版本是:2.4.0.9 MSSQL 以下是m ...