Python中如何配置数据库连接的SSL证书验证
发布时间:2023-12-26 12:43:47
在Python中,可以使用mysql-connector-python库来连接MySQL数据库,并进行SSL证书验证。以下是一个示例代码,演示了如何配置数据库连接的SSL证书验证:
import mysql.connector
# 配置SSL证书的路径
ssl_ca = '/path/to/ca.crt'
ssl_cert = '/path/to/client.crt'
ssl_key = '/path/to/client.key'
# 数据库连接配置
config = {
'user': 'your_username',
'password': 'your_password',
'host': 'your_host',
'port': 'your_port',
'database': 'your_database',
'ssl_ca': ssl_ca,
'ssl_cert': ssl_cert,
'ssl_key': ssl_key
}
# 建立数据库连接
cnx = mysql.connector.connect(**config)
cursor = cnx.cursor()
# 执行SQL查询
query = 'SELECT * FROM your_table'
cursor.execute(query)
# 获取查询结果
result = cursor.fetchall()
for row in result:
print(row)
# 关闭连接
cursor.close()
cnx.close()
在以上代码中,首先需要设置SSL证书的路径,即ssl_ca、ssl_cert和ssl_key变量,分别指向CA证书、客户端证书和客户端私钥的路径。
接下来,创建一个config字典,包含了数据库连接的配置信息,包括用户名、密码、主机地址、端口和数据库名称等,以及之前设置的SSL证书的路径。
然后,使用mysql.connector.connect()函数建立数据库连接,并传入config字典作为参数。
接下来,可以创建一个游标对象cursor,用于执行SQL查询,并通过execute()方法执行查询语句。
使用fetchall()方法获取查询结果,并通过遍历迭代打印结果。
最后,使用close()方法关闭游标和数据库连接。
需要注意的是,SSL证书的路径应该根据实际的SSL配置进行修改,确保能够正确地找到和使用证书文件。
