代码之家  ›  专栏  ›  技术社区  ›  maged

gRPC python客户端身份验证示例

  •  0
  • maged  · 技术社区  · 7 年前

    docs

    是否有其他标志 grpc.secure_channel() 需要用的吗?

    1 回复  |  直到 7 年前
        1
  •  6
  •   maged    7 年前

    server_credentials = grpc.ssl_server_credentials(
        ((private_key, cert_chain),), root_cert, require_client_auth=True)
    server.add_secure_port('%s:%d' % (ip, port), server_credentials)
    

    root_cert 是验证客户端证书的根CA。 private_key cert_chain 将是服务器用来由客户端验证的证书。

    客户方:

    creds = grpc.ssl_channel_credentials(
            certificate_chain=cert_chain, private_key=cert_key, root_certificates=root_ca)
    channel = grpc.secure_channel('%s:%d' % (hostname, port), creds)        
    

    在哪里? root_ca 验证服务器证书链的根CA,以及 证书链 cert_key 用于对客户端进行身份验证。

    推荐文章