資料庫安全性問題向來是 DBA 的心頭大患,主要包含兩個層面:
資料備份與恢復、雙機熱備份屬於資料安全範疇;本文著重探討防禦非法入侵的策略。
在 Unix/Linux 環境下,透過 /etc/group 設定使用者群組,是強化 Oracle 資料庫安全的有效手段。Oracle 程式通常分為「所有使用者可執行」與「僅 DBA 可執行」兩類。建議採取下列措施:
Oracle 安裝預設的 SYS、SYSTEM 密碼均為 manager,極具風險。請立即透過 SQL*DBA 修改:
ALTER USER sys IDENTIFIED BY new_password;
ALTER USER system IDENTIFIED BY new_password;
$ORACLE_HOME/bin 目錄下所有程式擁有權屬 Oracle 軟體擁有者。本地存取時,可將 Oracle 角色映射至 Unix 群組,格式為 ora_sid_role[_d][_a]:
sid:Oracle SIDrole:角色名稱(如 osoper, osdba)d(可選):預設角色a(可選):包含 WITH ADMIN OPTION,僅能授予角色,不可授予使用者範例(/etc/group):
ora_test_osoper_d:NONE:1:jim,narry,scott
ora_test_osdba_a:NONE:3:pat
ora_test_role1:NONE:4:bob,jane,tom,mary,jim
bin:NONE:5:root,oracle,dba
root:NONE:7:root
此機制讓作業系統層面的群組管理直接管控資料庫權限,簡化授權維護。