Azure Sphere verbinden via een proxyserver
Belangrijk
Dit is de Documentatie voor Azure Sphere (verouderd). Azure Sphere (verouderd) wordt op 27 september 2027 buiten gebruik gesteld en gebruikers moeten tegen deze tijd migreren naar Azure Sphere (geïntegreerd). Gebruik de versiekiezer boven de inhoudsweergave om de Documentatie van Azure Sphere (geïntegreerd) weer te geven.
U kunt een Azure Sphere-apparaat configureren om via een proxyserver verbinding te maken met internet met behulp van de Azure Sphere SDK-toepassingsbibliotheken (Applibs) of de CLI. Wanneer deze functie is ingeschakeld, stroomt al het apparaatverkeer via de proxy. Het apparaat kan worden geconfigureerd om de proxyserver te identificeren die moet worden gebruikt, het type server en de verificatiemethode.
Momenteel worden alleen HTTP-proxy's ondersteund.
Verificatiemethoden
De volgende verificatiemethoden worden ondersteund:
- Basis: vraagt de gebruiker om een gebruikersnaam en wachtwoord om de verbinding te verifiëren.
- Anoniem: staat gebruikers toe om anoniem verbinding te maken, zodat gebruikersnaam en wachtwoord niet vereist zijn bij het gebruik van de proxyserververbinding.
Proxyconfiguratie met behulp van de CLI
De volgende opdrachten beheren het gebruik van proxyadressen voor netwerkverbinding. Zie azsphere device network proxy voor meer informatie.
Operation | Omschrijving |
---|---|
proxy toepassen | Hiermee configureert u de netwerkproxy op het gekoppelde apparaat. |
proxy verwijderen | Hiermee verwijdert u de proxyverbinding op het gekoppelde apparaat. |
proxy weergeven | Geeft de proxyverbinding weer op het gekoppelde apparaat. |
Proxyconfiguratie met Behulp van Applibs
Als u proxyconfiguratie wilt instellen, moet uw toepassing gebruikmaken van de Applibs-netwerk-API, waaronder ondersteuning voor het ophalen en instellen van proxyconfiguratie-eigenschappen.
Neem dit headerbestand op in uw toepassing:
#include <applibs/networking.h>
Als u cURL gebruikt in uw toepassing en verbinding maakt met internet via een proxyserver, moet u ook dit headerbestand opnemen:
#include <applibs/networking_curl.h>
Zie Verbinding maken met webservices voor meer informatie over het gebruik van cURL.
Ondersteunde applibs voor proxyconfiguratie
De volgende AppLibs worden ondersteund:
- 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
Toepassingsmanifestvereisten
Het toepassingsmanifest moet de NetworkConfig- of readNetworkProxyConfig-mogelijkheid bevatten. De mogelijkheid bepaalt de mate van toegang die uw toepassing heeft tot de proxy-instellingen.
De NetworkConfig-functie verleent volledige toegang tot alle netwerkconfiguratie-instellingen. Hiermee kan uw toepassing proxy-instellingen configureren, ophalen en uitschakelen.
"Capabilities": {
"NetworkConfig": true
}
Met de functie ReadNetworkProxyConfig kan uw toepassing alleen proxy-instellingen ophalen. Deze mogelijkheid wordt gebruikt voor toepassingen die algemene toegang tot netwerkinstellingen worden geweigerd, maar waarvoor proxyconfiguratiegegevens zijn vereist.
"Capabilities": {
"ReadNetworkProxyConfig": true
}
MQTT gebruiken om verbinding te maken met Azure IoT Hub
Azure IoT-toepassingen maken gebruik van op TCP/IP gebaseerde MQTT om verbinding te maken met een Azure IoT-hub. U moet uw toepassing configureren voor het gebruik van MQTT via WebSockets, zodat verkeer correct wordt omgeleid via de proxy.
U kunt uw toepassing configureren om rechtstreeks met een IoT Hub te communiceren of de Azure Device Provisioning Services (DPS) te gebruiken:
Als u uw toepassing wilt configureren om rechtstreeks met een IoT-hub te communiceren, gebruikt u de proxyvoorbeeldcode in het READMEStartWithIoTHub.md voorbeeld en wijzigt u deze, zoals beschreven in Verbinding maken met AzureIoT Hub rechtstreeks.
Als u uw toepassing wilt configureren voor het gebruik van Azure DPS, gebruikt u de voorbeeldcode van de proxy in het voorbeeld READMEAddDPS of READMEStartWithIoTCentral en wijzigt u deze, zoals beschreven in Connect via azure IoT Hub Device Provisioning Service.
Zie READMEAddWebProxy.md voor meer informatie over het toevoegen van proxyondersteuning.
Voorbeelden
De codefragmenten van de proxy demonstreren het volgende:
- Het codefragment Proxyinstellingen configureren laat zien hoe u de proxy-instellingen configureert op een Azure Sphere-apparaat.
- Het codefragment Proxyinstellingen ophalen laat zien hoe u de proxy-instellingen op een Azure Sphere-apparaat ophaalt.
- Het codefragment Geconfigureerde proxy inschakelen/uitschakelen laat zien hoe u een al geconfigureerde proxy op een Azure Sphere-apparaat inschakelt/uitschakelt.
De HTTPS-voorbeelden laten zien hoe u de HTTPS_CURL_EASY- en HTTPS_Curl_Multi API's gebruikt om inhoud op te halen via HTTPS. Standaard configureren ze de cURL-ingang voor het gebruik van een proxy.
Het AzureIoT-voorbeeld bevat instructies en code voor het toevoegen van webproxyondersteuning aan het voorbeeld.