1.4.1【必须】网络通信采用TLS方式

    • 明文传输的通信协议目前已被验证存在较大安全风险,被中间人劫持后可能导致许多安全风险,因此必须采用至少TLS的安全通信方式保证通信安全,例如gRPC/Websocket都使用TLS1.3。

    1.4.2【推荐】TLS启用证书验证

    • TLS证书应当是有效的、未过期的,且配置正确的域名,生产环境的服务端应启用证书验证。
    1. import (
    2. "crypto/tls"
    3. "net/http"
    4. )
    5. tr := &http.Transport{
    6. TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
    7. client := &http.Client{Transport: tr}
    8. res, _ := client.Do(authReq)
    9. return res
    10. }
    11. // good
    12. import (
    13. )
    14. func doAuthReq(authReq *http.Request) *http.Response {
    15. tr := &http.Transport{
    16. TLSClientConfig: &tls.Config{InsecureSkipVerify: false},
    17. }
    18. client := &http.Client{Transport: tr}
    19. res, _ := client.Do(authReq)