文档中心MogDBMogDB StackUqbar
v5.0

文档:v5.0

支持的版本:

其他版本:

连接数据库(SSL方式)

用户通过 psycopy2 连接 MogDB 服务器时,可以通过开启 SSL 加密客户端和服务器之间的通讯。在使用SSL时,默认用户已经获取了服务端和客户端所需要的证书和私钥文件,关于证书等文件的获取请参考Openssl相关文档和命令

  1. 使用 *.ini 文件(python的 configparser 包可以解析这种类型的配置文件)保存数据库连接的配置信息。

    文件内容如下:

    [opengauss]  
    host=localhost
    database=postgres  
    user=omm
    password=test
  2. 在连接选项中添加SSL连接相关参数:

    • sslmode:可选项见表1

    • sslcert:客户端证书路径。

    • sslkey:客户端密钥路径。

    • sslrootcert:根证书路径。

  3. 使用 psycopg2.connect 函数获得 connection 对象。

    from configparser import ConfigParser
    import psycopg2
    parser = ConfigParser()
    parser.read('database.ini')
    parameters = dict()
    for parameter, value in parser.items('opengauss'):
        parameters[parameter] = value
    connection = psycopg2.connect(**parameters)
  4. 使用 connection 对象创建 cursor 对象。

    cursor = connection.cursor()

表 1 sslmode 的可选项及其描述

sslmode 是否会启用SSL加密 描述
disable 不适用SSL安全连接。
allow 可能 如果数据库服务器要求使用,则可以使用SSL安全加密连接,但不验证数据库服务器的真实性。
prefer 可能 如果数据库支持,那么首选使用SSL连接,但不验证数据库服务器的真实性。
require 必须使用SSL安全连接,但是只做了数据加密,而并不验证数据库服务器的真实性。
verify-ca 必须使用SSL安全连接。
verify-full 必须使用SSL安全连接,目前暂不支持。
Copyright © 2011-2024 www.enmotech.com All rights reserved.