Connecter Azure Sphere via un serveur proxy
Important
Il s’agit de la documentation Azure Sphere (héritée). Azure Sphere (hérité) prend sa retraite le 27 septembre 2027 et les utilisateurs doivent migrer vers Azure Sphere (intégré) pour l’instant. Utilisez le sélecteur de version situé au-dessus du TOC pour afficher la documentation Azure Sphere (intégrée).
Vous pouvez configurer un appareil Azure Sphere pour vous connecter à Internet par le biais d’un serveur proxy à l’aide des bibliothèques d’applications du SDK Azure Sphere (Applibs) ou de l’interface CLI. Lorsque cette fonctionnalité est activée, tout le trafic de l’appareil transite par le proxy. L’appareil peut être configuré pour identifier le serveur proxy à utiliser, le type de serveur et la méthode d’authentification.
Seuls les proxys HTTP sont actuellement pris en charge.
Méthodes d’authentification
Les méthodes d’authentification suivantes sont prises en charge :
- De base : invite l’utilisateur à entrer un nom d’utilisateur et un mot de passe pour authentifier la connexion.
- Anonyme : permet aux utilisateurs de se connecter anonymement afin que le nom d’utilisateur et le mot de passe ne soient pas requis lors de l’utilisation de la connexion du serveur proxy.
Configuration du proxy à l’aide de l’interface CLI
Les commandes suivantes gèrent l’utilisation de l’adresse proxy pour la connexion réseau. Pour plus d’informations, consultez azsphere device network proxy.
Operation | Description |
---|---|
proxy apply | Configure le proxy réseau sur l’appareil attaché. |
suppression de proxy | Supprime la connexion proxy sur l’appareil attaché. |
proxy show | Affiche la connexion proxy sur l’appareil attaché. |
Configuration du proxy à l’aide des bibliothèques d’applications
Pour configurer la configuration du proxy, votre application doit utiliser l’API réseau Applibs, qui inclut la prise en charge de l’obtention et de la définition des propriétés de configuration du proxy.
Incluez ce fichier d’en-tête dans votre application :
#include <applibs/networking.h>
Si vous utilisez cURL dans votre application et que vous vous connectez à Internet via un serveur proxy, vous devez également inclure ce fichier d’en-tête :
#include <applibs/networking_curl.h>
Pour plus d’informations sur l’utilisation de cURL, consultez Se connecter aux services web.
Bibliothèques d’applications prises en charge pour la configuration du proxy
Les AppLibs suivants sont pris en charge :
- Networking_Curl_SetDefaultProxy
- Networking_Proxy_Create
- Networking_Proxy_Destroy
- Networking_Proxy_Apply
- Networking_Proxy_Get
- Networking_Proxy_SetProxyOptions
- Networking_Proxy_SetProxyAddress
- Networking_Proxy_SetAnonymousAuthentication
- Networking_Proxy_SetBasicAuthentication
- Networking_Proxy_SetProxyNoProxyAddresses
- Networking_Proxy_GetProxyOptions
- Networking_Proxy_GetProxyAddress
- Networking_Proxy_GetProxyPort
- Networking_Proxy_GetProxyType
- Networking_Proxy_GetProxyUsername
- Networking_Proxy_GetProxyPassword
- Networking_Proxy_GetAuthType
- Networking_Proxy_GetNoProxyAddresses
- Networking_Proxy_GetProxyStatus
- Networking_ProxyConfig
- Networking_ProxyOptions
- Networking_ProxyType
- Networking_ProxyAuthType
- Networking_ProxyStatus
Exigences du manifeste d’application
Le manifeste de l’application doit inclure la fonctionnalité NetworkConfig ou ReadNetworkProxyConfig. La fonctionnalité détermine le degré d’accès de votre application aux paramètres de proxy.
La fonctionnalité NetworkConfig accorde un accès total à tous les paramètres de configuration réseau. Elle permet à votre application de configurer, récupérer et activer ou désactiver les paramètres de proxy.
"Capabilities": {
"NetworkConfig": true
}
La fonctionnalité ReadNetworkProxyConfig permet uniquement à votre application de récupérer les paramètres du proxy. Cette fonctionnalité est utilisée pour les applications qui ont refusé l’accès général aux paramètres réseau, mais nécessitent des informations de configuration proxy.
"Capabilities": {
"ReadNetworkProxyConfig": true
}
Utiliser MQTT pour se connecter à Azure IoT Hub
Les applications Azure IoT utilisent MQTT basé sur TCP/IP pour se connecter à un hub Azure IoT. Vous devez configurer votre application pour utiliser MQTT sur WebSockets afin que le trafic soit correctement redirigé via le proxy.
Vous pouvez configurer votre application pour communiquer directement avec un hub IoT ou utiliser les services Azure Device Provisioning (DPS) :
Pour configurer votre application pour communiquer directement avec un hub IoT, utilisez l’exemple de code de proxy dans l’exemple READMEStartWithIoTHub.md et modifiez-le comme décrit directement dans Se connecter à AzureIoT Hub.
Pour configurer votre application afin d’utiliser Azure DPS, utilisez l’exemple de code proxy dans l’exemple READMEAddDPS ou READMEStartWithIoTCentral, puis modifiez-le comme décrit dans Connect via le service d’approvisionnement d’appareils Azure IoT Hub.
Pour plus d’informations sur l’ajout de la prise en charge du proxy, consultez READMEAddWebProxy.md.
Exemples
Les extraits de code proxy illustrent les éléments suivants :
- L’extrait de code Configurer les paramètres du proxy montre comment configurer les paramètres de proxy sur un appareil Azure Sphere.
- L’extrait de code Obtenir les paramètres du proxy montre comment récupérer les paramètres de proxy sur un appareil Azure Sphere.
- L’extrait de code Enable/Disable Configure Proxy montre comment activer/désactiver un proxy déjà configuré sur un appareil Azure Sphere.
Les exemples HTTPS illustrent l’utilisation des API HTTPS_Curl_Easy et HTTPS_Curl_Multi pour extraire du contenu via HTTPS. Par défaut, ils configurent le handle cURL pour utiliser un proxy.
L’exemple AzureIoT contient des instructions et du code pour ajouter la prise en charge du proxy web à l’exemple.