diff --git a/msal-dotnet-articles/acquiring-tokens/desktop-mobile/uwp.md b/msal-dotnet-articles/acquiring-tokens/desktop-mobile/uwp.md index 98b95baa..ce004b17 100644 --- a/msal-dotnet-articles/acquiring-tokens/desktop-mobile/uwp.md +++ b/msal-dotnet-articles/acquiring-tokens/desktop-mobile/uwp.md @@ -18,6 +18,9 @@ ms.custom: devx-track-csharp, aaddev, devx-track-dotnet # Using MSAL.NET with UWP applications +> [!NOTE] +> MSAL.NET versions 4.61.0 and above do not provide support for UWP. + Developers of applications that use Universal Windows Platform (UWP) with MSAL.NET should consider the concepts this article presents. >[!NOTE] diff --git a/msal-dotnet-articles/acquiring-tokens/desktop-mobile/wam.md b/msal-dotnet-articles/acquiring-tokens/desktop-mobile/wam.md index fb445b0c..a77ca4db 100644 --- a/msal-dotnet-articles/acquiring-tokens/desktop-mobile/wam.md +++ b/msal-dotnet-articles/acquiring-tokens/desktop-mobile/wam.md @@ -18,7 +18,7 @@ An authentication broker is an application that runs on a user’s machine that - **Enhanced security.** Many security enhancements will be delivered with the broker, without needing to update the application logic. - **Feature support.** With the help of the broker developers can access rich OS and service capabilities such as Windows Hello, conditional access policies, and FIDO keys without writing extra scaffolding code. - **System integration.** Applications that use the broker plug-and-play with the built-in account picker, allowing the user to quickly pick an existing account instead of reentering the same credentials over and over. -- **Token Protection.** WAM ensures that the refresh tokens are device bound and [enables apps](../../advanced/proof-of-possession-tokens.md) to acquire device bound access tokens. See [Token Protection](/azure/active-directory/conditional-access/concept-token-protection) +- **Token Protection.** WAM ensures that the refresh tokens are device bound and [enables apps](../../advanced/proof-of-possession-tokens.md) to acquire device bound access tokens. See [Token Protection](/azure/active-directory/conditional-access/concept-token-protection). ## Enabling WAM @@ -33,7 +33,7 @@ WAM support is split across two packages: >[!NOTE] >For migration purposes, and if you have a .NET 6, .NET Core, or a .NET Standard application that needs to use _both_ WAM and the [embedded browser](/azure/active-directory/develop/msal-net-web-browsers#embedded-vs-system-web-ui), you will also need to use the [Microsoft.Identity.Client.Desktop](https://www.nuget.org/packages/Microsoft.Identity.Client.Desktop/) package. Once added, developers can use [`WithWindowsDesktopFeatures`](xref:Microsoft.Identity.Client.Desktop.DesktopExtensions.WithWindowsDesktopFeatures*) when setting up their public client application. > ->If your application targets UWP or `net-windows` (version-dependent Target Framework Moniker for Windows), WAM is included in the MSAL.NET package. +>If your application targets UWP or `net-windows` (version-dependent Target Framework Moniker for Windows), WAM is included in the MSAL.NET package (applicable to versions 4.60.3 and below). After referencing the relevant packages, call [`WithBroker(BrokerOptions)`](xref:Microsoft.Identity.Client.Desktop.WamExtension.WithBroker*) with broker configuration options and [a window handle](#parent-window-handles) that the broker will be bound to. @@ -167,10 +167,14 @@ To use the broker, developers will need to call ; or reference `Microsoft.Identity.Client.Desktop` when [authenticating with browser](https://aka.ms/msal-net-uses-web-browser) and call . ## Troubleshooting diff --git a/msal-dotnet-articles/acquiring-tokens/desktop-mobile/xamarin.md b/msal-dotnet-articles/acquiring-tokens/desktop-mobile/xamarin.md index 7d52e2d5..a2d71f0e 100644 --- a/msal-dotnet-articles/acquiring-tokens/desktop-mobile/xamarin.md +++ b/msal-dotnet-articles/acquiring-tokens/desktop-mobile/xamarin.md @@ -8,7 +8,7 @@ description: "How to use MSAL.NET on mobile platforms." MSAL.NET can run on mobile devices (both iOS and Android) through applications built with [.NET Multi-platform App UI (MAUI)](https://dotnet.microsoft.com/apps/maui). >[!NOTE] ->The .NET team recommends [migrating existing Xamarin applications to MAUI](/dotnet/maui/migration/). New applications should always use MAUI. +>The .NET team recommends [migrating existing Xamarin applications to MAUI](/dotnet/maui/migration/). New applications should always use MAUI. MSAL.NET versions 4.61.0 and above do not provide support for Xamarin Android and Xamarin iOS. ## Using MSAL.NET with brokers on mobile devices diff --git a/msal-dotnet-articles/acquiring-tokens/using-web-browsers.md b/msal-dotnet-articles/acquiring-tokens/using-web-browsers.md index c8ae208a..ec14bbf4 100644 --- a/msal-dotnet-articles/acquiring-tokens/using-web-browsers.md +++ b/msal-dotnet-articles/acquiring-tokens/using-web-browsers.md @@ -41,25 +41,27 @@ Generally, it's recommended that you use the platform default, and this is typic ### Browser availability -| Framework | Embedded | System | Default | -| ------------- |-------------| -----| ----- | -| .NET 6.0+ Windows | Yes | Yes† | Embedded | -| .NET 6.0+ | No†† | Yes† | System | -| .NET 5.0 | No†† | Yes† | System | -| .NET Classic | Yes | Yes† | Embedded | -| .NET Core | No | Yes† | System | -| .NET Standard | No††† | Yes† | System | -| UWP | Yes | No | Embedded | -| Xamarin.Android | Yes | Yes | System | -| Xamarin.iOS | Yes | Yes | System | -| Xamarin.Mac| Yes | No | Embedded | - -**†** Requires `http://localhost` redirect URI. +| Framework | Embedded | System† | Default | +|:--------------------------------|:-------------------------|:-----------------------|:----------------------| +| .NET 6+†† | ⛔ No | ✅ Yes | System | +| .NET 6+ Windows | ⛔ No††† | ✅ Yes | System | +| .NET MAUI | ✅ Yes | ✅ Yes | System | +| .NET 5+†† | ⛔ No | ✅ Yes | System | +| .NET 4.6.2+ | ✅ Yes | ✅ Yes | Embedded | +| .NET Standard | ⛔ No††† | ✅ Yes | System | +| .NET Core | ⛔ No††† | ✅ Yes | System | +| UWP†††† | ✅ Yes | ⛔ No | Embedded | +| Xamarin.Android†††† | ✅ Yes | ✅ Yes | System | +| Xamarin.iOS†††† | ✅ Yes | ✅ Yes | System | + +**†** System browser requires `http://localhost` redirect URI. **††** Target `net6.0-windows` or above to use the embedded browser. **†††** Reference [Microsoft.Identity.Client.Desktop](https://www.nuget.org/packages/Microsoft.Identity.Client.Desktop) and call to use the embedded browser. +**††††** MSAL.NET versions 4.61.0 and above do not provide support for UWP, Xamarin Android, and Xamarin iOS. + ## System web browser Using the system browser has the significant advantage of sharing the Single Sign-On (SSO) state with web applications and other applications without needing a broker (WAM, Company Portal, Authenticator, etc.). @@ -138,6 +140,9 @@ var options = new SystemWebViewOptions() ## Web views on Xamarin.Android and Xamarin.iOS +> [!NOTE] +> MSAL.NET versions 4.61.0 and above do not provide support for Xamarin Android and Xamarin iOS. + Embedded web views can be enabled in Xamarin.Android and Xamarin.iOS apps. As a developer using MSAL.NET targeting Xamarin, you may choose to use either embedded web views or system browsers. This is your choice depending on the user experience and security concerns you want to target. ### Differences between embedded web view and system browser