我们在Tomcat和Windows上运行Java servlet,所有数据库连接都使用SSL加密。这与其中一个我不理解的连接(SQL Server)上的奇怪问题不同。我正在使用WireShark来检查加密是否正常工作但是,每当通过servlet执行新的登录时,此特定连接的FIRST数据传输仅部分加密,但是如果在此下进行第二次或第三次数据传输到此数据库连接同一登录时整个邮件都被加密了。
登录后,所有请求都通过Tomcat提供的令牌处理。
为什么第一次数据传输只是部分加密?
编辑:这是Tomcats server.xml文件中的条目
<Connector port="8443"
protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true"
maxThreads="150" minSpareThreads="25"
enableLookups="true" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" KeyAlias="ows"
KeystoreFile="C:\SSLKeys\ows.key" KeystorePass="********" />
编辑2:添加了相关的JNDI连接
<Resource auth="Container"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
factory="org.moss.jdj.dbcp.EncryptedDataSourceFactory" maxActive="100"
maxIdle="30" maxWait="10000" name="jdbc/connectionname"
password="*******" type="javax.sql.DataSource"
url="jdbc:sqlserver://databaseinstallname\db_instancename:2369;
databaseName=Images;encrypt=true;trustServerCertificate=true"
username="*******" />