TLS上下文

  1. {
  2. "alpn_protocols": "...",
  3. "cert_chain_file": "...",
  4. "private_key_file": "...",
  5. "ca_cert_file": "...",
  6. "verify_certificate_hash": "...",
  7. "verify_subject_alt_name": [],
  8. "cipher_suites": "...",
  9. "ecdh_curves": "...",
  10. "sni": "..."
  11. }
  • alpn_protocols

    (optional, string) 提供请求连接的ALPN协议列表。在实践中,这可能会被设置为一个单一的值或根本不设置:

    • “h2”:指定上游连接使用HTTP/2。在当前的实现中,这必须与集群的http2功能选项一起设置。这两个选项一起使用ALPN,来告诉Envoy服务器,期望支持HTTP/2的ALPN。然后http2功能将导致新的连接使用HTTP/2。
  • cert_chain_file

    (optional, string) 用于连接使用的证书文件链。这用于上游主机提供给客户端的TLS证书。

  • private_key_file

    (optional, string) 与证书文件链相对应的私钥。

  • ca_cert_file

    (optional, string) 包含证书颁发机构的证书文件,用于验证服务器提供的证书。

  • verify_certificate_hash

    (optional, string) 如果指定,Envoy将验证(pin)所服务器提供的证书哈希。

  • verify_subject_alt_name

    (optional, array) 可选的标题替代名称列表。如果指定,Envoy将验证服务器证书的alt标题名称是否与指定值之一匹配。

  • cipher_suites

    (optional, string) 如果指定,连接将支持指定的加密套件列表。如果未指定,则默认列表:

  1. [ECDHE-ECDSA-AES128-GCM-SHA256|ECDHE-ECDSA-CHACHA20-POLY1305]
  2. [ECDHE-RSA-AES128-GCM-SHA256|ECDHE-RSA-CHACHA20-POLY1305]
  3. ECDHE-ECDSA-AES128-SHA256
  4. ECDHE-RSA-AES128-SHA256
  5. ECDHE-ECDSA-AES128-SHA
  6. ECDHE-RSA-AES128-SHA
  7. AES128-GCM-SHA256
  8. AES128-SHA256
  9. AES128-SHA
  10. ECDHE-ECDSA-AES256-GCM-SHA384
  11. ECDHE-RSA-AES256-GCM-SHA384
  12. ECDHE-ECDSA-AES256-SHA384
  13. ECDHE-RSA-AES256-SHA384
  14. ECDHE-ECDSA-AES256-SHA
  15. ECDHE-RSA-AES256-SHA
  16. AES256-GCM-SHA384
  17. AES256-SHA256
  18. AES256-SHA

将会被使用;

  • ecdh_curves

    (optional, string) 如果指定,TLS连接将只支持指定的ECDH曲线算法。如果未指定,将使用默认(X25519,P-256)曲线算法。

  • sni

    (optional, string) 如果指定,则字符串将在TLS握手期间作为SNI呈现。

返回