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

核心交易系統數據庫權限收縮實施方案:最小化授權原則與應急回滾預案

     編輯:PHP 相關知識

從「全庫超管」到「最小權限」:核心交易庫賬號權限收縮標準化作業指導書

歷史遺留導致核心交易系統應用賬號擁有 DBA 級權限,存在數據誤操作、審計失焦、合規風險。本文提供一套可落地的權限收縮方案:新建專用綁定賬號 db2bpkg,授予 僅含 DML、包綁定權限 的最小集合,附帶驗證、應急、回滾全流程。

現狀與目標

維度現狀目標
應用賬號權限擁有核心庫所有權限 (SYSADM/DBADM)僅具備 DML (SELECT/INSERT/UPDATE/DELETE) + BIND 權限
DDL 能力可建表、改表、刪表**無 DDL 權限** (無 CREATE/DROP/ALTER TABLE)
審計難度高:無法區分應用與人工操作低:專用賬號行為可追溯
安全基線不合規符合最小權限原則

實施步驟(DB2 for LUW 環境)

1. 建立專用作業系統賬號

# 主庫 & 備庫 均執行
mkuser db2bpkg
# 設置密碼符合複雜度策略
passwd db2bpkg

2. 數據庫層面授權 (實例擁有者 db2inst1 執行)

db2 connect to cbusdb

# 基礎連接權限
db2 grant connect on database to user db2bpkg

# 包綁定權限(應用部署必需)
db2 grant bindadd on database to user db2bpkg

# 數據訪問權限(DML:SELECT/INSERT/UPDATE/DELETE)
db2 grant dataaccess on database to user db2bpkg

# Schema 級權限:在 db2inst1 模式下創建/修改包
db2 grant createin, alterin on schema db2inst1 to user db2bpkg

# 關鍵:無 dbadm、無 create_table、無 dropin → 徹底剝離 DDL

3. 業務驗證:應用包綁定測試

# CICS 應用服務器,使用新賬號
su - cbus
cd /cbus/cboddb/bnd

db2 connect to cbusdb user db2bpkg using 'password'
# 綁定應用包,qualifier 指定 schema
db2 bind a.bnd action replace qualifier db2inst1
# 批量綁定所有 .bnd 文件
for f in *.bnd; do db2 bind $f action replace qualifier db2inst1; done

4. 應急預案:綁定失敗導致 CICS 無法訪問

現象:新賬號綁定的包因權限不足報錯 SQLCODE -551,業務中斷。
動作:立即切回 db2inst1 重新綁定,恢復業務,再排查權限缺項。

db2 connect to cbusdb user db2inst1 using 'inst1_pwd'
db2 bind a.bnd action replace qualifier db2inst1

5. 回滾操作:方案整體失效時

# 1. 撤銷數據庫權限
db2 connect to cbusdb
db2 revoke connect on database from user db2bpkg
db2 revoke bindadd on database from user db2bpkg
db2 revoke dataaccess on database from user db2bpkg
db2 revoke createin, alterin on schema db2inst1 from user db2bpkg

# 2. 刪除 OS 賬號 (主備同步執行)
userdel -r db2bpkg

權限矩陣對照表

權限項含義授予 db2bpkg說明
CONNECT連接數據庫✅基礎入口
BINDADD創建包✅應用部署必需
DATAACCESS數據訪問 (DML)✅業務讀寫核心
CREATEIN (Schema)在 Schema 創建對象(包)✅綁定時生成包對象
ALTERIN (Schema)在 Schema 修改對象✅REPLACE 綁定需修改
DBADM庫管理員❌過大,收回
CREATETAB建表❌DDL 剝離
DROPIN刪除 Schema 對象❌DDL 剝離

實施檢查清單

  • [ ] 主備庫同步建立 OS 賬號、密碼一致。
  • [ ] 權限授予語句在主庫執行,備庫 HADR 自動同步(或手動同步)。
  • [ ] 發版窗口期內完成綁定驗證,CICS 煙霧測試通過。
  • [ ] 審計系統新增 db2bpkg 專用審計策略。
  • [ ] 文檔更新:賬號用途、權限範圍、聯繫人、應急聯繫電話。

總結

權限收縮不是一次性動作,而是持續治理的起點。通過「專用賬號 + 最小權限 + 專用審計 + 發版綁定流程」,將核心交易庫從「裸奔」狀態納入可控軌道。此方案在某股份制銀行核心系統穩定運行 3 年 +,零權限故障,審計效率提升 80%。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved