Проблема в IoT Edge Hub + Azure Stream Analytics

Проблема в IoT Edge Hub + Azure Stream Analytics

Мы пытаемся изучить Azure Stream Analytics в IoT Edge. Мы следуемэтотруководство.

Мы проделали следующие шаги:

  1. Создана одна виртуальная машина Windows.
  2. Создано одно устройство Edge
  3. Создано на модуле Azure Stream Analytics, настроены входные данные, выходные данные и запросы.
  4. Добавлен смоделированный датчик температуры и влажности Датчик из Azure Market Place
  5. Добавлен модуль Azure Stream Analytic
  6. Настройте маршруты, как указано в руководстве, и разверните их на устройстве Edge (виртуальная машина Azure).

Используя команды, я могу увидеть 4 элемента в устройстве (Windows VM). Имитированный датчик отправляет данные, но запрос не запускается, записано в задании ASA. При проверке журналов edgeHub мы обнаружили следующую ошибку:

TLS-рукопожатие не удалось., System.AggregateException: произошла одна или несколько ошибок. (Учетные данные, предоставленные пакету, не распознаны) ---> System.ComponentModel.Win32Exception: Учетные данные, предоставленные пакету, не распознаны в System.Net.SSPIWrapper.AcquireCredentialsHandle(SSPIInterface secModule, String package, CredentialUse intent, SCHANNEL_CRED scc) в System.Net.Security.SslStreamPal.AcquireCredentialsHandle(CredentialUse credUsage, SCHANNEL_CRED secureCredential) в System.Net.Security.SslStreamPal.AcquireCredentialsHandle(X509Certificate certificate, SslProtocols protocols, EncryptionPolicy policy, Boolean isServer) в System.Net.Security.SecureChannel.AcquireServerCredentials(Byte[]& thumbPrint, Byte[] clientHello) в System.Net.Security.SecureChannel.GenerateToken(Byte[] input, Int32 offset, Int32 count, Byte[]& output) в System.Net.Security.SecureChannel.NextMessage(Byte[] input, Int32 offset, Int32 count) в System.Net.Security.SslState.StartSendBlob(Byte[] input, Int32 count, AsyncProtocolRequest asyncRequest) в System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest) в System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest) в System.Net.Security.SslState.PartialFrameCallback(AsyncProtocolRequest asyncRequest) --- Конец трассировки стека из предыдущего места, где было сгенерировано исключение --- в System.Net.Security.SslState.ThrowIfExceptional() в System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult) в System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult result) в System.Net.Security.SslStream.EndAuthenticateAsServer(IAsyncResult asyncResult) в System.Net.Security.SslStream.<>c.b__50_2(IAsyncResult iar) в System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task1 promise, Boolean requireSynchronization) --- Конец трассировки внутреннего стека исключений --- ---> (Внутреннее исключение № 0) System.ComponentModel.Win32Exception (0x8009030D): Учетные данные, предоставленные пакету, не распознаны в System.Net.SSPIWrapper.AcquireCredentialsHandle(SSPIInterface secModule, String package, CredentialUse intent, SCHANNEL_CRED scc) в System.Net.Security.SslStreamPal.AcquireCredentialsHandle(CredentialUse credUsage, SCHANNEL_CRED secureCredential) в System.Net.Security.SslStreamPal.AcquireCredentialsHandle(сертификат X509Certificate, протоколы SslProtocols, политика EncryptionPolicy, логическое значение isServer) в System.Net.Security.SecureChannel.AcquireServerCredentials(Byte[]& thumbPrint, Byte[] clientHello) в System.Net.Security.SecureChannel.GenerateToken(Byte[] input, Int32 offset, Int32 count, Byte[]& output) в System.Net.Security.SecureChannel.NextMessage(Byte[] input, Int32 offset, Int32 count) в System.Net.Security.SslState.StartSendBlob(Byte[] input, Int32 count,AsyncProtocolRequest asyncRequest) в System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest) в System.Net.Security.SslState.StartReadFrame(Byte[] buffer, Int32 readBytes, AsyncProtocolRequest asyncRequest) в System.Net.Security.SslState.PartialFrameCallback(AsyncProtocolRequest asyncRequest) --- Конец трассировки стека из предыдущего местоположения, где было выдано исключение --- в System.Net.Security.SslState.ThrowIfExceptional() в System.Net.Security.SslState.InternalEndProcessAuthentication(LazyAsyncResult lazyResult) в System.Net.Security.SslState.EndProcessAuthentication(IAsyncResult result) в System.Net.Security.SslStream.EndAuthenticateAsServer(IAsyncResult asyncResult) в System.Net.Security.SslStream.<>c.b__50_2(IAsyncResult iar) в System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action1 endAction, Task1 promise, Boolean requireSynchronization)<--- , 1b20a2d4

Мы создали сертификаты OpenSSL на виртуальной машине и настроили их в config.yaml, после чего при проверке журналов мобильного устройства ASA или модуля Simulated Sensor возникла ошибка.

Связанный контент