10.7.1 TLS 配置
Fast DDS 提供了通过其 <transport_descriptor>
的 <tls>
XML 元素配置传输层安全(TLS)协议参数的机制。关于 Fast DDS 中整个 TLS 配置的详细说明,请参考“通过 TCP 的 TLS”。有关如何在 Fast DDS 中设置安全通信的更多信息,可以在“安全”部分找到。
警告
要充分理解本节内容,要求具备基础的网络安全知识,包括 SSL/TLS、证书颁发机构(CA)、公钥基础设施(PKI)和 Diffie-Hellman 等相关概念;加密协议并未在此详细解释。
可用的 XML 元素列表
以下是可以在 <tls>
元素中定义以配置 TLS 协议的完整元素列表:
名称 | 描述 | 值 | 默认值 |
---|---|---|---|
<password> |
如果提供了 <private_key_file> 或 <rsa_private_key_file> ,则为私钥文件的密码。 |
字符串 | |
<private_key_file> |
私钥证书文件的路径。 | 字符串 | |
<rsa_private_key_file> |
RSA 私钥证书文件的路径。 | 字符串 | |
<cert_chain_file> |
公共证书链文件的路径。 | 字符串 | |
<tmp_dh_file> |
Diffie-Hellman 参数文件的路径。 | 字符串 | |
<verify_file> |
证书颁发机构(CA)文件的路径。 | 字符串 | |
<verify_mode> |
确定验证模式掩码。在同一 <transport_descriptor> 中可以组合多种验证选项。 |
VERIFY_NONE VERIFY_PEER VERIFY_FAIL_IF_NO_PEER_CERT VERIFY_CLIENT_ONCE |
|
<options> |
确定 SSL 上下文选项掩码。在同一 <transport_descriptor> 中可以组合多种选项。 |
DEFAULT_WORKAROUNDS NO_COMPRESSION NO_SSLV2 NO_SSLV3 NO_TLSV1 NO_TLSV1_1 NO_TLSV1_2 NO_TLSV1_3 SINGLE_DH_USE |
|
<verify_paths> |
系统查找验证文件的位置。 | 字符串列表 | |
<verify_depth> |
验证中间证书时允许的最大深度。 | uint32_t | |
<default_verify_path> |
指定系统是否会在默认路径上查找验证文件。 | 布尔值 | false |
<handshake_role> |
在握手过程中传输将扮演的角色;默认为接受者作为 SERVER,连接者作为 CLIENT。 | - DEFAULT - SERVER - CLIENT |
- DEFAULT |
<server_name > |
SNI 使用时所需服务器名称或主机名 | string |
总结
这些配置元素使得用户能够灵活地设置和调整 TLS 安全通信参数,以满足不同应用场景下对网络安全性的需求。同时,对于使用这些功能的人来说,需要具备一定程度上的网络安全知识,以便于正确理解和运用这些配置选项。
内容由零声教学AI助手提供,问题来源于学员提问