首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle 資料庫安全管理策略:作業系統層級、帳號密碼、權限最小化與審計建議

     編輯:Oracle 資料庫基礎

Oracle 資料庫安全防護多層次策略

資料庫安全不僅是設定密碼,涵蓋作業系統層級存取控制、網路加密、權限最小化、審計追蹤與備份恢復等多層面。本文整理 Unix/Linux 環境下 Oracle 安全配置實務,包含群組權限、預設帳號修改、實用程式權限、角色映射與密碼管理等關鍵措施。

一、作業系統群組與檔案權限控制 (Unix/Linux)

Oracle 程式分兩類:全體用戶可執行 (如 sqlplus) 與 僅 DBA 可執行 (如 sqlplus / as sysdba)。透過 Unix 群組實現:


# /etc/group 範例
oinstall:x:501:oracle
dba:x:502:oracle,root
oper:x:503:oracle
  • DBA 群組:擁有 SYSDBA/SYSOPER 權限,安裝時自動獲授。
  • OINSTALL 群組:擁有 Oracle 軟體檔案擁有權 (通常為 oracle 用戶主群組)。
  • 權限設定原則:
    • DBA 專用程式:chmod 710 (僅擁有者與群組可執行)
    • 一般用戶程式 (sqlplus, exp, imp):chmod 711 (全體可執行)
    • 確保 $ORACLE_HOME/bin 所有檔案擁有者為 oracle 用戶

二、預設管理帳號密碼強制修改

安裝完成後 立即修改 SYS/SYSTEM 密碼 (預設皆為 manager):


-- 在 SQL*Plus / SQL*DBA 中
ALTER USER SYS IDENTIFIED BY "StrongPassw0rd!";
ALTER USER SYSTEM IDENTIFIED BY "AnotherStr0ngP@ss";
  • 建議啟用密碼複雜度驗證函數 (UTLPWDMG.SQL)
  • 設定 PASSWORD_LIFE_TIME, FAILED_LOGIN_ATTEMPTS 等 Profile 參數
  • 鎖定不使用的預設帳號:ALTER USER OUTLN ACCOUNT LOCK;

三、資料庫角色與 Unix 群組映射 (OS Authentication)

本地登入可將 Oracle 角色映射至 Unix 群組,格式:ORA__[_D][_A]

  • D = DEFAULT ROLE (預設啟用)
  • A = ADMIN OPTION (可授予他人)

# /etc/group 範例
ora_prod_osoper_d:x:1001:john,mary
ora_prod_osdba_a:x:1002:admin_user
ora_prod_role_readonly:x:1003:app_user1,app_user2

用戶以 CONNECT / AS SYSDBA 登入時,OS 會檢查其是否屬於對應群組。

四、網路與監聽器安全

  • listener.ora 設定 ADMIN_RESTRICTIONS_=ON 禁止遠端管理
  • 啟用 VALID_NODE_CHECKING_REGISTRATION=ON 限制註冊來源
  • 使用 SSL/TLS 加密監聽器通訊 (TCPS 協定)
  • 設定 sqlnet.ora:SQLNET.ENCRYPTION_SERVER=REQUIRED, SQLNET.CRYPTO_CHECKSUM_SERVER=REQUIRED

五、審計與監控


-- 啟用標準審計
AUDIT SESSION;                    -- 登入/登出
AUDIT CREATE TABLE, DROP TABLE;   -- DDL
AUDIT INSERT, UPDATE, DELETE ON SCOTT.EMP BY ACCESS; -- 特定表 DML
AUDIT EXECUTE PROCEDURE BY ACCESS; -- 程序執行

-- 統一審計 (12c+)
AUDIT POLICY ORA_SECURECONFIG; -- 內建安全配置審計
  • 審計記錄寫入 SYS.AUD$ (標準) 或 UNIFIED_AUDIT_TRAIL (12c+)
  • 定期歸檔審計記錄防止 SYSTEM 表空間爆滿

六、備份與恢復策略 (資料安全最後防線)

  • RMAN 完整備份 + 歸檔日誌備份 (每日/每小時)
  • Data Guard 實體備援 (Maximum Protection/Availability/Performance 模式)
  • 定期演練恢復測試,驗證 RTO/RPO 指標

七、最小權限原則實踐清單

  1. 應用程式布號僅授 CREATE SESSION + 特定物件 SELECT/INSERT/UPDATE/DELETE
  2. 移除 PUBLIC 不必要的系統權限 (如 EXECUTE ON UTL_FILE)
  3. 使用 ROLE 管理權限群組,避免直接授予系統權限給用戶
  4. 啟用 PASSWORD_VERIFY_FUNCTION 強制密碼複雜度
  5. 定期檢視 DBA_SYS_PRIVS, DBA_TAB_PRIVS 審核權限異常
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved