-
Notifications
You must be signed in to change notification settings - Fork 27
Description
Basic information:
I am trying out the sample from this link (https://github.com/Azure-Samples/ms-identity-android-java/)
to integrate with Microsoft identity platform
The sample app is working fine with the default configuration.
I also followed this tutorial (https://docs.microsoft.com/en-us/azure/active-directory/develop/tutorial-v2-shared-device-mode)
to enable shared-device mode using the Authenticator app.
This also working fine.
The problem occurred when I replace the client Id and other configurations in the config file using
the App registration from our Azure Active Directory
Please find more details in the repro steps below
Minimal steps to reproduce
-
Download the sample from this link (https://github.com/Azure-Samples/ms-identity-android-java/)
-
Set up the Authenticator App using this tutorial (https://docs.microsoft.com/en-us/azure/active-directory/develop/tutorial-v2-shared-device-mode)
-
Register an app in the azure active directory and add an android platform in the authentication section
-
Generate a config file by providing package name and signature hash
-
Then open the sample app and open the auth_config_single_account.json file and replace content with the file generated from the App registration in Azure Active directory
-
Open AndroidManifest.xml file and change the data path value in BrowserTabActivity (Line No. 35) with the generated signature hash
-
Run the app
-
On opening the app, it is showing the following exception.
com.microsoft.identity.client.exception.MsalClientException: The redirect URI in the configuration file doesn't match with the one generated with package name and signature hash. Please verify the uri in the config file and your app registration in Azure portal.
I have found a workaround for removing this error as follows. But this workaround doesn’t make the application to run in Shared-Device mode and the app is working in regular mode only even though the “mSingleAccountApp.isSharedDevice()“ returns ‘true’
Workaround steps
- Add a extra character like typo in the redirect uri in the config file as shown below and also include this redirect uri in the app registration in the azure active directory
ORIGINAL
"redirect_uri" : "msauth://com.azuresamples.msalandroidapp/ga0RGNYHvNM5d0SLGQfpQWAPGJ8%3D"
WORKAROUND
"redirect_uri" : "msauth://com.azuresamples.msalandroidappz/ga0RGNYHvNM5d0SLGQfpQWAPGJ8%3D"
- Also change the same in the AndroidManifest.xml (Line No. 34)
ORIGINAL
android:host="com.azuresamples.msalandroidapp"
WORKAROUND
android:host="com.azuresamples.msalandroidappz"
- After these changes, the app is working in regular mode but not working in Shared-Device mode
Please help me resolve this issue.
Device Details
Device : Redmi 4A
Android version: 7.1.2
@rpdome For traceability, mentioning the microsoft support ticket number 120120326004885
Mention any other details that might be useful
Thanks! We'll be in touch soon.