我對 Tomcat JDBC 密碼加密和解密有些擔心。
據我所知,通常情況下,我們在 tomcat 上設定資料源,如下所示。
<Resource name="jdbc/MyDB"
factory="nl.wimvanhaaren.tomcat.secured.EncryptedDataSourceFactory"
secretKey="secretKeyId"
auth="Container"
type="javax.sql.DataSource"
maxActive="100"
maxIdle="30"
maxWait="10000"
username="databaseUser"
password="dd30b6e87a972be1999fda04f657eca0"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433;databaseName=MyDB"/>
或者我們在 DataSourceFactory jar 檔案上設定 secretKey。
據我了解,在這些情況下,可以訪問服務器的人可以通過以下方式提取實際密碼:
- 使用 jar 檔案和 tomcat 組態檔中的“secretkey”解密,或者
- 使用已在 jar 檔案中包含“secretkey”的 jar 檔案進行解密。
IBM WebSphere 在插入資料庫密碼時具有屏蔽功能,因此安全團隊插入后沒有人可以看到密碼。有沒有辦法在Tomcat上做到這一點?從現在開始(遷移),我需要在 Azure 上使用 tomcat 而不是本地 WebSphere,但在 google 上找不到與此相關的答案或內容。請幫忙~!
提前致謝。
uj5u.com熱心網友回復:
IBM WebSphere在插入資料庫密碼時具有屏蔽功能,因此安全團隊插入后沒有人可以看到密碼
它的作業原理與 Tomcat 中的相同,只是 WS 沒有記錄密碼是如何加密的。如果您使用存盤的資料庫密碼、用于加密/解密密碼的庫和主密碼/密鑰(都存盤在檔案系統中),那么有權訪問服務器的人也可以解密 WS 上的資料庫密碼。這個程序只是不那么透明。
原則上是這樣,一旦某個系統需要解密和使用某些資料,就需要手頭有密鑰(或獲取密鑰的憑證和引數)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/405445.html
標籤:
下一篇:如何在log4j2.xml中為我的日志檔案添加主機名?我正在使用spring3.0.5,需要將log4j遷移到log4j2
