views:

1008

answers:

3

I do a lot of work on databases over the internet. My company is instituting a policy of not sending any non-encrypted information (including vanilla JDBC). I currently connect to MS Sql Server and db2 databases (both LUW and AS/400). Is there an easy way to encrypt/decript these connections?

Edit: Found an interesting and relatively simple ssh tunnelling article that may be of some help. http://www.ibm.com/developerworks/data/library/techarticle/dm-0312lurie/index.html

A: 

Don't know about those databases, but oracle can be set to encrypt connection data that it sends out (& I think that it receives). The standard oracle jdbc jar copes with the encrypted data without any client configuration or programming changes.

Also - if you're using VPN to connect to your databases over the internet then this will be encrypted anyway won't it?

+1  A: 

Docs:

For DB2: Properties for the IBM DB2 Driver for JDBC and SQLJ (look at the property sslConnection)
For MSSQL: Using SSL Encryption

Jacek Szymański
+2  A: 

Maybe JDBC over SSL, if your databases support SSL and your JDBC drivers too. A fast googling shows that Microsoft SQL Server JDBC Driver 1.2 has support for SSL encryption and that the IBM DB2 JDBC Driver 9.1 includes SSL support to database servers that also have SSL support.

Some links :

Pascal Thivent