Tomcat JDBC(Datasource)密码加密解密
Tomcat JDBC (Datasource) password encryption and decryption
我对TomcatJDBC密码加解密有一些顾虑
据我所知,通常,我们在 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。
据我了解,在那些情况下,可以访问服务器的人可以通过以下方式提取实际密码:
- 使用来自 tomcat 配置文件的“secretkey”的 jar 文件进行解密,或
- 正在使用 jar 文件解密,该 jar 文件中已经包含“secretkey”。
IBM WebSphere 在输入数据库密码时有屏蔽功能,所以安全团队输入后没有人能看到密码。
在 Tomcat 上有什么办法可以做到这一点吗?从现在开始(迁移)我需要在 Azure 上使用 tomcat 而不是本地 WebSphere,但在 google 上找不到与此相关的答案或内容。求助~!
提前致谢。
IBM WebSphere has masking feature when inserting DB password, so no-one can see the password after insert by Security Team
它的工作原理与 Tomcat 中的相同,只是 WS 较少记录密码是如何加密的。如果您使用存储的数据库密码、用于加密/解密密码的库和主 password/key(全部存储在文件系统中),那么有权访问服务器的人也可以在 WS 上解密数据库密码。这个过程不太透明。
大体上是这样的,只要有系统需要解密和使用一些数据,就需要有密钥在手(或者凭据和参数获取密钥)。
我对TomcatJDBC密码加解密有一些顾虑
据我所知,通常,我们在 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。
据我了解,在那些情况下,可以访问服务器的人可以通过以下方式提取实际密码:
- 使用来自 tomcat 配置文件的“secretkey”的 jar 文件进行解密,或
- 正在使用 jar 文件解密,该 jar 文件中已经包含“secretkey”。
IBM WebSphere 在输入数据库密码时有屏蔽功能,所以安全团队输入后没有人能看到密码。 在 Tomcat 上有什么办法可以做到这一点吗?从现在开始(迁移)我需要在 Azure 上使用 tomcat 而不是本地 WebSphere,但在 google 上找不到与此相关的答案或内容。求助~!
提前致谢。
IBM WebSphere has masking feature when inserting DB password, so no-one can see the password after insert by Security Team
它的工作原理与 Tomcat 中的相同,只是 WS 较少记录密码是如何加密的。如果您使用存储的数据库密码、用于加密/解密密码的库和主 password/key(全部存储在文件系统中),那么有权访问服务器的人也可以在 WS 上解密数据库密码。这个过程不太透明。
大体上是这样的,只要有系统需要解密和使用一些数据,就需要有密钥在手(或者凭据和参数获取密钥)。