Skip to content

This is a simple Xamarin Forms app showcasing how to use MSAL.NET to authenticate work or school and Microsoft personal accounts with the Microsoft identity platform, and access the Microsoft Graph with the resulting token.

License

Notifications You must be signed in to change notification settings

Azure-Samples/active-directory-xamarin-native-v2

Repository files navigation

page_type languages products description urlFragment
sample
csharp
powershell
azure-active-directory
You have a Xamarin mobile application and you want it to consume Microsoft Graph or your own Web Api using Microsoft Identity Platform to acquire tokens.
active-directory-xamarin-native-v2

A Xamarin mobile application using Microsoft identity platform (formerly Azure AD v2.0)

Build status

About this sample

Scenario

You have a mobile application and you want it to consume either Microsoft Graph or your own Web API using the Microsoft Identity Platform to acquire tokens.

Structure of the repository

This repository contains a two-part tutorial - a basic scenario and a more advanced with broker scenario. Choose the one that best suits your scenario, or go through both to understand the differences between the implementations.

Sub folder Description
1-Basic This sample app shows how to use the Microsoft identity platform endpoint to sign-in a user interactively and display their profile

Topology
2-With-broker This chapter adds additional support for the broker (Microsoft Authenticator), which enables more complex scenarios, like device related conditional access and SSO.

Topology

How to run this sample For Xamarin Forms (not MAUI)

To run this sample, you'll need:

  • Visual Studio 2019. Install or update Visual Studio with the following workloads:

    • Universal Windows Platform Development
    • Mobile Development with .Net

    Then from the "Individual Components" tab, make sure these additional items are selected:

    • Android SDK setup (API level 27)
    • Windows 10 SDK (10.0.17134.0)
    • Android SDK level 27 (oreo) and 28 (pie), and Android SDK build tools 27.0.3 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…)
  • An Internet connection

  • A Windows, OS X, or Linux machine (necessary if you want to run the app on their respective platforms)

  • An Azure Active Directory (Azure AD) tenant. For more information on how to get an Azure AD tenant, see How to get an Azure AD tenant

  • A user account in your Azure AD tenant. This sample will not work with a Microsoft account (formerly Windows Live account). Therefore, if you signed in to the Azure portal with a Microsoft account and have never created a user account in your directory before, you need to do that now.

  • Setup Xamarin.iOS for Visual Studio (if you want to run the iOS app) - This will require Visual Studio on PC, and on a Mac Machine where XCode 14.0 is installed.

Step 1: Clone or download this repository

From your shell or command line:

git clone https://github.com/Azure-Samples/active-directory-xamarin-native-v2.git

or download and exact the repository .zip file.

Given that the name of the sample is pretty long, and so are the name of the referenced NuGet packages, you might want to clone it in a folder close to the root of your hard drive, to avoid file size limitations on Windows.

Then navigate to the sub-folder of your choice, 1-Basic or 2-With-broker

Community Help and Support

Use Stack Overflow to get support from the community. Ask your questions on Stack Overflow first and browse existing issues to see if someone has asked your question before. Make sure that your questions or comments are tagged with [msal dotnet].

If you find a bug in the sample, please raise the issue on GitHub Issues.

If you find a bug in msal.Net, please raise the issue on MSAL.NET GitHub Issues.

To provide a recommendation, visit the following User Voice page.

Contributing

If you'd like to contribute to this sample, see CONTRIBUTING.MD.

This project has adopted the Microsoft Open Source Code of Conduct. For more information, see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

More information

For more information, see MSAL.NET's conceptual documentation:

About

This is a simple Xamarin Forms app showcasing how to use MSAL.NET to authenticate work or school and Microsoft personal accounts with the Microsoft identity platform, and access the Microsoft Graph with the resulting token.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published