-
Notifications
You must be signed in to change notification settings - Fork 57
Description
Describe the bug
#396 added general support for SSO login in cht-android by allowing URLs containing the proper redirect_uri
query param to be opened in the root webview for the app.
Unfortunately, this does not work when using Google as the OIDC Provider (or as a proxied authentication server as is the case when Microsoft Entra is configured to allow guest login via Google accounts). Google refuses to allow authentication for its accounts in Android WebView at all. (Citing security concerns...)
To Reproduce
Steps to reproduce the behavior:
- Configure Google as your OIDC provider on your CHT instance:
- In your cht-android app, select the "Login with SSO" button from the login screen
- See the error page:
Note that if you are using Google as a proxied authentication server (behind a different OIDC Provider), you might experience different behavior. When using Google to authenticate for Microsoft Entra (when Microsoft Entra was configured as the OIDC Provider for the CHT), the Microsoft login page seemed to anticipate that the Google authentication was not allowed in the webview page and instead redirected the user into a devices auth flow. Unfortunately, this flow (on top of being a generally bad user experience) did not successfully complete the login in the cht-android app.
Expected behavior
SSO login with a Google OIDC provider (or proxied Google authentication) should work in cht-android (without using the device auth flow).
Environment
- Instance:
4.20.0
+ - Android Version:
14
- App Version:
1.5.2