Unterstützung der FORMS-Authentifizierung für ADFS in Android-Anwendungen
Szenario mit ADFS-Authentifizierung
Kürzlich bin ich auf dieses Szenario gestoßen, in dem eine Anwendung ADFS zur Authentifizierung verwendet hat. Der Administrator hat die integrierte Windows-Authentifizierung konfiguriert sowie Formularauthentifizierung als Authentifizierungsrichtlinien. Wenn der Benutzer jedoch auf die Android-Anwendung zugreift, schlägt die passive Authentifizierung über den Android-Webview-Browser fehl, da er zur integrierten Windows-Authentifizierungs-URL statt zur Formularauthentifizierung umleitet. Da der Webview-Browser WIA nicht unterstützt.
Eine Lösung zum Konfigurieren von ADFS
Die meisten Organisationen verwenden bei Verwendung von Active Directory Federation Services (ADFS) die integrierte Windows-Authentifizierung für ihr Intranet. Dies hilft Benutzern in ihren Netzwerken, Anmeldeinformationen nur einmal einzugeben. Die meisten browserbasierten Anwendungen bieten Benutzern ein nahtloses Erlebnis, ohne dass sie zur erneuten Eingabe von Anmeldeinformationen aufgefordert werden.
In diesem Szenario versuchte ein Benutzer jedoch, auf eine Android-Anwendung zuzugreifen, die ebenfalls eine passive Authentifizierung mit einem Android-Webview-Browser erfordert. Aber der Android-Webview-Browser unterstützt WIA nicht, was zu einem Authentifizierungsfehler führt.
In einem solchen Szenario sollte ADFS auf die FORMS-Authentifizierung zurückgreifen und den Benutzer zum Anmeldeformular umleiten. ADFS für Windows Server bietet einen einfachen Konfigurationstrick für die Authentifizierung, um auf FORMS zurückzugreifen.
WIASupportedUserAgentString
Eigenschaft vonSet-ADFSProperties
BefehlWindowsIntegratedFallbackEnabled
Eigenschaft vonSet-AdfsGlobalAuthenticationPolicy
Befehl
Set-AdfsGlobalAuthenticationPolicy -WindowsIntegratedFallbackEnabled $true
WIASupportedUserAgentString
gibt den Benutzeragenten, die WIA unterstützen. Wenn die Komponente der Benutzeragentenzeichenfolge mit keiner der Komponenten der Benutzeragentenzeichenfolgen übereinstimmt, die in WIASupportedUserAgentString
konfiguriert sind -Eigenschaft greift ADFS auf die Bereitstellung einer formularbasierten Authentifizierung zurück, vorausgesetzt WindowsIntegratedFallbackEnabled
Flag ist auf true gesetzt.
Get-AdfsProperties | Select -ExpandProperty WIASupportedUserAgents MSIE 6.0 MSIE 7.0; Windows NT MSIE 8.0 MSIE 9.0 MSIE 10.0; Windows NT 6 MSIE 11.0; Windows NT 10 Windows NT 6.3; Trident/7.0 Windows NT 6.3; Win64; x64; Trident/7.0 Windows NT 6.3; WOW64; Trident/7.0 Windows NT 6.2; Trident/7.0 Windows NT 6.2; Win64; x64; Trident/7.0 Windows NT 6.2; WOW64; Trident/7.0 Windows NT 6.1; Trident/7.0 Windows NT 6.1; Win64; x64; Trident/7.0 Windows NT 6.1; WOW64; Trident/7.0 Windows NT 10.0; Trident/7.0 Windows NT 10.0; Win64; x64; Trident/7.0 Windows NT 10.0; WOW64; Trident/7.0 MSIPC
In diesem speziellen Fall haben wir Safari
entfernt und Chrome
aus der Liste der User-Agent-Strings, dann funktionierte die Authentifizierung für die Anwendung durch passive Authentifizierung.
Schlussfolgerung
Abschließend habe ich in diesem Beitrag gezeigt, wie man die FORMS-Authentifizierung mit ADFS für eine Android-Anwendung verwendet. Wenn Ihnen dieser Beitrag gefallen hat, abonnieren Sie meinen Blog.
Referenzen
- Formularbasierte Authentifizierung konfigurieren
- Formularbasierte Authentifizierung