我可以使用C#全.NET框架客户端与C# .NET核心客户端的安全通道。?
你能给我举几个例子吗?如果能做到或做不到,我就找不到任何地方。
详细信息:我使用Grpc中的.NET框架客户端作为参考,使用Grpc中的.NET核心客户机作为参考,并使用Grpc中的Grpc作为引用。我建立了一个不安全的沟通渠道
new Channel("127.0.0.1", 5000, ChannelCredentials.Insecure)
而非Https端口在5000打开在ASP.NET核心服务器中。
当我试图连接到
var channel = new Channel("127.0.0.1", 5001, new SslCredentials());
到ASP.NET Core ServerI中的Https端口5000
如何使用安全通道进行通信。我想使用相同的pfx +密码组合。
发布于 2020-07-22 21:50:07
看看我在这里的问题和答案。我创建了一个可能有用的基本示例:https://github.com/angelagyang/GRPCProtobufExample
您可以通过创建要传递到KeyCertificatePair的SslCredentials来配置客户端证书。您需要三个PEM编码的字符串:
下面是一个示例设置:
var keyCertPair = new KeyCertificatePair(clientsslcert.pem, privatekey.pem);
var channelCreds = new SslCredentials(serversslcert.pem, keyCertPair);出于测试目的,我找到了这些测试PEM很有帮助。我使用OpenSSL将PFX转换为PEM格式。此外,这个职位更多地讨论了不同的PEM字符串,以及客户端需要显式信任服务器的原因。
发布于 2020-07-22 15:45:50
我和这个答案相处得很好。就像这次行动一样,我还没有让它远程工作。请记住,IIS还不支持gRPC,所以您也需要找到和替代托管方法。
https://stackoverflow.com/questions/63034515
复制相似问题