我正在运行一个相当基本的 Azure IoT C# 模块。最初,一切正常。但是,当我为边缘集线器设置 X.509 证书时,我遇到了如下模块身份验证错误。似乎对使用 AMQP/MQTT 协议的 Tcp_only 或 Websocket_only 选项有一定的依赖性(后者不会引发异常),但这在模块之间并不一致。
有问题的代码行如下..
// Open a connection to the Edge runtime
ioTHubModuleClient = await ModuleClient.CreateFromEnvironmentAsync(settings);
await ioTHubModuleClient.OpenAsync();
错误消息如下。本质上,等待超时是因为身份验证未完成。据我所知,身份验证是直接从 iot edge 运行时派生的,所以不确定它为什么专门尝试进行身份验证或出错...
未处理的异常:System.AggregateException:发生一个或多个错误。(远程证书根据验证程序无效。) ---> System.Security.Authentication.AuthenticationException:远程证书根据验证程序无效。在 Microsoft.Azure.Devices.Client.InternalClient.<>c.b__62_2(Task t) 在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) 在 System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot) --- 从先前引发异常的位置结束堆栈跟踪 --- 在 SampleModule.Program 的 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 的 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()。 d__10。