今天我才开始学习加密技术,如果我的问题太基础请多包涵。
我有一个在GCP上设置了SSL加密的Postgres SQL实例。我已经在GCP上创建了一个客户端证书,并下载和存储了以下文件:
- server-ca.pem
- client-cert.pem
- client-key.pem
这些文件都在我的电脑中。
我正在尝试使用Python3.6中的psycopg2连接到远程数据库(使用conda安装)。我查看了文档以建立连接,显然需要使用上述文件才能建立连接。具体来说,在psycopg2.connect()
函数中,我使用以下参数:
sslmode='verify-ca'
sslcert=[客户端证书client-cert.pem文件的本地路径]
sslkey=[客户端密钥client-key.pem文件的本地路径]
sslrootcert=[服务器证书server-ca.pem文件的本地路径]
据此文档的说明,上述文件需要以以下格式结尾:.crt
,.key
,否则将出现错误。
经过我的研究,我发现我(可能)需要使用openssl
生成.crt
和.key
格式的文件。那我该怎么做呢?
如果我转换了.pem
文件并将转换后的文件传递给psycopg2.connect()
函数,我能连接到远程数据库吗?