相关疑难解决方法(0)

如何为gRPC启用服务器端SSL?

gRPC的新功能,无法找到有关如何在服务器端启用SSL的任何示例.我使用openssl生成了一个密钥对,但它抱怨私钥无效.

D0608 16:18:31.390303 Grpc.Core.Internal.UnmanagedLibrary Attempting to load native library "...\grpc_csharp_ext.dll"
D0608 16:18:31.424331 Grpc.Core.Internal.NativeExtension gRPC native library loaded successfully.
E0608 16:18:43.307324 0 ..\src\core\lib\tsi\ssl_transport_security.c:644: Invalid private key.
E0608 16:18:43.307824 0 ..\src\core\lib\security\security_connector.c:821: Handshaker factory creation failed with TSI_INVALID_ARGUMENT.
E0608 16:18:43.307824 0 ..\src\core\ext\transport\chttp2\server\secure\server_secure_chttp2.c:188: Unable to create secure server with credentials of type Ssl.
Run Code Online (Sandbox Code Playgroud)

这是我的代码

var keypair = new KeyCertificatePair(
            File.ReadAllText(@"root-ca.pem"),
            File.ReadAllText(@"ssl-private.key"));
SslServerCredentials creds = new SslServerCredentials(new List<KeyCertificatePair>() {keypair});
Server server = new Server
{
    Services = { GrpcTest.BindService(new GrpcTestImpl()) },
    Ports = { new …
Run Code Online (Sandbox Code Playgroud)

c# ssl-certificate grpc

8
推荐指数
2
解决办法
7762
查看次数

c#中grpc的SSL/TSL支持

我尝试使用 SSL/TLS 实现 gRPC,我阅读了有关如何实现 SSL/TLS 的文档,但这不起作用,我在 C# 中找到了一个 stackoverflow 页面TLS support for GRPC关于如何实现 TLS 支持,但是再次这不起作用。

我正在使用 C#,但我有一个 Java 实现,我尝试将 C# 服务与 Java 客户端连接并工作,但是当我尝试将 C# 客户端与 C# 服务器连接时,它不起作用,即使我尝试连接带有 Java 服务器的 C# 客户端,它不起作用。

我正在使用greet protos 和Visual Studio 2015

根据文档,此代码必须工作

首先,我尝试将其用于客户端:

     SslCredentials secureChanel = new SslCredentials(File.ReadAllText("ssl/ca.crt"));
     Channel channel = new Channel("localhost", 50051, secureChanel);
Run Code Online (Sandbox Code Playgroud)

然后我为此更改了代码:

        var rootCert = File.ReadAllText("ssl/ca.crt");
        var keyCertPair = new KeyCertificatePair(
            File.ReadAllText("ssl/server.crt"),
            File.ReadAllText("ssl/server.pem"));

        var clientCredentials = new SslCredentials(rootCert, keyCertPair);

        var options = new List<ChannelOption>
        {
            new ChannelOption(ChannelOptions.SslTargetNameOverride, …
Run Code Online (Sandbox Code Playgroud)

c# ssl grpc

6
推荐指数
1
解决办法
5137
查看次数

标签 统计

c# ×2

grpc ×2

ssl ×1

ssl-certificate ×1