ранее я использовал grpc для .net core 2.x, который теперь известен как C-core grpc, чтобы отличаться от новой версии .net core 3. Мне нравится, как новый grpc может компилировать и генерировать классы-заглушки клиент / сервер из прототипов в VS2019 вместо pf, когда нужно получить инструменты grpc из папки пакетов, вручную скомпилировав их для C # для генерации классов-заглушек клиент / серверзатем импортировать в VS. это чище с новой версией grpc. Однако, используя C-core grpc с основным веб-API asp.net, у меня есть несколько вопросов о новом grpc-dotnet:
в C-core grpc,Сертификаты SSL / TLS используют формат * .pem. Я использовал openSSL для генерации pems открытого / закрытого ключа следующим образом: "openssl req -x509 -newkey rsa: 4096 -keyout private.pem -out public.pem -days 365 -nodes -subj / CN = <имя машины>",Затем на стороне сервера я использую SslServerCredentials для его настройки, а на стороне клиента использую SslCredentials для его настройки. Я видел, как это сделать на стороне клиента для нового grpc-dotnet, который не сильно отличается от старого, но серверная сторона нового grpc-dotnet теперь действительно отличается с помощью конфигурации kestrel. Я не знаю, как это сделать. Может кто-нибудь, пожалуйста, просветите меня об этом? Пример Certifier из github использует файл pfx. Поддерживаются ли файлы pem-ключа в новом grpc?
новый grpc-dptmet ises lestrel сейчас и, похоже, подразумевает, что он использует тот же порт, что и веб-приложение,за исключением того, что трафик http2 будет направляться на него, а http1.1 будет обрабатываться веб-приложением. Теперь можно настроить grpc для использования другого порта вместо того, что используется веб-приложением, а также использовать другой сертификат SSL / TLS (файлы * .pem, как указано выше) вместо того, что настроено в IIS?
был бы признателен, если бы кто-то мог просветить меня по этим вопросам. большое Вам спасибо. :)