Oracle的一些安全強化配置

來源:互聯網
上載者:User

Oracle資料庫安全往往容易被SA或者DBA所忽視,實則還是需要提高警惕,一下是一些配置和參數以改進Oracle資料庫的安全性。

0. 限制sysdba角色的使用者使用遠程登入
alter system set remote_login_passwordfile=none scope=spfile;
這個參數預設值為 EXCLUSIVE ,注意,修改後只能從主機上使用OS認證的方式進行登入。

1. 使用profile進行限定資源和口令安全
如果要使用口令管理,以SYS執行 utlpwdmg.sql 指令碼。
@?/rdbms/admin/utlpwdmg.sql;
口令帳戶鎖定相關參數:
FAILED_LOGIN_ATTEMPTS  鎖允許登入失敗的次數
PASSWORD_LOCK_TIME     達到登入失敗次數後,帳戶鎖定的天數,過了這個天數之後帳戶會自動解鎖
口令失效和到期相關參數:
PASSWORD_LIFE_TIME     口令的生存期(天)
PASSWORD_GRACE_TIME    口令失效後從第一次成功登入算起的更改口令的寬限期(天)
口令記錄相關參數:
PASSWORD_REUSE_TIME    可以重新使用口令前的天數
PASSWORD_REUSE_MAX     可以重新使用口令的最多次數
口令校正相關參數: 【幫客之家 http://www.bkjia.com 】
PASSWORD_VERIFY_FUNCTION 檢驗口令設定的PL/SQL 函數

如何使用這些參數呢?一是建立新的設定檔,然後把設定檔綁定到使用者:
CREATE PROFILE profile_name LIMIT  
FAILED_LOGIN_ATTEMPTS 6
PASSWORD_VERIFY_FUNCTION verify_function
PASSWORD_LOCK_TIME 1/24;
ALTER USER user_name PROFILE profile_name;
如果不需要設定檔了,刪除:
DROP PROFILE developer_prof CASCADE

二是直接修改預設的設定檔,這樣對每個使用該設定檔的使用者都是生效的:
ALTER PROFILE DEFAULT LIMIT
FAILED_LOGIN_ATTEMPTS 6
PASSWORD_VERIFY_FUNCTION verify_function
PASSWORD_LOCK_TIME 1/24;

2. 設定監聽器口令
在10g當中,監聽器的口令設定已經過時了,對監聽器的任何操作預設情況下變成了OS認證方式,也就是說對監聽啟動操作的使用者可以任意停止監聽,而非啟動使用者則無法對監聽器進行停止,但是如果你想要恢複到9i的那種需要口令操作的情況,可以如下設定:
listener.ora檔案增加如下一行參數:
LOCAL_OS_AUTHENTICATION_[listener name] = OFF

通過以下方式設定口令:
[oracle@test admin]$ lsnrctl

LSNRCTL for Linux: Version 10.2.0.5.0 - Production on 08-AUG-2012 14:42:03

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

Welcome to LSNRCTL, type "help" for information.

LSNRCTL> change_password
Old password:
New password:
Reenter new password:
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.2.4)(PORT=1521)))
Password changed for LISTENER
The command completed successfully
LSNRCTL> save_config --奇怪的是儲存失敗,需要執行下 set password之後重新儲存即可
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.2.4)(PORT=1521)))
TNS-01169: The listener has not recognized the password
LSNRCTL> set password
Password:
The command completed successfully
LSNRCTL> save_config
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.2.4)(PORT=1521)))
Saved LISTENER configuration parameters.
Listener Parameter File   /u01/oracle/10g/product/10.2.0/db_1/network/admin/listener.ora
Old Parameter File   /u01/oracle/10g/product/10.2.0/db_1/network/admin/listener.bak
The command completed successfully
LSNRCTL>

  • 1
  • 2
  • 下一頁

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.