我想在 tomcat 7 配置 (server.xml) 中加密我的数据库连接。我正在使用 connectionProperties 来提供加密算法,但不知何故,这些属性不起作用。
这是我的配置文件中的块:
<Resource
name="jdbc/TestDb" auth="Container"
type="oracle.ucp.jdbc.PoolDataSource"
description="UCP Pool in Tomcat"
factory="oracle.ucp.jdbc.PoolDataSourceImpl"
connectionFactoryClassName="oracle.jdbc.pool.OracleDataSource"
minPoolSize="10"
maxPoolSize="100"
inactiveConnectionTimeout="20"
user="******"
password="*****"
connectionProperties="oracle.net.encryption_client=REQUIRED,
oracle.net.encryption_types_client=AES256,
oracle.net.crypto_checksum_client=REQUIRED,
oracle.net.crypto_checksum_types_client=SHA512"
url="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=***)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=***)))"
connectionPoolName="UCPPool"
sqlForValidateConnection="select 1 from DUAL"
validateConnectionOnBorrow="true" />
尝试在连接属性中使用分号代替逗号。但没有任何效果。
请看看是否有人可以帮忙。
尝试输入以下格式的值 - {prop1=val1, prop2=val2, ..., propN=valN} 所有键值对应以“,”(逗号和空格字符)分隔,并应放置在 {} 内。 例如,在你的情况下,它应该是 - connectionProperties =“{oracle.net.encryption_client =必需,oracle.net.encryption_types_client = AES256,oracle.net.crypto_checksum_client =必需,oracle.net.crypto_checksum_types_client = SHA512}”
分隔符是“;” (分号)而不是“,”(逗号)。也不要在列表周围使用“{}”(大括号)或任何类型的括号。