msal_auth
A comprehensive Flutter plugin for managing Microsoft authentication using the native Microsoft Authentication Library (MSAL).
3.5.2
17K downloads/mo
#2341 most downloaded on pub.dev
nayanAubie/msal_auth
What this package is like to depend on
Last release 20 days ago
03 Aug 2026
Ships unpredictably
gaps range from 8 days to 8 months
Nearly every release is documented
notes for 38 of 38 stable releases
Nothing withdrawn
no release was ever pulled
2 years old
38 releases · first in 2024
5 releases in the last 12 months
see the full history below
Release timeline
38 releases · Mar 2024 to Aug 2026Releases
latest 38-
3.5.203 Aug 2026Release notes
Open source →- Added optional
redirectUriinAppleConfigfor iOS/MacOS. When provided, MSAL uses it directly instead of deriving the defaultmsauth.<bundle-id>redirect, which fails withteamId is missingon some managed devices. Keeping itnullpreserves the existing behaviour. #issue/145 AppleConfig.brokeris now applied on MacOS as well (earlier it was iOS only). Setting it towebView/safariBrowserdisables the Microsoft SSO extension and routes authentication through the web view. #issue/145
Release notes
Open source →- Added optional
redirectUriinAppleConfigfor iOS/MacOS. When provided, MSAL uses it directly instead of deriving the defaultmsauth.<bundle-id>redirect, which fails withteamId is missingon some managed devices. Keeping itnullpreserves the existing behaviour. #issue/145 AppleConfig.brokeris now applied on MacOS as well (earlier it was iOS only). Setting it towebView/safariBrowserdisables the Microsoft SSO extension and routes authentication through the web view. #issue/145
- Added optional
-
3.5.127 Jun 2026Release notes
Open source →- Fixed issue of
IllegalStateException: Reply already submittedcrash due to multiple account callback from Android to Dart. #issue/116 - Added
MsalNoCurrentAccountExceptionin Dart to handle absence of signed-in account. #issue/141
Release notes
Open source →- Fixed issue of
IllegalStateException: Reply already submittedcrash due to multiple account callback from Android to Dart. #issue/116 - Added
MsalNoCurrentAccountExceptionin Dart to handle absence of signed-in account. #issue/141
- Fixed issue of
-
3.5.008 May 2026Release notes
Open source →- Added support for
Swift Package Manageron iOS and macOS. #issue/132 - Fixed the native Swift
getCurrentAccountimplementation soacquireTokenSilentandsignOutcorrectly wait for the asynchronous callback. #issue/129
Release notes
Open source →- Added support for
Swift Package Manageron iOS and macOS. #issue/132 - Fixed the native Swift
getCurrentAccountimplementation soacquireTokenSilentandsignOutcorrectly wait for the asynchronous callback. #issue/129
- Added support for
-
3.4.104 May 2026Release notes
Open source →- Fixed an Android release build issue caused by missing ProGuard rule mappings in the Android library. #issue/135
Release notes
Open source →- Fixed an Android release build issue caused by missing ProGuard rule mappings in the Android library. #issue/135
-
3.4.001 May 2026Release notes
Open source →- Updated native MSAL SDK versions: Android:
8.3.+and iOS & macOS:2.11.0 - Migrated Android build scripts from Groovy to Kotlin DSL.
- Added automatic handling of
MSALPublicClientApplication.handleMSALResponsefor iOS URL callbacks via bothAppDelegateandSceneDelegate, removing the need for manual integration in host apps. - Added a shared device mode status check method to the
PublicClientApplicationclass. #issue/126
Release notes
Open source →- Updated native MSAL SDK versions: Android:
8.3.+and iOS & macOS:2.11.0 - Migrated Android build scripts from Groovy to Kotlin DSL.
- Added automatic handling of
MSALPublicClientApplication.handleMSALResponsefor iOS URL callbacks via bothAppDelegateandSceneDelegate, removing the need for manual integration in host apps. - Added a shared device mode status check method to the
PublicClientApplicationclass. #issue/126
- Updated native MSAL SDK versions: Android:
-
3.3.019 Aug 2025Release notes
Open source →- Created
AppThemestyle in theexampleapp for MSAL WebView in Android. #issue/119 - Added support for customised webview in iOS and macOS. #issue/90
Release notes
Open source →- Created
AppThemestyle in theexampleapp for MSAL WebView in Android. #issue/119 - Added support for customised webview in iOS and macOS. #issue/90
- Created
-
3.2.724 Jul 2025 -
3.2.618 Jul 2025Release notes
Open source →- Fixed MSAL error conversion in
Dartdue tonildetails received from iOS/MacOS. - Improved error codes in iOS/MacOS when a custom exception needs to be thrown.
Release notes
Open source →- Fixed MSAL error conversion in
Dartdue tonildetails received from iOS/MacOS. - Improved error codes in iOS/MacOS when a custom exception needs to be thrown.
- Fixed MSAL error conversion in
-
3.2.517 Jul 2025Release notes
Open source →- Fixed an issue on
iOSwhere the Authenticator app did not open when switching the broker toAuthenticator. - Refactored error handling in MSAL exceptions to include correlation IDs and improve error detail mapping. iOS/MacOS now shows the proper exception message instead of
Operation couldn't be completed. AuthenticationResult (Android): Fixed username value in account mapping.usernamevalue will benullinstead ofMissing from token responseif not found.
Release notes
Open source →- Fixed an issue on
iOSwhere the Authenticator app did not open when switching the broker toAuthenticator. - Refactored error handling in MSAL exceptions to include correlation IDs and improve error detail mapping. iOS/MacOS now shows the proper exception message instead of
Operation couldn't be completed. AuthenticationResult (Android): Fixed username value in account mapping.usernamevalue will benullinstead ofMissing from token responseif not found.
- Fixed an issue on
-
3.2.415 Jul 2025Release notes
Open source →- Handle UI unavailable error in
acquireTokenmethod and adjust view controller retrieval logic. #issue/101 - Add
authorityparameter support foracquireTokenandacquireTokenSilentmethods. #issue/91
Release notes
Open source →- Handle UI unavailable error in
acquireTokenmethod and adjust view controller retrieval logic. #issue/101 - Add
authorityparameter support foracquireTokenandacquireTokenSilentmethods. #issue/91
- Handle UI unavailable error in
-
3.2.310 Jul 2025Release notes
Open source →- Fixed an issue causing
MsalUiRequiredExceptiondue to an internal call toacquireTokenSilentwithin theacquireTokenmethod during native calls. #issue/82
- Fixed an issue causing
-
3.2.210 Jul 2025Release notes
Open source →- Fixed an issue of broker in iOS due to broker availability was set to auto in the
acquireTokenmethod.
- Fixed an issue of broker in iOS due to broker availability was set to auto in the
-
3.2.108 Jul 2025Release notes
Open source →- Updated
exampleapp to use the signature hash programmatically instead of hardcoding it inAndroidManifest.xml. - Updated the
example/READMEfor detailed instructions on how to set up theexampleapp. - Update documentation for the following:
- Internet and Network State permissions in
AndroidManifest.xml. - Debug and release signature hash generation for Android.
ProGuardsetup within this plugin.
- Internet and Network State permissions in
- Updated
-
3.2.007 Jul 2025Release notes
Open source →- Upgrade MSAL native libraries:
- Android:
6.0.1(Version fixed to ensure each release ofmsal_authconsistently uses a specific native MSAL version) - Apple:
2.2.0
- Android:
- Used modern
Gradlesyntax with updated Kotlin and Gradle wrapper version. - Migrated the Android example app from Groovy to Kotlin build scripts.
- Upgrade MSAL native libraries:
-
3.1.504 Jul 2025 -
3.1.428 Feb 2025 -
3.1.328 Feb 2025 -
3.1.212 Feb 2025 -
3.1.121 Jan 2025Release notes
Open source →- Made the
namenullable inAccountclass because it may be null if the user is registered without setting a name. - Used default authority in example's
msal_config.json.
- Made the
-
3.1.005 Dec 2024Release notes
Open source →- Added support for the
macOSplatform. - BREAKING CHANGES:
IosConfigclass has been renamed toAppleConfigand now this configuration class supports iOS and macOS.brokerproperty of this class is used only for iOS.
- Added support for the
-
3.0.122 Nov 2024Release notes
Open source →- Added
Account Moderelated instructions for Android in the README & fixed Dart analysis.
- Added
-
3.0.022 Nov 2024Release notes
Open source →-
Added support of
singleandmultipleaccount mode. -
Added new classes & methods based on account mode:
- SingleAccountPca (Single Account Mode):
- currentAccount
- signOut()
- MultipleAccountPca (Multiple Account Mode):
- getAccount()
- getAccounts()
- removeAccount()
- SingleAccountPca (Single Account Mode):
-
Added
redirectUriinAndroidConfigclass as a required parameter. -
Added
identifieroption inacquireTokenSilent()that is required for multiple account mode. -
Defined all the possible exceptions in Dart side that can be thrown by native MSAL SDK.
-
Exampleapp is completely re-written to showcase all the features. -
BREAKING CHANGES:
MsalAuth.createPublicClientApplicationis removed and added 3 classes:PublicClientApplicationsuper class.SingleAccountPcafor single account mode.SingleAccountPca.create()is used to create single account public client application.
MultipleAccountPcafor multiple account mode.MultipleAccountPca.create()is used to create multiple account public client application.
tenantIdfromAndroidConfigis removed because it can be set through JSON configuration file.AuthMiddlewareenum inIosConfigis renamed toBroker.TenantTypeenum inIosConfigis renamed toAuthorityTypewith it's values:entraIDAndMicrosoftAccounttoaad.azureADB2Ctob2c.
scopesargument is moved toacquireToken()&acquireTokenSilent()methods. these methods are now part ofPublicClientApplicationclass.logout()is removed sosignOut()orremoveAccount()is used based on your account mode.MsalUserclass is replaced byAuthenticationResultwith additional parameters.MsalUserCanceledExceptionis renamed toMsalUserCancelException.
-
-
2.2.112 Nov 2024Release notes
Open source →- Added keychain group
com.microsoft.adalcacheinexample/iosand updated instruction in README.
- Added keychain group
-
2.2.011 Nov 2024Release notes
Open source →- Moved
loginHintparam toacquireTokenfunction. - Added support of
Promptoption inacquireTokenfunction.
- Moved
-
2.1.108 Nov 2024Release notes
Open source →- Updated README for login process stuck on iOS due to missing callback handling. issue#26, issue#33
-
2.1.014 Oct 2024Release notes
Open source →- Fixed issue of
activity is nullwhenFlutterFragmentActivityis used inMainActivity.kt
- Fixed issue of
-
2.0.223 Sep 2024 -
2.0.129 Jul 2024 -
2.0.020 Jun 2024 -
1.0.815 May 2024Release notes
Open source →- Fixed crash in Android when
MsalUiRequiredExceptionoccurs. - Added info about
authorityused in iOS. - Updated
examplecode.
- Fixed crash in Android when
-
1.0.714 May 2024 -
1.0.614 May 2024 -
1.0.514 May 2024 -
1.0.414 May 2024 -
1.0.313 May 2024 -
1.0.213 May 2024 -
1.0.103 Apr 2024 -
1.0.011 Mar 2024