Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade MySQL Connector/J to Version 5.1.49 to support SSL/TLS #1239

Open
grantfitzsimmons opened this issue Feb 29, 2024 · 0 comments
Open

Comments

@grantfitzsimmons
Copy link
Member

grantfitzsimmons commented Feb 29, 2024

While SSL/TLS is most familiar to users through its use securing web traffic, it is used for much more. MySQL and MariaDB have supported SSL/TLS encrypted connections since version 5.5. You can checkout the 5.7 documentation for it at https://dev.mysql.com/doc/refman/5.7/en/using-encrypted-connections.html

With Specify7, it is configured by simply adding DATABASE_OPTIONS = {'ssl': True} to local_specify_setting.py. All traffic between the application and database will then be encrypted.

After some additional investigation, according to the Connector/J documentation, it should be as simple as adding “useSSL=True&enabledTLSProtocols=TLSv1.2” to the connection setup strings for MySQL in c:\Program Files\Specify6.8.03\config\dbdrivers.xml.

However, we found that that did not work. Specify was unable to establish a database connection. After reviewing the version of the MySQLConnector/J that was included in Specify 6.8.03, we determined that we needed to upgrade the MySQL Connector/J from version 5.1.35(released 3-23-2015) to version 5.1.49, released 4/29/2020. Once we updated to that version, encrypted MySQL/MariaDB connections works perfectly.

Any chance that the java packages will be updated in Specify 6?

Requested by: Bill Kuntz at the Florida Museum

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant