知识大全 Oracle的操作系统身份认证

Posted 密码

篇首语:送饥者一条鱼,只管一天不饿;教他学会捕鱼,能使他永不受饿。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Oracle的操作系统身份认证相关的知识,希望对你有一定的参考价值。

Oracle的操作系统身份认证  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  Oracle的操作系统身份认证

  oraclelogin数据库远程登录authenticationos

  sqlnet authentication_services=(NTS) 在$ORACLE_HOME/neork/admin/sqlnet ora中

  NTS特指的是windows系统 或者设为all 这两种情况都允许操作系统认证

  如果在unix下如果没有设置sqlnet authentication_services 默认就是操作系统认证!或者设为all也允许操作系统认证

  参数SQLNET AUTHENTICATION_SERVICES= (NONE NTS)表明用户连接Oracle服务器时使用哪种验证方式

  NONE表示Oracle数据库身份验证 NTS表示操作系统身份验证 两种方式可以并用

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

  os认证 如果启用了os认证 以sysdba登录 那么我们只要用oracle软件的安装用户就能登录 sqlplus / as sysdba 如果我们要禁用os认证 只利用密码文件登录 我们首先要有一个密码文件

  orapwd file=C:/oracle/product/ /db_ /database/PWDoralocal ora password=maximo entries= ;

  然后我们要把$ORACLE_HOME/neork/admin/sqlnet ora中设置

  SQLNET AUTHENTICATION_SERVICES= none

  注意一下 密码文件只在数据库启动的时候加载进去 一旦加载进去 密码文件就脱离了oracle管理 所以我们用orapwd新建密码文件后 里面指定的密码要在数据重启后才能生效

  至此 我们已经实现不用os认证(sqlplus / as sysdba 的方式登录不了) 那么我们怎么限制网络方面利用sysdba远程登录呢?我们可以设置初始化文件中的REMOTE_LOGIN_PASSWORDFILE=none

  注意 当REMOTE_LOGIN_PASSWORDFILE=none时 这个参数生效需要重启数据库 并且 一旦启用这个参数 将使用操作系统认证 不使用口令文件 因此如果REMOTE_LOGIN_PASSWORDFILE=none且SQLNET AUTHENTICATION_SERVICES= none这个时候数据库是无法登录的

  alter system set REMOTE_LOGIN_PASSWORDFILE=none scope=spfile;

  ( )REMOTE_LOGIN_PASSWORDFILE=none且SQLNET AUTHENTICATION_SERVICES= none

  oracle安装用户本地sqlplus / as sysdba 无法登录

  非oracle安装用户本机sqlplus sys/change_on_install as sysdba 无法登录

  非oracle安装用户远程sqlplus / as sysdba_on_install@sid as sysdba 无法登录

  ( )REMOTE_LOGIN_PASSWORDFILE=exclusive且SQLNET AUTHENTICATION_SERVICES= none

  oracle安装用户本地sqlplus / as sysdba 无法登录

  非oracle安装用户本机sqlplus sys/change_on_install as sysdba 能登录

  非oracle安装用户远程sqlplus / as sysdba_on_install@sid as sysdba 能登录

  ( )REMOTE_LOGIN_PASSWORDFILE=none且SQLNET AUTHENTICATION_SERVICES= (NTS)

  oracle安装用户本地sqlplus / as sysdba 能登录

  非oracle安装用户本机sqlplus sys/change_on_install as sysdba 无法登录

  非oracle安装用户远程sqlplus / as sysdba_on_install@sid as sysdba 无法登录

  ( )REMOTE_LOGIN_PASSWORDFILE=exclusive且SQLNET AUTHENTICATION_SERVICES= (NTS)

  oracle安装用户本地sqlplus / as sysdba 能登录

  非oracle安装用户本机sqlplus sys/change_on_install as sysdba 能登录

  非oracle安装用户远程sqlplus / as sysdba_on_install@sid as sysdba 能登录

  Oracle REMOTE_LOGIN_PASSWORDFILE 参数

  设置初始化参数 REMOTE_LOGIN_PASSWORDFILE

  在 Oracle 数据库实例的初始化参数文件中 此参数控制着密码文件的使用及其状态 它可以有以下几个选项

   NONE 指示 Oracle 系统不使用密码文件 特权用户的登录通过操作系统进行身份验证;

   EXCLUSIVE 指示只有一个数据库实例可以使用此密码文件 只有在此设置下的密码文件可以包含有除 SYS 以外的用户信息 即允许将系统权限 SYSOPER /SYSDBA 授予除 SYS 以外的其他用户 此设置oracle i中为缺省值 有朋友说是shared 其实不然

   SHARED 指示可有多个数据库实例可以使用此密码文件 在此设置下只有 SYS 帐号能被密码文件识别 即使文件中存有其他用户的信息 也不允许他们以 SYSOPER /SYSDBA 的权限登录

   在 REMOTE_LOGIN_PASSWORDFILE 参数设置为 EXCLUSIVE SHARED 情况下 Oracle 系统搜索密码文件的次序为 在系统注册库中查找 ORA_SID_PWFILE 参数值(它为密码文件的全路径名);若未找到 则查找 ORA_PWFILE 参数值;若仍未找到 则使用缺省值 ORACLE_HOME/DATABASE/PWDSID ORA ;其中的 SID 代表相应的 Oracle 数据库系统标识符

  总结

  $ORACLE_HOME/neork/admin/sqlnet ora中的AUTHENTICATION_SERVICES参数

   在windows下 SQLNET AUTHENTICATION_SERVICES必须设置为NTS或者ALL才能使用OS认证;不设置或者设置为其他任何值都不能使用OS认证

   在linux下 在SQLNET AUTHENTICATION_SERVICES的值设置为ALL 或者不设置的情况下 OS验证才能成功;设置为其他任何值都不能使用OS认证

  spfile中的REMOTE_LOGIN_PASSWORDFILE参数

   值为exclusive时 远程能作为sysdba身份登录

   值为none时 以sysdba身份无法登录

  

  

  oracle的sys用户密码怎么修改

  一 忘记除SYS SYSTEM用户之外的用户的登录密码

  用SYS (或SYSTEM)用户登录: CONN SYS/PASS_WORD AS SYSDBA;

  使用如下语句修改用户的密码: ALTER USER user_name IDENTIFIED BY newpass ;

  注意 密码不能全是数字 并且不能是数字开头 否则会出现 ORA : 口令缺失或无效

  二 忘记SYS用户 或者是SYSTEM用户的密码

  如果是忘记SYSTEM用户的密码 可以用SYS用户登录 然后用ALTER USER 命令修改密码

  CONN SYS/PASS_WORD AS SYSDBA;

  ALTER USER SYSTEM IDENTIFIED BY newpass ;

  如果是忘记SYS用户的密码 可以用SYSTEM用户登录 然后用ALTER USER 命令修改密码

  CONN SYSTEM/PASS_WORD ;

  ALTER USER SYSTEM IDENTIFIED BY newpass ;

  三 如果SYS SYSTEM用户的密码都忘记或是丢失

  可以使用ORAPWD EXE 工具修改密码

  开始菜单 >运行 >输入 CMD 打开命令提示符窗口 输入如下命令

  orapwd file=D:\\oracle g\\database\\pwdctcsys ora password=newpass

  这个命令重新生成了数据库的密码文件 密码文件的位置在ORACLE_HOME目录下的\\database目录下

  这个密码是修改sys用户的密码 除sys其他用户的密码不会改变

  不过Oracle提供了两种验证方式 一种是OS验证 另一种密码文件验证方式 如果是第一种方式用以下方法修改密码

  sqlplus /nolog;

  connect / as sysdba

  alter user sys identified by ;

  alter user system identified by ;

  如果是第二种方法就用上述方式修改 也可以下方法修改密码

  orapwd file=pwdxxx ora password=你设定的新密码 entries=

  设定完后 重新启动服务 再次登陆就可以了

  oracle g

  在本机安装完Oracle以后 不记得sys用户的密码了 采用如下方法可以修改密码

   打开cmd 输入sqlplus /nolog 回车;输入 conn / as sysdba ;输入 alter user sys identified by 新密码 注意 新密码最好以字母开头 否则可能出现错误Ora 有了这个方法后 只要自己对oracle服务器有管理员权限 不记得密码的时候就可以随意修改密码了

   在命令行执行如下命令 sqlplus /@服务名 as sysdba 然后在sqlplus中alter user sys identified by 新密码;

  alter user system identified by 新密码;

   运行到C盘根目录

   )输入 SET ORACLE_SID = 你的SID名称

   )输入 sqlplus/nolog

   )输入 connect/as sysdba

   )输入 alert user sys identified by sys

   )输入 alert user system identified by system

   )更改完成 密码是Oracle数据库初始密码

   首先 在CMD下输入SQLPLUS/NOLOG然后再在出来的界面中打入CONN/AS SYSDBA 这样就会以本地系统登录的用户为信任用户进入数据库的操作 解决这个问题的方式有两种 一个是 ALTER USER (USERNAME) IDENTIFIED BY 密码 ;这个是可以改变USERNAME的密码 当然这个USERNAME必须已经存在的

  另一种是 CREATE USER (USERNAME) IDENTIFIED BY 密码 ;改变用户权限的命令是 GRANT ROLES TO (USERNAME);以上 种方法都是针对ORACLE I的版本

   用orapwd exe命令 可以修改命令

  orapwd file= /oracle/pwdsid ora password= 这个命令是修改sys用户的密码 你把生成的文件覆蓋原来的密码文件 除sys其他用户的密码不会改变

   su oracle

  sqlplus /nolog

  conn / as sysdba

  startup (如果数据库不是处于启动状态则启动)

  alter user sys identified by

  然后就可以使用sys用户密码登陆了

  操作系统认证方式

  conn / as sysdba

cha138/Article/program/Oracle/201311/16741

相关参考

知识大全 sysdba权限的管理[1]

  一般对sysdba的管理有两种方式操作系统认证和密码文件认证  具体选择那一种认证方式取决于你是想在Oracle运行的机器上维护数据库还是在一台机器上管理分布于不同机器上的所有的Oracle数据库

知识大全 Oracle升级许可模型-Oracle认证考试

Oracle升级许可模型-Oracle认证考试  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!Ora

知识大全 关于Oracle和ORACLE认证证书以及报价(图)

关于Oracle和ORACLE认证证书以及报价(图)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 oracle认证辅导:oracle优化和管理sql1

  oracle认证辅导oracle优化和管理sql  查看当前正在执行的等待情况  SELECTTAsid  TAseq#  TBUsername  TBTerminal  TBProgram  D

知识大全 Oracle认证常见问答

Oracle认证常见问答  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  什么是认证?    只有

知识大全 Oracle认证价值的思考

Oracle认证价值的思考  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  如今在IT行业认证是个

知识大全 Oracle 认证的专家之见

Oracle认证的专家之见  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  如今在IT行业认证是个

知识大全 取得Oracle认证的步骤

取得Oracle认证的步骤  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Step—Select

知识大全 Oracle三层认证计划

Oracle三层认证计划  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!    作者亿书     O

知识大全 sqlplus管理员身份登录oracle

  sqlplus管理员身份登录oraclecha138/Article/program/Oracle/201311/19067