Oracle GoldenGate: Security Best Practices
從3方面:
- data storage
- data transmission
- data access
Credential Store
用來存儲訪問數據庫的用戶名和口令,實現形式爲uto-login wallet,無需人工介入。最佳是在共享文件系統上實現,並被多個OGG實例共享。
命令形式爲:
alter credentialstore add user xxx password xxx ...
Master Key and Wallet
Oracle GoldenGate wallet用來存儲數據文件和傳輸加密的master key(用來加密encryption key)。
命令形式爲:
create wallet ...
add masterkey ...
GoldenGate Trail Encryption
Extract時自動加密,Replicate時自動解密,算法從AES128, AES192或AES256中選擇。
在參數文件中指定:
encrypttrail aes256
Data Transmission Encryption
在參數文件中指定:
rmthost 192.168.120.42, mgrport 7809, encrypt aes256
GGSCI Command Security
允許或拒絕用戶指定某些命令,格式爲:
command_name command_object OS_group OS_user {YES | NO}
Manager Access Rules
控制對於管理進程的連接訪問,類似於網絡防火牆規則,例如:
accessrule, prog server, ipaddr 192.168.120.42, pri 1, allow
Disk File Security
磁盤文件的權限是由操作系統控制的,最佳實踐是賦予oracle用戶管理員權限,賦予dba用戶組組管理權限。
Oracle Key Vault
GoldenGate可以與Oracle Key Vault無縫集成,集中存儲和管理Credential Store,Master Key和 Wallet文件。
Masking Sensitive Data with Oracle GoldenGate
Personally Identifiable Information (PII)
Sensitive Personal Information (SPI)
PII或SPI可以唯一確定個人,包括生日,地址,身份證,信用卡,駕照等。
在參數文件中,ENCRYPTTRAIL
用以加密寫到trail文件的數據。RMTHOST ENCRYPT
用以加密傳輸的數據。
對trail文件的加密過程可參見
Oracle GoldenGate Security: Trail File Encryption
OGG Column Conversion Functions可對包含敏感數據的列進行脫敏。
Oracle GoldenGate Security Guide
以下部分文字適合於投標。
OGG有兩種架構,即MA(Microservices Architecture)和CA(Classic Architecture)。
OGG的安全選項包括:
安全目標 | 安全特性 | 支持的數據庫 | 支持的架構 | 描述 |
---|---|---|---|---|
Master Encryption Key | 使用Oracle Key Vault管理數據加密 | 所有數據庫 | 傳統和微服務架構 | 存儲和管理加密trail文件的master key |
trail或extract文件中的數據,網絡傳輸中的數據 | 使用master key和wallet加密數據 | 僅NonStop平臺不支持 | X | 加密文件中,跨data link和TCP/IP的數據,支持AES和Blowfish加密 |
OGG進程登錄數據庫的用戶名與口令 | Credential Store管理 | 僅NonStop平臺不支持 | 微服務架構 | 用戶信息存儲在安全的wallet中 |
命令行和參數文件中指定的登錄數據庫的口令 | 口令加密 | 所有OGG支持的數據庫和平臺 | 傳統架構 | 支持ASE和Blowfish算法 |
GGSCI中的OGG命令 | 命令認證 | 所有OGG支持的數據庫和平臺 | X | 在安全的操作系統文件中存儲命令權限 |
連接防火牆外不受信的OGG主機 | 可信連接 | 所有OGG支持的數據庫和平臺 | X | 支持ASE和Blowfish算法 |
OGG Manager訪問規則 | OGG Manager安全 | 所有OGG支持的數據庫和平臺 | 傳統架構 | 可應用於GGSCI命令行接口,受控於Manager的進程間命令,到Replicat進程的連接等 |
選擇適合你需要的cryptographic庫 | CryptoEngine | 所有OGG支持的數據庫和平臺 | 傳統和微服務架構 | 選擇OGG使用的cryptographic庫 |
微服務架構REST服務接口 | 認證 | 所有OGG支持的數據庫和平臺 | 微服務架構 | X |
通訊安全 | TLS和安全網絡協議 | 所有OGG支持的數據庫和平臺 | 微服務架構 | X |
微服務架構REST用戶授權 | 授權 | 所有OGG支持的數據庫和平臺 | 微服務架構 | X |
目標初始化Trail | 可信環境下的目標初始化Trail | 所有OGG支持的數據庫和平臺 | 微服務架構 | |
反向代理 | 反向代理僅使用一個端口 | 所有OGG支持的數據庫和平臺 | 微服務架構 | X |
以上安全特性的介紹和具體實現可參見這裏
以上是OGG自身的安全性,另外OGG也可以與Oracle數據庫安全解決方案結合。 詳見白皮書
Oracle 數據庫提供了縱深防禦和萬無一失的內外部安全性,可防範來自數據庫內部和外部的攻擊。Oracle 提供了許多業界領先的安全控制,包括特權用戶控制、多因素授權、透明數據加密、審計、配置掃描和 SQL 監視,這些只是其中一小部分。
Oracle Advanced Security 透明數據加密 (TDE) 爲 Oracle 數據庫內的靜態數據提供了高度優化的加密。TDE 可幫助用戶滿足合規性要求,同時它可以防止特權用戶和未經授權的操作系統用戶通過檢查數據庫文件的內容來直接訪問敏感信息。此外,TDE 還可針對數據庫存儲介質和備份被盜、丟失或不當棄用的情況提供保護。爲了保護 Oracle 數據庫內的靜態數據,Oracle Advanced Security TDE 在數據寫入存儲之前對其進行加密,在從存儲讀取該數據時自動對其進行解密,並且無需修改現有的應用程序。在 Oracle 數據庫內部實施的訪問控制(包括對象訪問權限和角色)仍然有效。
TDE 提供強健的雙層密鑰管理架構,包括主加密密鑰和單獨的數據加密密鑰。當前主密鑰和既往主密鑰存儲在數據庫之外的 Oracle Wallet 中,它們的輪換很容易,這便於滿足合規性要求。
Oracle Database Vault 可阻止內部人員或已經失密的特權帳戶在 Oracle 數據庫內訪問敏感數據和進行其它未經授權的操作。Oracle Database Vault 領域可阻止有人濫用 DBA 特權繞過慣常的權限授予。Oracle Database Vault 命令規則可強制實施特別的操作控制,阻止特權用戶進行那些可能危及數據庫安全性的操作。
存儲在數據庫中以及在各環境之間來回複製的敏感數據量持續增長,對這些數據進行安全保護的需求也在空前高漲。黑客們不斷以數據庫內部和外部特權帳戶爲攻擊目標。Oracle 數據庫安全解決方案和 Oracle GoldenGate 聯手協作,可以爲數據的保護和複製提供無與倫比的業界領先解決方案。Oracle GoldenGate 可以與 Oracle Advanced Security TDE 及 Oracle Database Vault 結合使用。Oracle Advanced Security TDE、Oracle Database Vault 和 Oracle GoldenGate 已經過多種軟件程序的認證,包括 E-Business Suite、Oracle PeopleSoft Enterprise 及 Oracle JD Edwards Enterprise 等 Oracle 管理軟件。