Oracle管理员认证方法小结

1、管理员的权限
 SYSDBA:默认schema 为SYS
SYSOPER:默认schema 为 PUBLIC
       这两种权限允许用户在数据库没有打开的时候就可以登陆数据库,所以这种权限的控制权在数据库之外。通常这种权限也可以被看做一种允许你对数据库进行某种操作的连接,比如CONNECT / AS SYSDBA。

2、两种管理员权限认证方法
1) Operating system (OS) authentication :操作系统认证
--以下情况使用该方法:
  管理远程数据库时,具有安全的网络连接(secure connection)。
  管理本地数据库时,想使用OS认证。

--操作步骤:
  a.建立一个os系统用户
  b.将这个用户加入到DBA或者OPER的OS组(注释:在window下,这个默认的组名为ORA_DBAORA_OPER);
  c.设置参数:
        REMOTE_LOGIN_PASSWORDFILE=NONE     (不要为EXCLUSIVE)
  d.编辑sqlnet.ora文件,增加:
         SQLNET.AUTHENTICATION_SERVICES= (NTS)  ――采用操作系统认证方式
  e. CONNECT / AS SYSDBA

--关于OSDBA和OSOPER组
  OSDBA对应:UNIX为 dba; WINDOWS为ORA_DBA
  OSOPER对应:UNIX为 oper;WINDOWS为ORA_OPER
         这些用户组在安装数据库的时候手工或者自动创建,这些组的成员以 as  sysdba/sysoper 连接数据库后,自动授予sysdba/sysoper的管理权限。
 
2) Password files :密码文件认证
--以下情况使用该方法:
  管理远程数据库时,没有安全的网络连接(secure connection),比如TCP/IP和DECnet协议。
  管理本地数据库时,不想使用OS认证。

--操作步骤:
  a.使用ORAPWD创建密码文件(其中的password选项是为SYS用户设置的)
         orapwd file= <filename> password=<password> entries=<users>
  b.设置参数:
         REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
  c.编辑sqlnet.ora文件,增加:
         SQLNET.AUTHENTICATION_SERVICES= NONE ――取消操作系统认证方式
  d.使用sys用户登陆
  e.在数据库中创建用户:
         create user study identified by study; 
  f. 赋予其SYSDBA/SYSOPER权限
   grant sysdba to study;
         grant sysoper to study;
     这样就将用户和密码加入到密码文件中。 
 g.使用自己的密码logon: connect study/study as sysdba; 
  h.注意,OS认证优先于密码文件认证:
         只要OS用户属于OSDBA OR OROPER组,并且使用connect as sysdba / sysoper登录,则可以忽略输入的username/password。
 
3、关于参数remote_login_passwordfile
  None ―― 使得oracle不使用密码文件,只能使用OS认证,不允许通过不安全网络进行远程管理。
  Exclusive ―― 可以使用唯一的密码文件,但只限一个数据库。密码文件中可以包括除了sys用户的其他用户。允许除sys和internal之外的拥有SYSDBA role的用户以SYSDBA身份登陆,但是只能有一个例程同时使用该password file。
  Shared ―― 可以在多个数据库上使用共享的密码文件。但是密码文件中只能包含sys用户。通常用于一个dba管理多个数据库的时候。不允许除sys和internal之外的任何用户以SYSDBA身份登陆,但是可以有多个例程同时使用该password file。
 
4、V$PWFILE_USERS
  使用该视图查看密码文件中的member
     
5、非管理员级别用户的OS认证方法

关键字: os_authent_prefix
create user donny identified by externally;
conn /

你可能感兴趣的:(oracle,职场,认证,管理员,休闲)