需求背景
在一些安全性要求高的环境内,需要开启加密传输,未加密的流量有可能被爬取后解密
查询状态
首先查询是否已经开启
select network_service_banner
from v$session_connect_info
where sid in (select distinct sid from v$mystat);
如果回显了加密的算法,则表示开启加密,如果只是显示了一些版本信息,则表示未开启
Oracle Advanced Security: AES256 encryption service adapter for Linux: Version 1
1.2.0.4.0 - Product
Oracle Advanced Security: SHA1 crypto-checksumming service adapter
配置加密
服务端会在sqlnet.ora中自动生成以下代码的第一行,其余两行需要手动添加,否则加密不生效
SQLNET.ENCRYPTION_TYPES_SERVER= (AES256, AES192)
SQLNET.ENCRYPTION_SERVER = required
SQLNET.CRYPTO_CHECKSUM_SERVER = required
客户端需要与服务端使用相同的加密方式,jdbc示例如下:
jdbc.connectionProperties=oracle.net.encryption_client\=REQUIRED;oracle.net.encryption_types_client\=(AES256,AES192);oracle.net.crypto_checksum_client\=REQUIRED;oracle.net.crypto_checksum_types_client\=(SHA1)
评论