Releases: AzureAD/microsoft-authentication-library-for-dotnet
Releases · AzureAD/microsoft-authentication-library-for-dotnet
4.49.1
New Features
- Extended managed identity experimental functionality with support for Azure Arc. See 3862
Bug Fixes
4.49.0
New Features
- MSAL will now use
<region>.login.microsoft.com
when using regional ESTS-R for public cloud. See 3252 - Added support for acquiring Work and School accounts when calling
GetAccounts
using the new Broker preview. See 3458 - Added the ability to disable Instance Discovery/Authority validation using
WithInstanceDiscovery(bool enableInstanceDiscovery)
. See 3775 - Added new APIs to acquire authentication data from WWW-Authenticate and Authentication-Info request headers. This will provide additional support for Proof-of-Possession. See 3026
Experimental Features
- Managed identities for Azure resources provide Azure services with an automatically managed identity in Azure Active Directory. You can use this identity to authenticate to any service that supports Azure AD authentication, without having credentials in your code. MSAL now supports acquiring token for managed identities for Azure App Services and Azure Virtual Machines. Use
WithManagedIdentity()
method on theAcquireTokenForClient
API to get an MSI token. This is an experimental feature and may change in the future versions of MSAL. See 3754 and 3829
Supportability
- Enabled more logging for new WAM broker. See 3575
Bug Fixes
- Optimized MSAL cache key logic to improve performance. See 3393
4.48.1
Supportability
- Fixes an internal (Microsoft 1P only) MSA-PT issue for the new WAM preview broker. See VS#1809364 and VS#1643652
Bug Fixes
- Added header title to the Account Picker for the new WAM preview broker. See 3803.
4.48.0
New Features
- Removed support for deprecated
net5.0-windows10.0.17763.0
target. See 3770 and note below. - Added support for
net6.0
andnet6.0-windows10.0.17763.0
targets. See 3682 and note below. - Removed support for old
xamarinmac20
target. See 3722. WithProofOfPossession
for public client applications is now generally available. See 3767.- Added telemetry to log Proof-of-Possession usage. See 3718.
- Exposed tenant profiles for all authorities which are tenanted (B2C and dSTS). See 3703.
- Now logging MSAL version to common telemetry client. See 3745.
- Updated guidance on retry policies. See Retry Policy wiki and 3561.
Bug Fixes
- Fixed a
NullReferenceException
related to authority URLs when callingAcquireTokenSilent
with an Operating System account in apps using WAM. See 3769. - Fixed a
NullReferenceException
when using preview broker and callingAcquireTokenSilent
with MSA account and MSA-PT enabled. See 3743. - Added an
Exported
attribute to Android activities to be compliant with Android OS 12.1 (API 32) and above requirements. See 3680. - Fixed incorrect home account details in
AuthenticationResult
ofAcquireTokenByRefreshToken
. See 3736.
.NET 5 and .NET 6 public client applications
If you have a Windows application which targets net5.0
, net5.0-windows
, net5.0-windowsX
, net6.0
, or net6.0-windows
and would like to use either WAM or embedded browser, you must change the app target to at least net6.0-windows10.0.17763.0
. System browser works on all of the above targets.
The recommendation is to use new Windows broker preview, as it offers better experience than current WAM implementation and will be generally available in the near future. If you want to try the new broker preview, install the NuGet package Microsoft.Identity.Client.Broker and call the .WithBrokerPreview()
method. For details, see https://aka.ms/msal-net-wam.
4.47.2
New Features
- Hide legacy API's that are available only to internal Microsoft only (1P) applications. See 3670.
- Soft deprecate
WithAuthority
API on AcquireTokenXXX methods. Instead useWithTenantId
orWithTenantIdFromAuthority
, orWithB2CAuthority
for B2C authorities. See #3716 - Logging error codes to MSAL Telemetry. See 3595
- Add more logging around client creds and claims. See 3707.
- Improve extensibility APIs to support new POP
Bug Fixes
- Improved error messages when new preview broker exceptions are thrown. #3696
- MSAL will now throw an exception if no scopes are passed for the new preview Broker or for B2C scenarios. See #3675
- Removed .NET 6 MacCatalyst target because MSAL.NET doesn't currently support it. See #3693
- Throw an exception when new WAM DLLs are not loaded when invoking the new WAM preview broker. See #3699
4.47.1
4.47.0
New Features
- Support for .NET MAUI is now generally available for iOS, Windows and Android targets. The package also works with UWP. Refer to
MauiStatus.md
for details. - The new MSAL logging feature is now generally available.
WithExperimentalFeatures()
is no longer required when callingWithLogging()
. See 3548, wiki. - Adding IsProofOfPosessionSupportedByClient api to be used to determine if the current broker is able to support Proof-of-Posession. See 3496
- Adding ability to turn off the default retry-once policy on 5xx errors. See 2877
- Adds new public builder API accepting instances of
ITelemetryClient
. See 3533. - Added logic to log some acquire token data via the new telemetry pipeline. See 3534.
Bug Fixes
- MSAL will now throw an exception if no scopes are passed when the new preview broker is invoked. See #3654 and #3677
MsalServiceException.IsRetryable
is now correctly set. See #3661- Added extra logging in Preview Broker
RemoveAccountAsync
API. See #3658 - Added a check for null account in Preview Broker
RemoveAccountAsync
API. See #3657 AuthenticationResult
now shows correct authority for multi-cloud requests using WAM. See #3637- Adding null IdentityLogger to prevent null reference exception when using cache logger. See #3678
4.46.2
New Features
- WAM Authentication Library now explicitly supports .NET 4.6.2. See #3539
Bug Fixes
- Fixed 'Authenticator Factory has already been started` exception in new MSAL WAM preview. See #3604
- Added back missing .NET Standard 2.0 target to MSAL.NativeInterop package. See #3612
- [Resilience] Changed to an improved implementation of HTTP client factory on .NET Framework to improve resiliency (for ex. by reducing the amount of request timeouts). See #3546
- Logging additional exceptions to telemetry. See #3547
4.46.1
4.46.0
New Features
- Added
AcquireTokenByUsernamePassword
flow in WAM broker preview. See 3308. - Added support for Proof-of-Possession tokens to
AcquireTokenByUsernamePassword
flow in WAM broker preview. See 3308. - Added
WithTenantIdFromAuthority
API to request builder. See 3429. - Exposed new Identity Logger in the
TokenCacheNotificationArgs
. See 3404. - [Security] Increased size of PKCE verifier. See 1777.
- Enabled multi-cloud support in WAM. See 3477.
Bug Fixes
- Deprecated and replaced
SecureString
usage with strings. See 2437. - Refactored authority related code to use URI class instead of strings. See 3487.
- Fixed authority resolution for B2C authorities. See 3471.
- Improved WAM broker preview behavior for remembered accounts. See 3437.
- Obsoleted with a warning
AcquireTokenSilent(scopes, login_hint)
for confidential client applications as it's not applicable in those scenarios. See 3403. - Now passing
intune_mam_resource
to the mobile broker. See 3490. - Fixed DSTS endpoints. See 3492.
- Cancellation tokens are now correctly passed to Windows broker and embedded web views. See 3225.
- Move app token provider feature to extensibility namespace and clarified its use. See 3475.