准备 TLS 无钱包连接
您可以将数据库应用或工具连接到专用 Exadata 基础结构上的自治 AI 数据库,而无需 wallet。在不使用 wallet (TLS) 的情况下连接应用程序可以为验证和加密提供安全保护,并使用客户机操作系统 (OS) 信任的安全证书来强制实施安全保护。
仅当满足以下要求时,不使用客户端 wallet 的 TCPS 连接才有效:
-
已启用单向 TLS 连接。
默认情况下,预配 AVMC 时会启用单向 TLS 连接。有关详细信息,请参阅创建自治 Exadata VM 集群。
-
服务器 SSL 证书由客户机操作系统信任。
使用由众所周知的公共 CA 签名的 (BYOC) 数字 SSL 证书,以便默认情况下由客户机 OS 信任。如果数字证书不是由众所周知的公共 CA(例如 Digicert)签名,请手动添加证书,以便客户机 OS 信任该证书。
例如,在 Linux 环境中,将服务器提供的证书添加到
/etc/ssl/certs/ca-bundle.crt文件中。
要自备证书 (BYOC),请按照以下步骤操作:
-
从公共 CA 获取 SSL 证书,例如 Digicert。有关详细说明,请参见 Additional Information 。
-
使用 OCI 证书服务植入 SSL 证书。请参阅创建证书。
这些证书必须已签名,并且必须采用 PEM 格式,即,其文件扩展名必须为 .pem、.cer 或 .crt。
-
从可从 AVMC 详细信息页面访问的 Manage Certificates(管理证书)对话框将 SSL 证书添加到 AVMC。请参阅管理自治 Exadata VM 集群的安全证书。
其他信息
从公共 CA 获取 SSL 证书涉及的高级步骤包括:
-
创建 wallet。
WALLET_PWD=<password> CERT_DN=CERT_DN="CN=adb.example.oraclecloud.com,OU=Oracle BMCS FRANKFURT,O=Oracle Corporation,L=Redwood City,ST=California,C=US" CERT_VALIDITY=365 KEY_SIZE=2048 SIGN_ALG="sha256" WALLET_DIR=$PWD ASYM_ALG="RSA" $ORACLE_HOME/bin/orapki wallet create -wallet $WALLET_DIR -pwd $WALLET_PWD -auto_login -
创建签名请求(这将在 Wallet 中创建一个私钥和一个请求的证书)
$ORACLE_HOME/bin/orapki wallet add -wallet $WALLET_DIR -dn "$CERT_DN" -pwd $WALLET_PWD -keysize $KEY_SIZE -sign_alg $SIGN_ALG -validity $CERT_VALIDITY -asym_alg $ASYM_ALG -
导出签名请求
$ORACLE_HOME/bin/orapki wallet export -wallet $WALLET_DIR -dn "$CERT_DN" -request $WALLET_DIR/cert.csr -
将签名请求文件 cert.csr 发送到公共 CA,让 CA 验证该文件并发送回用户/叶证书和链。
-
在 wallet 中添加用户证书和链(根证书 + 中间证书)
$ORACLE_HOME/bin/orapki wallet add -wallet $WALLET_DIR -pwd $WALLET_PWD -trusted_cert -cert $WALLET_DIR/root.crt$ORACLE_HOME/bin/orapki wallet add -wallet $WALLET_DIR -pwd $WALLET_PWD -trusted_cert -cert $WALLET_DIR/intermediate.crt$ORACLE_HOME/bin/orapki wallet add -wallet $WALLET_DIR -pwd $WALLET_PWD -user_cert -cert $WALLET_DIR/usercert.crt -
将用户证书、链证书和私钥上载到 Oracle Cloud Infrastructure (OCI) 证书服务。可以使用以下命令从 wallet 获取私钥:
openssl pkcs12 -in $WALLET_DIR/ewallet.p12 -out $WALLET_DIR/private.pem -nocerts