Akka-CQRS(10)- gRPC on SSL/TLS 安全连接

  使用gRPC作为云平台和移动前端的连接方式,网络安全应该是必须考虑的一个重点。gRPC是支持ssl/tls安全通讯机制的。用了一个周末来研究具体使用方法,实际上是一个周末的挖坑填坑过程。把这次经历记录下来与各位分享。

gRPC的ssl/tls的原理是在服务端安装安全证书公用certificate和私钥key, 在客户端安装公共证书就可以了,gRPC代码是这样写的:

// Server SslContext sslContext = SslContextBuilder.forServer( new File("/Users/u/Desktop/api.grpc/src/main/resources/my-public-key-cert.pem"), new File("/Users/u/Desktop/api.grpc/src/main/resources/my-private-key.pem")) .build(); server = NettyServerBuilder.forPort(port).sslContext(sslContext) .addService(GreeterGrpc.bindService(new GreeterImpl())).build() .start(); / Client SslContext sslContext = SslContextBuilder.forClient().trustManager(new File( "/Users/u/Desktop/api.grpc/src/main/resources/my-public-key-cert.pem")).build(); channel = NettyChannelBuilder.forAddress(host, port) .sslContext(sslContext) .build(); blockingStub = GreeterGrpc.newBlockingStub(channel);

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpxyjj.html