自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Oracle數(shù)據(jù)庫的外部身份認證實際研究

數(shù)據(jù)庫 Oracle
以下的文章主要是對Oracle數(shù)據(jù)庫的外部身份認證的研究介紹,其中包括服務(wù)器上如何正確的來使用操作系統(tǒng)驗證,以及遠程客戶端在使用操作系統(tǒng)驗證時,需要注意的事項。

以下的文章主要是淺談Oracle數(shù)據(jù)庫的外部身份認證實際研究,我在一個信譽度很好的網(wǎng)站,找到了一個關(guān)于淺談Oracle數(shù)據(jù)庫外部身份認證的一些實用性很強的相關(guān)資料,拿出來供大家分享。

 一、服務(wù)器上使用操作系統(tǒng)驗證

 1.配置SQLNET.ORA文件

 

參數(shù)NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)表明解析客戶端連接時所用的主機字符串的方式。TNSNAMES表示采用TNSNAMES.ORA文件來解析;ONAMES表示Oracle使用自己的名稱服務(wù)器(Oracle Name Server)來解析,目前Oracle建議使用輕量目錄訪問協(xié)議LDAP來取代ONAMES; HOSTNAME表示使用host文件,DNS,NIS等來解析;

參數(shù)SQLNET.AUTHENTICATION_SERVICES= (NONE,NTS)表明用戶連接Oracle服務(wù)器時使用哪種驗證方式NONE表示Oracle數(shù)據(jù)庫身份驗證,NTS表示操作系統(tǒng)身份驗證,兩種方式可以并用。

 

2.建立相應(yīng)的操作系統(tǒng)組及用戶加入該組

ORA_DBA組中的域用戶和本地用戶不需要Oracle用戶名和密碼就可以登錄Oracle而且該組的用戶登錄Oracle數(shù)據(jù)庫后都具有SYSDBA權(quán)限(多個實例時,可以建立類似這樣的組ORA_SID_DBA,其中SID指實例名)同理:ORA_OPER組中的成員具有SYSOPER角色的權(quán)限。

 

3.登錄方式

C:>sqlplus “/ as sysdba” 或者C:>sqlplus nolog,然后SQL>connect / as sysdba

 

4.init.ora中的Remote_Login_Passwordfile對身份驗證的影響。

 

三個可選值:

NONE:

 

默認值,指示Oracle系統(tǒng)不使用密碼文件,通過操作系統(tǒng)進行身份驗證的特權(quán)用戶擁有SYSORA和SYSOPER權(quán)限.

 

EXCLUSIVE:

1).表示只有一個數(shù)據(jù)庫實例可以使用密碼文件;

 

2).允許將SYSORA和SYSOPER權(quán)限賦值給SYS以外的其它用戶。

 

SHARED:

1).表示可以有多個數(shù)據(jù)庫實例可以使用密碼文件;

 

2).不允許將SYSORA和SYSOPER權(quán)限賦值給SYS以外的其它用戶。

 

所以,如果要以操作系統(tǒng)身份登錄,Remote_Login_Passwordfile應(yīng)該設(shè)置為NONE

 

5.當?shù)卿浻脩舨皇荗RA_DBA組和ORA_OPER組成員時,登錄Oracle數(shù)據(jù)庫需要在Oracle中創(chuàng)建當前操作系統(tǒng)用戶相同的用戶名,如果當前用戶是域用戶,則名稱為:domainnameyourname,如果是本地計算機用戶,則名稱為:computernameyourname

 

創(chuàng)建方法:

 

 

  1. create "domainnameyourname" identified externally;   
    grant connect to "domainnameyourname";   

Windows操作系統(tǒng),修改注冊表HKEY_LOCAL_MACHINESOFTWAREORACLEHOME0下面添加AUTH_PREFIX_DOMAIN,值設(shè)為FALSE,在創(chuàng)建Oracle用戶時可以忽略掉域名。這種方式下,init.ora中有一個參數(shù)將影響數(shù)據(jù)庫如何匹配一個windows用戶和Oracle用戶os_authent_prefix = ""缺省為空,Oracle8i以前,無該參數(shù),而使用OPS$作為用戶名前綴.(Oracle用戶名***長度限制為30個字符)。

 

二、遠程客戶端使用操作系統(tǒng)驗證

首先需要在init.ora文件中設(shè)置如下參數(shù):REMOTE_OS_AUTHENT=TRUE。Oracle不推薦在遠程客戶端上使用操作系統(tǒng)驗證,因為客戶端驗證時不是通過服務(wù)器上的操作系統(tǒng)用戶來驗證,而是使用客戶端自己怕操作系統(tǒng)來進行windows驗證,這樣,客戶端可以采用建立對應(yīng)的windows機器名和用戶名的方式來欺騙Oracle的操作系統(tǒng)驗證。

 

例如:創(chuàng)建了如下Oracle用戶

 

 

  1. create "zlzyk" identified externally;   grant connect to "zlzyk";   

如果有一臺名為ZL的機器,創(chuàng)建了一個名為zyk的用戶,并以此登錄連接Oracle服務(wù)器(連接時使用@OracleSTR),無需用戶名和密碼造成此問題的原因是,Oracle使用客戶端操作系統(tǒng)進行驗證,它無法區(qū)別zl是域名還是機器名。

 

Oracle數(shù)據(jù)庫服務(wù)器上的windows身份認證很容易實施,并且使已登錄的用戶訪問Oracle數(shù)據(jù)庫很方便但是,這種驗證模型并不適合遠程客戶端,因為安全隱患太大。

三、Oracle 9i對操作系統(tǒng)身份認證支持的增強

Oracle 9i可以與活動目錄集成,通過Oracle Enterprise Security Manager 管理用戶權(quán)限Enterprise user authentication做為一種新的外部集中認證模式(也叫 global user authentication,Oracle 9i以前的External user authentication僅僅采用了客戶端操作系統(tǒng)本地認證)。

 

Oracle9i運行在一個win2000及以上的域中,注冊表HKEY_LOCAL_MACHINESOFTWAREORACLEHOMEID,參數(shù)OSAUTH_X509_NAME設(shè)置為true(默認為false,如果該參數(shù)不存在,則新增為REG_EXPAND_SZ類型)。注意:Windows NT 4.0 domain 不支持這種方式。

 【編輯推薦】

  1. Oracle數(shù)據(jù)插入的性能優(yōu)化的描述
  2. 獲得Oracle權(quán)限的TABLE FUNCTION實操
  3. Oracle job interval 參數(shù)設(shè)置示例
  4. Oracle NLS_LANG設(shè)置的具體操作方法
  5. Oracle Database簡單概述

 

 

 

責任編輯:佚名 來源: 博客園
相關(guān)推薦

2010-04-19 11:30:34

Oracle數(shù)據(jù)庫

2010-04-22 15:42:34

Oracle數(shù)據(jù)庫

2010-04-22 15:53:06

Oracle數(shù)據(jù)庫

2010-04-16 12:29:13

Oracle數(shù)據(jù)庫遠程

2010-08-10 15:02:18

Oracle認證數(shù)據(jù)庫

2010-04-19 09:26:04

Oracle數(shù)據(jù)庫

2010-04-13 12:23:34

Oracle數(shù)據(jù)庫

2010-04-02 16:13:38

Oracle 數(shù)據(jù)庫

2011-04-08 15:40:01

Oracle認證

2011-04-08 16:00:11

Oracle數(shù)據(jù)庫外部表

2010-04-21 11:27:55

Oracle數(shù)據(jù)庫

2009-04-17 11:28:16

Oracle備份恢復

2010-03-31 15:23:43

Oracle數(shù)據(jù)庫軟件

2011-08-24 14:57:37

OracleGLOBAL_NAME

2010-04-19 11:37:20

Oracle數(shù)據(jù)庫

2010-04-30 14:39:03

Oracle數(shù)據(jù)庫

2010-04-30 16:19:08

Oracle數(shù)據(jù)庫

2010-04-29 16:15:06

Oracle flas

2010-04-19 13:25:45

Oracle調(diào)整

2010-07-22 13:52:24

點贊
收藏

51CTO技術(shù)棧公眾號