身份驗證是 DB2 資料庫安全計畫的核心,它掌控著兩大關鍵面向:
當使用者發出 attach 或 connect 指令時,DB2 會在底層作業系統安全機制的協助下完成驗證。其中 attach 用於連接 DB2 實例,connect 則用於連接實例內的特定資料庫。預設的驗證類型為 SERVER,以下範例展示不同的驗證模式。
使用建立 DB2 實例時的使用者 ID 登入安裝 DB2 的主機,然後執行:
db2 attach to DB2
此時會進行隱式驗證。系統直接採用登入主機的使用者 ID,並假設該 ID 已通過作業系統驗證,無需再輸入密碼即可連接實例。
指定使用者帳號與密碼連接資料庫:
db2 connect to sample user test1 using passWord
輸出資訊如下:
Database Connection Information
Database server = DB2/NT 9.1.0
sql authorization ID = TEST1
Local database alias = SAMPLE
這裡執行顯式驗證。使用者 test1 與密碼 passWord 由作業系統驗證,驗證通過後成功連接到 SAMPLE 資料庫,SQL 授權 ID 為 TEST1。
DB2 也支援在連線時同步修改作業系統密碼:
db2 connect to sample user test1 using passWord new chgpass confirm chgpass
此指令會在建立連線的同時,將密碼從 passWord 變更為 chgpass,並要求確認新密碼,方便使用者定期更新憑證。
理解 DB2 的身份驗證機制,有助於規劃合適的安全性架構。隱式驗證簡化本地管理操作,顯式驗證則強化遠端與應用程式連線的安全性,搭配作業系統層級的帳號管理,能構建多層次的防護體系。