Oracle Wallet 钱包配置
Oracle Wallet
是一种安全容器,用于安全地存储敏感信息,如加密密钥、证书、凭据等,在 Oracle 安全体系中扮演着核心角色。本文主要侧重于介绍如何在 Linux
下配置 Oracle Wallet
,以便可以通过 utl_http
发起 https
请求(以访问 https://www.google.com 为例)。
Wallet 的主要作用
功能场景 | 说明 |
---|---|
1. TDE(Transparent Data Encryption) | 存储主加密密钥(master encryption key),用于加密/解密表或表空间的数据。Wallet 是 TDE 启动的前提。 |
2. Oracle Auto-Login(自动登录 Wallet) | 实现数据库启动时无需手动输入密码即可访问加密内容(常用于无人值守环境) |
3. Oracle Secure External Password Store(SEPS) | 允许将数据库连接口令以加密形式存储在 Wallet 中,避免将密码暴露在脚本或配置文件中 |
4. SSL/TLS 证书存储 | 存放数据库访问其他服务(如 Web Service、SMTP、LDAP)时所需的客户端证书或信任根证书 |
5. Oracle GoldenGate / Data Pump 等工具集成 | 在传输加密数据时,利用 Wallet 中的密钥对数据进行加解密 |
6. Database Link 密码加密(12c+) | Wallet 支持存储加密后的数据库链接口令(密钥在 Wallet 中),提高 DBLink 安全性 |
Wallet 的类型
类型 | 说明 |
---|---|
Standard Wallet (ewallet.p12 ) | 手动加载,需要口令打开 |
Auto-Login Wallet (cwallet.sso ) | 自动加载,无需口令(适用于无人值守环境) |
Local Auto-Login Wallet | 与特定服务器绑定,不能跨主机使用 |
Password-Protected Wallet | 仅在手动输入密码后才能访问 |
通常实际部署中,开发/测试环境用 auto-login,生产环境使用手动 wallet 并设置安全策略。