溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

REMOTE_LOGIN_PASSWORDFILE參數(shù)的三種取值對系統(tǒng)有哪些影響

發(fā)布時間:2021-11-10 16:11:30 來源:億速云 閱讀:154 作者:iii 欄目:關(guān)系型數(shù)據(jù)庫

這篇文章主要講解了“REMOTE_LOGIN_PASSWORDFILE參數(shù)的三種取值對系統(tǒng)有哪些影響”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“REMOTE_LOGIN_PASSWORDFILE參數(shù)的三種取值對系統(tǒng)有哪些影響”吧!

在某些情況下可以使用REMOTE_LOGIN_PASSWORDFILE參數(shù)增強(qiáng)系統(tǒng)的安全性,所謂提高安全性就是禁止以SYSDBA或SYSOPER特權(quán)用戶從客戶端登陸到數(shù)據(jù)庫系統(tǒng)中。這是一種犧牲管理便捷性為前提的。需酌情使用。

1. 參考信息

官方文檔中有關(guān)REMOTE_LOGIN_PASSWORDFILE參數(shù)的描述:

http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams179.htm#REFRN10184

2. REMOTE_LOGIN_PASSWORDFILE參數(shù)默認(rèn)值及其行為特性分析

1)REMOTE_LOGIN_PASSWORDFILE參數(shù)的默認(rèn)值是EXCLUSIVE

sys@ora10g> show parameter REMOTE_LOGIN_PASSWORDFILE

NAME                       TYPE VALUE

-------------------------- ---------- ----------------------

remote_login_passwordfile string EXCLUSIVE

2)嘗試將SYSDBA特權(quán)授予給普通用戶secooler

sys@ora10g> grant sysdba to secooler;

grant sysdba to secooler

*

ERROR at line 1:

ORA-01994: GRANT failed: password file missing or disabled

此處報(bào)錯是由于密碼文件丟失導(dǎo)致的,因?yàn)槭谟鑣ysdba權(quán)限需要調(diào)整密碼文件。

3)手工創(chuàng)建丟失的密碼文件

ora10g@secdb /home/oracle$ cd $ORACLE_HOME/dbs

ora10g@secdb /oracle/app/oracle/product/10.2.0/db_1/dbs$

ora10g@secdb /oracle/app/oracle/product/10.2.0/db_1/dbs$ orapwd file=orapwora10g password=oracle entries=10

4)再次嘗試SYSDBA授權(quán)成功

sys@ora10g> grant sysdba to secooler;

Grant succeeded.

5)密碼文件的變化

此時在密碼文件中記錄了這個授權(quán)的信息。

ora10g@secdb /oracle/app/oracle/product/10.2.0/db_1/dbs$ strings orapwora10g

]\[Z

ORACLE Remote Password file

INTERNAL

AB27B53EDC5FEF41

8A8F025737A9097A

SECOOLER

034E4342BB2D437D

最后兩行信息即是新增的內(nèi)容。

6)客戶端連接性測試

$ sqlplus secooler/secooler@ora10g as sysdba

SQL*Plus: Release 10.2.0.3.0 - Production on 星期二 12月 21 21:48:34 2010

Copyright (c) 1982, 2006, Oracle.? All Rights Reserved.

連接到:

Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production

With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options

SQL> show user;

USER 為 "SYS"

SQL>

注意,此處我們雖然使用的是普通用戶secooler登錄的數(shù)據(jù)庫,但真實(shí)的用戶名是SYS。因此我們便可以使用這種方法來管理數(shù)據(jù)庫,這就是便捷所在。

7)人為移除密碼文件測試

如果此時我們將密碼文件刪除,客戶端將沒有辦法再以sysdba權(quán)限連接到數(shù)據(jù)庫

$ sqlplus secooler/secooler@ora10g as sysdba

SQL*Plus: Release 10.2.0.3.0 - Production on 星期二 12月 21 21:53:50 2010

Copyright (c) 1982, 2006, Oracle.? All Rights Reserved.

ERROR:

ORA-01031: insufficient privileges

請輸入用戶名:

因此,通過REMOTE_LOGIN_PASSWORDFILE參數(shù)和密碼文件共同實(shí)現(xiàn)了客戶端以SYSDBA權(quán)限登錄系統(tǒng)的目的。

3. REMOTE_LOGIN_PASSWORDFILE參數(shù)NONE值及其行為特性分析

1)調(diào)整參數(shù)REMOTE_LOGIN_PASSWORDFILE為NONE

sys@ora10g> alter system set remote_login_passwordfile=none scope=spfile;

System altered.

sys@ora10g> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

sys@ora10g> startup;

ORACLE instance started.

Total System Global Area  835104768 bytes

Fixed Size                  2257840 bytes

Variable Size             549456976 bytes

Database Buffers          281018368 bytes

Redo Buffers                2371584 bytes

Database mounted.

Database opened.

sys@ora10g> show parameter REMOTE_LOGIN_PASSWORDFILE

NAME                       TYPE VALUE

-------------------------- ---------- ----------------------

remote_login_passwordfile string NONE

2)調(diào)整后,客戶端將無法發(fā)起連接

$ sqlplus secooler/secooler@ora10g as sysdba

SQL*Plus: Release 10.2.0.3.0 - Production on 星期二 12月 21 22:00:02 2010

Copyright (c) 1982, 2006, Oracle. All Rights Reserved.

ERROR:

ORA-01017: invalid username/password; logon denied

請輸入用戶名:

3)SYSDBA權(quán)限的授予與回收亦是被禁止的

(1)授權(quán)測試

sys@ora10g> grant sysdba to secooler;

grant sysdba to secooler

*

ERROR at line 1:

ORA-01994: GRANT failed: password file missing or disabled

注意,此處的報(bào)錯原因是不是因?yàn)槊艽a文件不存在,與前面曾經(jīng)提到的報(bào)錯信息有區(qū)別。

(2)回收測試

sys@ora10g> revoke sysdba from secooler;

Revoke succeeded.

此處雖然提示權(quán)限回收成功,但是實(shí)際上并沒有生效,是無效操作。證明之。

<1>在此基礎(chǔ)上調(diào)整參數(shù)為EXCLUSIVE

sys@ora10g> alter system set remote_login_passwordfile=EXCLUSIVE scope=spfile;

System altered.

sys@ora10g> startup force;

ORACLE instance started.

Total System Global Area  835104768 bytes

Fixed Size                  2257840 bytes

Variable Size             549456976 bytes

Database Buffers          281018368 bytes

Redo Buffers                2371584 bytes

Database mounted.

Database opened.

<2>此時客戶端依然能夠成功登陸

$ sqlplus secooler/secooler@172.17.193.211ora10g as sysdba

SQL*Plus: Release 10.2.0.3.0 - Production on 星期二 12月 21 22:06:05 2010

Copyright (c) 1982, 2006, Oracle.? All Rights Reserved.

連接到:

Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production

With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options

SQL> show user

USER 為 "SYS"

SQL>

SQL> show parameter REMOTE_LOGIN_PASSWORDFILE

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

remote_login_passwordfile            string      EXCLUSIVE

結(jié)論:因此證明了當(dāng)REMOTE_LOGIN_PASSWORDFILE參數(shù)為NONE時回收SYSDBA權(quán)限是無效的。

4.REMOTE_LOGIN_PASSWORDFILE參數(shù)SHARED值及其行為特性分析

1)調(diào)整參數(shù)REMOTE_LOGIN_PASSWORDFILE為SHARED

sys@ora10g> alter system set remote_login_passwordfile=shared scope=spfile;

System altered.

sys@ora10g> startup force;

ORACLE instance started.

Total System Global Area  835104768 bytes

Fixed Size                  2257840 bytes

Variable Size             549456976 bytes

Database Buffers          281018368 bytes

Redo Buffers                2371584 bytes

Database mounted.

Database opened.

sys@ora10g>  show parameter remote_login_passwordfile

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

remote_login_passwordfile            string      SHARED

2)此時客戶端的連接是不受限制的,連接通暢

$ sqlplus secooler/secooler@ora10g as sysdba

SQL*Plus: Release 10.2.0.3.0 - Production on 星期二 12月 21 22:08:04 2010

Copyright (c) 1982, 2006, Oracle.? All Rights Reserved.

連接到:

Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production

With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options

SQL>

SQL> show user

USER 為 "SYS"

3)此時服務(wù)器端授予和回收SYSDBA權(quán)限是不被允許的

sys@ora10g> grant sysdba to secooler;

grant sysdba to secooler

*

ERROR at line 1:

ORA-01999: password file cannot be updated in SHARED mode

sys@ora10g> revoke sysdba from secooler;

revoke sysdba from secooler

*

ERROR at line 1:

ORA-01999: password file cannot be updated in SHARED mode

5.小結(jié)

在此總結(jié)一下在REMOTE_LOGIN_PASSWORDFILE參數(shù)取不同值時的行為特性。REMOTE_LOGIN_PASSWORDFILE參數(shù)可以有三種取值:EXCLUSIVE(默認(rèn))、NONE和SHARED。

1)當(dāng)取值為EXCLUSIVE時

   允許客戶端以SYSDBA或SYSOPER權(quán)限登錄到數(shù)據(jù)庫實(shí)例中完成數(shù)據(jù)庫管理操作;

   允許授予和回收SYSDBA或SYSOPER權(quán)限。

2)當(dāng)取值為NONE時

   禁止客戶端以SYSDBA或SYSOPER權(quán)限登錄到數(shù)據(jù)庫實(shí)例中完成數(shù)據(jù)庫管理操作;

   禁止授予和回收SYSDBA或SYSOPER權(quán)限。

3)當(dāng)取值為SHARED時

   允許客戶端以SYSDBA或SYSOPER權(quán)限登錄到數(shù)據(jù)庫實(shí)例中完成數(shù)據(jù)庫管理操作;

   禁止授予和回收SYSDBA或SYSOPER權(quán)限。

以上便是參數(shù)REMOTE_LOGIN_PASSWORDFILE在不同取值情況下對系統(tǒng)的影響(本文是以SYSDBA特權(quán)為例,SYSOPER特權(quán)相同)。每一種取值都有其自己的應(yīng)用場景。我們需要做的是根據(jù)不同的場景做出相應(yīng)的取舍。

感謝各位的閱讀,以上就是“REMOTE_LOGIN_PASSWORDFILE參數(shù)的三種取值對系統(tǒng)有哪些影響”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對REMOTE_LOGIN_PASSWORDFILE參數(shù)的三種取值對系統(tǒng)有哪些影響這一問題有了更深刻的體會,具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI