Подключение Azure Sphere через прокси-сервер

Вы можете настроить устройство Azure Sphere для подключения к Интернету через прокси-сервер с помощью библиотек приложений пакета SDK Azure Sphere (Applibs) или CLI. Если эта функция включена, весь трафик устройства проходит через прокси-сервер. Устройство можно настроить для идентификации используемого прокси-сервера, типа сервера и метода проверки подлинности.

В настоящее время поддерживаются только прокси-серверы HTTP.

Методы проверки подлинности

Поддерживаются следующие методы проверки подлинности:

  • Базовый. Запрашивает у пользователя имя пользователя и пароль для проверки подлинности подключения.
  • Анонимный. Позволяет пользователям подключаться анонимно, чтобы имя пользователя и пароль не требовались при использовании подключения к прокси-серверу.

Конфигурация прокси-сервера с помощью ИНТЕРФЕЙСА командной строки

Следующие команды управляют использованием прокси-адреса для сетевого подключения. Дополнительные сведения см. в статье az sphere device network proxy.

Операции Описание
применение прокси-сервера Настраивает сетевой прокси-сервер на подключенном устройстве.
удаление прокси-сервера Удаляет прокси-подключение на подключенном устройстве.
прокси-шоу Отображает прокси-подключение на подключенном устройстве.

Настройка прокси-сервера с помощью Applibs

Чтобы настроить конфигурацию прокси-сервера, приложение должно использовать СЕТЕВОЙ API Applibs, который включает поддержку получения и настройки свойств конфигурации прокси-сервера.

Включите этот файл заголовка в приложение:

#include <applibs/networking.h>

Если вы используете cURL в приложении и подключаетесь к Интернету через прокси-сервер, необходимо также включить следующий файл заголовка:

#include <applibs/networking_curl.h>

Дополнительные сведения об использовании cURL см. в разделе Подключение к веб-службам.

Поддерживаемые applibs для конфигурации прокси-сервера

Поддерживаются следующие AppLibs:

Требования к манифесту приложения

Манифест приложения должен содержать возможность NetworkConfig или ReadNetworkProxyConfig. Эта возможность определяет степень доступа приложения к параметрам прокси-сервера.

Функция NetworkConfig предоставляет полный доступ ко всем параметрам конфигурации сети. Это позволяет приложению настраивать, извлекать и включать или отключать параметры прокси-сервера.

"Capabilities": {
  "NetworkConfig": true
}

Возможность ReadNetworkProxyConfig позволяет приложению только получать параметры прокси-сервера. Эта возможность используется для приложений, которым запрещен общий доступ к параметрам сети, но требуются сведения о конфигурации прокси-сервера.

"Capabilities": {
  "ReadNetworkProxyConfig": true
}

Подключение к Центр Интернета вещей Azure с помощью MQTT

Приложения Интернета вещей Azure используют MQTT на основе TCP/IP для подключения к Центру Интернета вещей Azure. Необходимо настроить приложение для использования MQTT через WebSocket, чтобы трафик правильно перенаправлялся через прокси-сервер.

Вы можете настроить приложение для взаимодействия с Центр Интернета вещей напрямую или использовать службы подготовки устройств Azure (DPS):

Дополнительные сведения о добавлении поддержки прокси-сервера см. в разделе READMEAddWebProxy.md.

Образцы

Фрагменты кода прокси-сервера демонстрируют следующее:

Примеры HTTPS демонстрируют использование API HTTPS_Curl_Easy и HTTPS_Curl_Multi для получения содержимого по протоколу HTTPS. По умолчанию они настраивают дескриптор cURL для использования прокси-сервера.

Пример AzureIoT содержит инструкции и код для добавления поддержки веб-прокси в пример.