Skip to content

Commit fcbc56d

Browse files
committed
improve readability
1 parent 50ec53c commit fcbc56d

1 file changed

Lines changed: 11 additions & 10 deletions

File tree

support/entra/entra-id/app-integration/repeat-login prompts-in-msal-ios-app.md

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,35 +13,36 @@ This article provides guidance for troubleshooting repeated login prompts in an
1313

1414
## Symptoms
1515

16-
You implements mobile authentication in your iOS app using the Microsoft Authentication Library (MSAL) SDK, following the [official tutorial](/azure/active-directory/develop/tutorial-v2-ios). The user is unexpectedly prompted to log in multiple times after the initial login.
16+
You integrate mobile authentication in your iOS app by using the Microsoft Authentication Library (MSAL) SDK. This is done by following the [official tutorial](/azure/active-directory/develop/tutorial-v2-ios). The user is unexpectedly prompted to log in multiple times after the initial login.
1717

1818
## Cause
1919

20-
This MSAL SDK library facilitates authentication by renewing tokens automatically, enabling single sign-on (SSO) between other apps on the device, and managing user accounts. For SSO to function correctly, tokens need to be shared between apps, which requires a token cache or a broker application like Microsoft Authenticator for iOS.
20+
This issue is typically caused by web browser configurations that do not allow cookie sharing.
2121

22-
This issue is often caused by web browser configurations that do not allow cookie sharing. Interactive authentication in MSAL requires a web browser. On iOS, MSAL uses the system web browser by default for interactive authentication. This default setup supports SSO state sharing between applications and web apps.
22+
The tutorial uses the MSAL to implement authentication. MSAL SDK library facilitates authentication by renewing tokens automatically. It also enables single sign-on (SSO) between other apps on the device and manages user accounts.
2323

24-
However, if you customize the browser configuration for authentication, such as redirecting to one of the following options, cookie sharing might not be enabled:
24+
For SSO to function correctly, tokens must be shared between apps. This requires a token cache or a broker application, such as Microsoft Authenticator for iOS. Interactive authentication in MSAL requires a web browser. On iOS, MSAL uses the system web browser by default for interactive authentication. This default setup supports SSO state sharing between the apps.
25+
26+
However, if you customize the browser configuration for authentication, such as by using one of the following options, cookie sharing might not be enabled by default:
2527

2628
| **For iOS only** | **For iOS and macOS** |
2729
| --- | --- |
2830
| [ASWebAuthenticationSession](https://developer.apple.com/documentation/authenticationservices/aswebauthenticationsession?language=objc) <br> [SFAuthenticationSession](https://developer.apple.com/documentation/safariservices/sfauthenticationsession?language=objc) <br> [SFSafariViewController](https://developer.apple.com/documentation/safariservices/sfsafariviewcontroller?language=objc) | [WKWebView](https://developer.apple.com/documentation/webkit/wkwebview?language=objc) |
2931

30-
Customizing the browser is acceptable, but it must be configured to allow cookie sharing to prevent repeated login prompts.
32+
To customize the browser, you must allow cookie sharing to prevent repeated login prompts.
3133

3234
## Resolution
3335

34-
To enable cookie sharing and resolve this issue, use one of the following configurations:
36+
To enable cookie sharing and prevent repeated login prompts, use one of the following configurations:
3537

3638
- **ASWebAuthenticationSession in MSAL** + **openURL in Safari browser** (the full Safari browser, not SafariViewController).
3739
- **SFSafariViewController in MSAL** + **SFSafariViewController in your app**.
3840
- **WKWebView in MSAL** + **WKWebView in your app**.
3941

40-
Refer to [customizing webviews](https://docs.microsoft.com/en-us/azure/active-directory/develop/customize-webviews) for additional guidance on configuring webviews and browsers.
41-
42-
### Note for Xamarin.iOS users
42+
For more information, see [Customizing webviews and browsers](/azure/active-directory/develop/customize-webviews).
4343

44-
If you are implementing MSAL in Xamarin.iOS, additional considerations are required for token caching and using the Microsoft Authenticator app. These considerations are separate from the cookie-sharing issue discussed here. For detailed instructions, refer to [Xamarin.iOS MSAL considerations](https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-net-xamarin-ios-considerations).
44+
> [!Note]
45+
> For Xamarin.iOS, several additional factors need to be considered, including enabling token caching and using Microsoft Authenticator. For more information, see [Xamarin.iOS MSAL considerations](/azure/active-directory/develop/msal-net-xamarin-ios-considerations).
4546
4647
[!INCLUDE [Azure Help Support](../../../includes/azure-help-support.md)]
4748

0 commit comments

Comments
 (0)