что включает включение ssl в процессе подключения к базе данных? я понимаю, что рукопожатие вводит нагрузку, а шифрование - нет. Я использую следующий код для включения ssl при подключении к базе данных с помощью create_engine в sqlalchemy:
uri = "{0}://{1}@{2}:{3}/{4}".format(db_creds.get('scheme'),
self._get_auth_str(db_creds.get('username'),
db_creds.get('password')),
db_creds.get('hostname'),
str(db_creds.get('port')),
db_creds.get('name'))
ssl_args = {}
if self.config['ssloption'].lower() == 'true':
# connecting securely
if db == 'mysql':
self.config['ssloption'] = 'required'
ssl_args = {
'ssl': {
'sslmode': str(self.config['ssloption'])
}
}
if db == 'warehouse':
self.config['ssloption'] = 'require'
ssl_args = {
"sslmode": str(self.config['ssloption'])
}
self._connections[db] = create_engine(uri, connect_args=ssl_args, encoding='utf8')
else:
# not connecting securely
self._connections[db] = create_engine(uri, encoding='utf8')