-
Notifications
You must be signed in to change notification settings - Fork 377
Build and Test
-
Install or update VS with the following workloads:
- .Net Desktop Development
- Universal Windows Platform Development
- Mobile Development with .Net
- .Net Core cross-platform development
-
Then from the "Individual Components" tab, make sure these additional items are selected:
- .NET Framework 4.5 targeting pack
- .NET Framework 4.5.2 targeting pack
- .NET Framework 4.6.1 SDK
- .NET Framework 4.6.1 targeting pack
- .NET Framework 4.6.2 targeting pack
- Android SDK setup (API level 27)
- Windows 10 SDK (10.0.17134.0)
-
Android SDK level 24 and 26 are also required. These are not installed through the VS Installer, so instead use the Android SDK Manager (Visual Studio > Tools > Android > Android SDK Manager…)
MSAL is a multi-target library and at the time of writing, VS for Mac is not able to understand and layout this project correctly. You can still build from the command line.
- Load LibsAndSamples.sln for a bigger solution with lots of apps that exercise MSAL. Load LibsNoSamples.sln for a small solution that has the library and the tests.
- Build in VS or via the command line with "msbuild /t:restore" and "msbuild"
Note: if you run into strong name validation issues, please log a bug. Workaround is to disable it on your dev box by running Admin Dev Prompt > sn -Vr *
You won't be able to run the Integration test or Automation tests because they require access to a Microsoft KeyVault which is locked down. These tests will run as part of our DevOps pipelines though.
Run the unit tests from the assemblies:
- Microsoft.Identity.Test.Unit.net45
- Microsoft.Identity.Test.Unit.netcore
From VS or from the command line if you wish to control the versioning:
msbuild <msal>.csproj /t:pack /p:MsalClientSemVer=1.2.3-preview
Use msbuild
commands - msbuild /t:restore
and msbuild
. Do not rely on dotnet
command line because it is only for .Net Core, but this library has many other targets.
Note: To enable us to target Xamarin as well as .Net core, we took a dependency on the MsBuild SDK extras - https://github.com/onovotny/MSBuildSdkExtras See this issue about using dotnet
- Home
- Why use MSAL.NET
- Is MSAL.NET right for me
- Scenarios
- Register your app with AAD
- Client applications
- Acquiring tokens
- MSAL samples
- Known Issues
- Acquiring a token for the app
- Acquiring a token on behalf of a user in Web APIs
- Acquiring a token by authorization code in Web Apps
- AcquireTokenInteractive
- WAM - the Windows broker
- .NET Core
- Maui Docs
- Custom Browser
- Applying an AAD B2C policy
- Integrated Windows Authentication for domain or AAD joined machines
- Username / Password
- Device Code Flow for devices without a Web browser
- ADFS support
- High Availability
- Regional
- Token cache serialization
- Logging
- Exceptions in MSAL
- Provide your own Httpclient and proxy
- Extensibility Points
- Clearing the cache
- Client Credentials Multi-Tenant guidance
- Performance perspectives
- Differences between ADAL.NET and MSAL.NET Apps
- PowerShell support
- Testing apps that use MSAL
- Experimental Features
- Proof of Possession (PoP) tokens
- Using in Azure functions
- Extract info from WWW-Authenticate headers
- SPA Authorization Code