我希望我的数据库以加密方式将数据发送到客户端。我搜索了一下,发现 Oracle 有 SSL。不幸的是,我找不到一步一步的教程来解释如何创建自签名证书、在数据库端配置 SSL、在客户端配置 SSL 并对其进行测试。
请与我分享你的知识。
先感谢您。
- -编辑
我的步骤:
- 在数据库服务器上运行 Oracle Wallet Manager。
- 创建新钱包。
- 创建新证书请求。
- 导出的证书请求。
- 使用ssl.ca-0.1(从http://www.openssl.org/contrib/下载)创建自签名根证书,使用
new-root-ca.sh
并导入为数据库服务器上的受信任证书。 sign-server-cert.sh
通过在数据库服务器上运行并作为用户证书导入来创建自签名服务器证书。
在这里我很困惑,....不知道如何配置客户端
在ssl.ca-0.1中还有文件new-user-cert.sh
和sign-user-cert.sh
,我不明白它们的用途。
尝试使用从数据库服务器导出的相同认证请求运行它们并尝试将其导入客户端钱包我错了吗?
可能是的,因为它不导入用户证书......我真的很困惑,不明白主要思想。
我在客户端钱包位置复制了数据库服务器上生成的钱包,对吗?
我找到了答案。
在我的帖子中,我描述了如何创建受信任的用户证书。因为我猜受信任的证书是公钥,而用户证书是私钥(如果我错了,请纠正我)。
现在我写下我是如何完成这项工作的。
--在数据库服务器上
运行 owm(Oracle 钱包管理器)并:
--在客户端服务器上复制的根证书(先前生成)。
创建新钱包。
创建认证请求。
通过选择复制的根证书导入受信任的证书。
编辑
tnsnames.ora
客户端服务器上的文件以使用使用 TCPS 协议和端口的 TNS 条目,例如 2484。编辑
listener.ora
数据库服务器上的文件以侦听端口 2484 和协议 TCPS。打开网络管理器并在两侧配置 SSL。
--数据库端
指明钱包目录。
我已取消选中“需要客户端身份验证”和您想要的其他选项。
- 客户端
指示钱包目录..
以及您想要的其他选项。