c++ - 我的 ServerContext::auth_context 始终为 NULL
问题描述
我是 GRPC 的新手。我正在编写 C++ 代码来测试身份验证。我正在使用双向 TLS grpc 连接。我创建了所有必要的证书(根、服务器和客户端)并在服务器和客户端代码中使用了这些证书。
我也设置了这些变量
force_client_auth = true; client_certificate_request = grpc_ssl_client_certificate_request_type::GRPC_SSL_REQUEST_AND_REQUIRE_CLIENT_CERTIFICATE_AND_VERIFY;
代码本身运行良好。我能够从客户端代码成功拨打电话(使用正确的证书)
当客户端进行服务器调用时,在服务器代码中,我试图获取客户端密钥中定义的公用名 (CN)。我在网上看到我可以使用 grpc::ServerContext::auth_context() 方法来获取客户端密钥的 CN 信息。
但是,在我的测试中, auth_context() 始终为空。
关于为什么我的 auth_context() 为空的任何想法?如果是这样,我该如何解决?
非常感谢您的帮助!
维杰
解决方案
推荐阅读
- nunit - NUnit.Engine.NUnitEngineUnloadException :遇到多个异常。检索 AggregatedExceptions 属性以获取更多信息
- android - 崩溃时的 Crashlytics customkey 报告
- json - 如何在不排序的情况下解析 QJson 文件?
- python - 带有unicode标志的python正则表达式奇怪的长度问题
- java - 如何使用 for 循环保存在数组中并检查 Java 中的现有值
- android - 单个活动多个片段导航问题
- sublimetext3 - 崇高的文字:如何使垂直引导线稍微粗一点
- c# - System.Diagnostics.Process ExitCode 1
- regex - Nginx 位置匹配正则表达式的特殊字符和编码的 url 字符
- python - pyInstaller 不会在自己的包路径中导入模块