OkHttp + Azure File Share schlägt fehl, wenn Microsoft Defender VPN auf Android aktiv istAndroid

Forum für diejenigen, die für Android programmieren
Anonymous
 OkHttp + Azure File Share schlägt fehl, wenn Microsoft Defender VPN auf Android aktiv ist

Post by Anonymous »

Wir erstellen eine Android-App, die Azure Storage (Azure File Share) über das Azure Java/Android SDK verwendet.

Unsere HTTP-Ebene verwendet einen benutzerdefinierten OkHttpClient, der an OkHttpAsyncHttpClientBuilder übergeben wird:

Code: Select all

OkHttpClient okHttpClient =
new OkHttpClient.Builder()
.proxy(Proxy.NO_PROXY)              // disable proxy
.proxySelector(noProxySelector)     // avoid system proxy lookup
.proxyAuthenticator(Authenticator.NONE)
.build();

HttpClient azureHttpClient =
new OkHttpAsyncHttpClientBuilder(okHttpClient).build();
Dieses Setup funktioniert perfekt auf Geräten ohne aktiviertes Microsoft Defender VPN.
Aber wenn das Microsoft Defender VPN (Microsoft Tunnel) aktiv ist, wird die zweite Zeile angezeigt

Code: Select all

new OkHttpAsyncHttpClientBuilder(okHttpClient).build()
schlägt mit der folgenden Ausnahme fehl:

Code: Select all

java.lang.IllegalArgumentException: port out of range:-1
at java.net.InetSocketAddress.checkPort(InetSocketAddress.java:154)
at java.net.InetSocketAddress.createUnresolved(InetSocketAddress.java:279)
at com.azure.core.http.ProxyOptions.createOptions(ProxyOptions.java:391)
at com.azure.core.http.ProxyOptions.attemptToLoadJavaProxy(ProxyOptions.java:369)
at com.azure.core.http.ProxyOptions.attemptToLoadProxy(ProxyOptions.java:278)
at com.azure.core.http.ProxyOptions.fromConfiguration(ProxyOptions.java:247)
at com.azure.core.http.okhttp.OkHttpAsyncHttpClientBuilder.build(OkHttpAsyncHttpClientBuilder.java:389)
Einige Anmerkungen/Beobachtungen
  • Neben dem Azure Storage kommuniziert unsere App nur mit einem HTTP-Webserver. Dieser Webserver befindet sich im Intranet unseres Kunden.
  • Unser Kunde verwaltet das Microsoft Defender VPN und die gesamte Intune MDM-Umgebung. Wir haben keine Kontrolle und keine Einblicke.
  • MS Defender VPN aktiv: Kommunikation zum Webserver funktioniert und zu Azure Storage schlägt fehl
  • MS Defender VPN inaktiv: Kommunikation zum Webserver schlägt fehl und zu Azure Storage funktioniert
  • Laut unserem Kunden sollte die Kommunikation zu Azure Storage funktionieren, da Außer dem Datenverkehr zum Intranet-Webserver wird alles andere an das Internet weitergeleitet.
Was unserer Meinung nach passieren muss:

Um den Azure File Share-Datenverkehr zuzulassen, muss das Microsoft Defender VPN mit Split-Tunneling konfiguriert werden, sodass alle öffentlichen Azure Storage-IPs vom VPN-Tunnel ausgeschlossen werden.
Microsoft Tunnel (Defender VPN) unterstützt IP-basiertes Split-Tunneling, nicht FQDN-basiert, daher reicht der Azure Storage vom offiziellen Microsoft „ServiceTags_Public“. JSON muss hinzugefügt werden.
Hat sich jemand mit Microsoft Defender VPN / Microsoft Tunnel + Android + OkHttp befasst und Split-Tunneling speziell für Azure Storage konfiguriert?
Ich suche nach Ratschlägen, warum dies fehlschlägt, oder nach einer alternativen Konfiguration, damit OkHttp funktioniert.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post