`

关于oracle os认证和口令文件认证的简要解析

阅读更多

一、sysdba的权限  
sysdba(sysoper和normal)是登录数据库的身份,与角色(dba、resource)、对象权限及系统权限有所区别,登录身份表明了可对数据库的整体进行哪些操作,sysdba有些类似unix下的root帐户。  
sysdba的权限或可对数据库进行的操作:  
startup,shutdown  
alter database open|mount  
alter database backup controlfile  
alter tablespace begin/end backup  
recover database  
alter database archivelog,restricted session  
create database  
recover database until  

二、os认证和口令文件认证  

1、os认证和口令文件认证其实质是对oracle数据库采取何种管理方式,是本地管理还是通过一台管理服务器统一管理。  
本地管理采用的就是os认证方式,统一管理采用的就是口令文件认证方式  
2、两种认证的实现  
oracle 数据库通过sqlnet.ora文件中的参数SQLNET.AUTHENTICATION_SERVICES,PFILE(或SPFILE)文件中的参数 REMOTE_LOGIN_PASSWORDFILE和口令文件PWDsid.ora三者协同作用实现身份认证。  
 
SQLNET.AUTHENTICATION_SERVICES=(NTS)|(NONE)  
SQLNET.AUTHENTICATION_SERVICES=(NTS): 操作系统认证方式,不使用口令文件  
SQLNET.AUTHENTICATION_SERVICES=(NONE):口令文件认证方式  
 
REMOTE_LOGIN_PASSWORDFILE=(NONE)|(EXCLUSIVE)|(SHARED)  
REMOTE_LOGIN_PASSWORDFILE=(NONE):不使用口令文件,操作系统认证  
REMOTE_LOGIN_PASSWORDFILE=(EXCLUSIVE):口令文件认证方式,但只有一个数据库实例可以使用此文件,  
系统允许将SYSOPER/SYSDBA授予除INTERNAL/SYS以外的其他用户,且以具有这类身份的其他用户登录是有效的  
REMOTE_LOGIN_PASSWORDFILE=(SHARED):口令文件认证方式,可有多个数据库实例使用此文件,但是此设置下  
只有INTERNAL/SYS帐号能被识别,即使文件中存有其他用户的信息,也不允许他们以SYSOPER/SYSDBA登录  
 
1)SQLNET.AUTHENTICATION_SERVICES=(NTS)同时REMOTE_LOGIN_PASSWORDFILE=(NONE),此时为操作系统认证方式。  
当以oracle_dba组下的用户登录进入本地windows2000后进行下边的操作:  
sqlplus /nolog  
sql>conn /as sysdba  
或  
sqlplus /nolog  
sql>conn 任意用户名/密码 as sysdba  
均可以sysdba身份登录成功,进行数据库方面的操作  
当以远程进行登录时,执行  
sqlplus /nolog  
sql>conn /as sysdba  
或  
sqlplus /nolog  
sql>conn sys/密码 as sysdba  
均显示  
“ERROR:  
ORA-01031: insufficient privileges  
”  
也就是不允许以sysdba身份远程登录系统,这也是os认证之所以也称为本地认证方式的原因  
 
2)SQLNET.AUTHENTICATION_SERVICES=(NONE)同时REMOTE_LOGIN_PASSWORDFILE=(EXCLUSIVE)或(SHARED),配合口令文件  
PWDsid.ora,此时为口令文件认证方式  
当在本地以oracle_dba组下的用户登录进入windows2000后进行下边的操作:  
sqlplus /nolog  
sql>conn /as sysdba  
显示  
“ERROR:  
ORA-01031: insufficient privileges  
”  
实质上是要求提供拥有sysdba身份的用户名和密码  
在本地或远程进行下边的操作  
sqlplus "sys/密码@服务名 as sysdba"  
可进入系统  
也就是说口令文件认证方式允许用户从本地或远程以sysdba身份登录,但必须提供口令字  
 
3)SQLNET.AUTHENTICATION_SERVICES=(NTS)同时REMOTE_LOGIN_PASSWORDFILE=(EXCLUSIVE)或(SHARED),配合口令文件PWDsid.ora,此时操作系统认证和口令文件认证同时起作用  
当在本地以oracle_dba组下的用户登录进入windows2000后进行下边的操作:  
sqlplus /nolog  
sql>conn /as sysdba  
可进入系统  
当在远程执行  
sqlplus "sys/密码@服务名 as sysdba"  
同样可正常登录到数据库系统上  
上边的参数配置容易令人迷惑、混淆,造成假象。我推测网上有些朋友所以对身份认证产生费解可能就是因为这么  
配置参数的!  

三、其他 
 
从前边的讨论可以知道,我们能够对sys以外的用户赋予sysdba身份,具体方法就是  
SQLNET.AUTHENTICATION_SERVICES=(NONE)  
REMOTE_LOGIN_PASSWORDFILE=(EXCLUSIVE)  
口令文件PWDsid.ora  
SQL>grant sysdba to 用户名  
这样,其他具有sysdba身份的用户就加入到PWDsid.ora中,并可以被PWDsid.ora识别,我们可以用这个被赋予sysdba身份的用户登录并进行类似sys用户下所能执行的操作。

分享到:
评论

相关推荐

    Oracle_OS认证与口令文件认证详解

    在Oracle数据库管理系统中,提供了多种认证机制,其中OS认证和口令文件认证是两种常用的认证方式。本篇将详细介绍这两种认证方式的配置方法以及它们在验证SYSDBA/SYSOPER权限时的应用。 OS认证(操作系统认证)允许...

    oracle中os认证,参数remote_login_passfile,口令文件(转)[文].pdf

    3. `ALL`: 表示同时使用操作系统认证和口令文件认证。 此外,`remote_login_passwordfile`参数决定了是否使用口令文件进行认证以及如何使用。这个参数有三个可选值: 1. `NONE`: 不使用口令文件,采用操作系统认证...

    Oracle使用配置文件创建口令管理策略

    Oracle 使用配置文件创建口令管理策略 Oracle 数据库管理中的口令管理策略是非常重要的安全机制之一。在本文中,我们将详细介绍如何使用配置文件创建口令管理策略,以提高 Oracle 数据库的安全性。 首先,让我们来...

    Oracle数据库认证大师

    Oracle数据库认证大师考试是Oracle认证的考试之一,考试代号为1z0-062,主要考察考生对于Oracle Database 12c的安装和管理相关知识的掌握程度。该考试主要涵盖了数据库实例的参数设置、安全管理、数据库链接的创建等...

    如果忘记了Oracle Database 10g 管理员用户口令怎么办

    Oracle提供了一个名为`orapwd`的命令行工具,可以用来创建或更新包含数据库管理员用户口令的文件。这种方法适用于知道一个具有足够权限的用户口令的情况下。 **步骤如下:** - 打开命令提示符。 - 进入Oracle安装...

    Oracle数据库中主要配置文件解析.pdf

    Oracle数据库中主要配置文件解析,包含Linux环境下的配置文件说明。

    ORACLE DBA 认证题

    Oracle DBA(数据库管理员)认证是Oracle公司提供的一项专业认证,旨在验证个人在管理Oracle数据库系统方面的技能和知识。这个认证对于那些希望深入理解和优化Oracle数据库性能的专业人士来说非常重要。以下是一些...

    关于Oracle的认证

    关于Oracle的认证体系,本文将基于提供的文件信息进行详细的解读与扩展,以便更好地理解每种认证的意义、价值以及获取方式。 ### Oracle 认证体系概述 Oracle认证是Oracle公司为帮助专业人士验证其在Oracle技术...

    navicat链接oracle文件,OCI文件 oracle11版本 OCI文件链接oracle11

    - **身份验证方式**:可以选择使用Oracle的默认认证或者OCI文件认证。如果选择OCI,需要指定oci.dll的路径。 4. **测试连接**:填写完所有信息后,点击“测试连接”以确保配置正确无误。如果一切顺利,你应该能够...

    Oracle口令文件

    详细讲述了Oracle数据库口令文件的作用、创建以及使用。

    Oracle 10 认证培训资料

    - **官方文档**: Oracle官方提供了大量关于Oracle 10g的技术文档和指南,这是备考的重要参考资料之一。 - **实践操作**: 尽可能多地进行实际操作练习,这对于理解和掌握Oracle 10g的关键技术非常有帮助。 - **模拟...

    全面解析Oracle认证.pdf

    Oracle认证是针对Oracle公司产品和服务的专业技术认证体系,旨在验证个人在Oracle数据库管理、开发和其他相关领域的专业知识。Oracle是全球领先的关系型数据库管理系统(RDBMS)供应商,其产品广泛应用于各类操作...

    oracle认证考试简介

    Oracle认证考试是对Oracle技术知识和技能的权威验证,旨在证明个人在使用和管理Oracle数据库、应用程序和其他相关技术方面的专业能力。Oracle是全球领先的数据库和企业级软件提供商,其认证体系对于求职者和专业人士...

    Oracle DBA认证题库

    Oracle DBA(数据库管理员)认证是Oracle公司提供的一项专业资格认证,旨在证明持证者具有管理和维护Oracle数据库系统的专业知识和技能。这个题库包含了Oracle DBA认证考试中可能遇到的各种问题,涵盖了数据库管理的...

    全新Oracle OCA认证体系DBA实战课 刘Sir Oracle数据库OCA认证培训视频课程

    Oracle OCA认证体系DBA实战课,帮助同学们从零基础开始入门实战Oralce DBA实战。Oracle的数据库认证课程在数据库领域是最具有含金量的,这也得益于Oracle数据库的优越性能。课程想以介绍了Oracle认证体系,详细带领...

    更改oracle11g口令期限

    更改oracle11g口令期限,解决帐号密码到期的问题

    Oracle数据库口令策略.docx

    默认概要文件通常不对口令和资源设置任何限制。例如,创建用户`test`并为其指定口令`test`的命令是:`create user test identified by test;` 2. **口令管理**: - **Account Locking**:当登录尝试失败达到一定...

Global site tag (gtag.js) - Google Analytics