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

Oracle 資料庫安全性深度防護:作業系統層、網路層、資料檔層與審計策略全景指南

     編輯:Oracle 資料庫基礎

安全防護分層模型

資料庫安全需從 OS 層、網路層、資料檔層、應用層多維度構建纵深防禦體系。

一、作業系統層安全:群組與權限控制

Unix/Linux 群組配置策略

  • 安裝前建立 DBA 群組,分配 root 與 Oracle 軟體擁有者 UID
  • DBA 專用程式權限 710(僅擁有者與群組可執行)
  • 建立 Oracle 群組給授權用戶,公用程式 (SQL*Plus, SQL*Forms, exp, imp) 權限 710
  • 非敏感程式權限 711

/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
  • ora_sid_role[_d][_a] 格式:sid=資料庫 SID,role=OS 角色
  • _d:預設角色;_a:WITH ADMIN OPTION

啟用 OS 角色驗證

  1. 修改參數檔:OS_ROLES=TRUE
  2. 重啟資料庫
  3. 若需 CONNECT INTERNAL,執行 orapwd 設定密碼檔

預設帳號密碼強制修改


ALTER USER SYS IDENTIFIED BY new_strong_password;
ALTER USER SYSTEM IDENTIFIED BY new_strong_password;

二、資料庫檔案層安全

  • 資料檔 ($ORACLE_HOME/dbs/*.dbf) 權限 0600(僅擁有者讀寫)
  • 建議回收群組與其他用戶讀取權限
  • 目錄擁有權歸 Oracle 軟體擁有者

三、網路層安全

密碼傳輸加密

  • 啟用網路加密(Oracle Advanced Security),避免明文密碼被攔截
  • 配置 sqlnet.ora:SQLNET.ENCRYPTION_CLIENT=REQUIRED

遠端 DBA 存取控制

  1. 拒絕遠端 DBA 存取:REMOTE_LOGIN_PASSWORDFILE=NONE
  2. 或使用密碼檔控制:orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=strong_pwd entries=10

四、SQL*DBA 特權命令管控

僅 Oracle 軟體擁有者與 DBA 群組可執行:

  • STARTUP
  • SHUTDOWN
  • CONNECT INTERNAL

五、審計與監控策略

  • 啟用標準審計:AUDIT_TRAIL=DB,EXTENDED
  • 審計關鍵操作:AUDIT CREATE TABLE, DROP TABLE, ALTER USER BY ACCESS
  • 定期審查警示日誌 (alert_SID.log) 與審計軌跡
  • 部署 Oracle Audit Vault 或 Unified Auditing (12c+) 集中管理

六、備份與恢復安全

  • RMAN 備份加密:CONFIGURE ENCRYPTION FOR DATABASE ON
  • 備份檔案異地存放,定期測試恢復
  • 歸檔日誌多路鏡像,防單點故障
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved