Eseguire la migrazione di applicazioni iOS che usano Microsoft Authenticator da ADAL.NET a MSAL.NET
È stato usato Azure Active Directory Authentication Library per .NET (ADAL.NET) e il broker iOS. È ora possibile eseguire la migrazione a Microsoft Authentication Library per .NET (MSAL.NET), che supporta il broker in iOS dalla versione 4.3 successiva.
Dove iniziare? Questo articolo illustra come eseguire la migrazione dell'app Xamarin iOS da ADAL a MSAL.
Prerequisiti
Questo articolo presuppone che l'utente abbia già un'app Xamarin iOS integrata con il broker iOS. In caso contrario, passare direttamente a MSAL.NET e iniziare l'implementazione del broker. Per informazioni su come richiamare il broker iOS in MSAL.NET con una nuova applicazione, vedere questa documentazione.
Background
Che cosa sono i broker?
I broker sono applicazioni fornite da Microsoft in Android e iOS. (Vedere il App Microsoft Authenticator in iOS e Android e l'app Portale aziendale Intune in Android.
Abilitano:
- Single Sign-On.
- Identificazione del dispositivo, richiesta da alcuni criteri di accesso condizionale. Per altre informazioni, vedere Gestione dei dispositivi.
- Verifica dell'identificazione dell'applicazione, richiesta anche in alcuni scenari aziendali. Per altre informazioni, vedere Gestione di applicazioni mobili (MAM) di Intune.
Eseguire la migrazione da ADAL a MSAL
Passaggio 1: Abilitare il broker
Codice ADAL corrente: | Controparte di MSAL: |
In ADAL.NET, il supporto del broker è stato abilitato in base al contesto di autenticazione. Per impostazione predefinita, è disabilitata. Dovevi impostare un
Inoltre, nel codice specifico della piattaforma, in questo esempio, nel renderer di pagina per iOS, impostare
Includere quindi i parametri nella chiamata al token di acquisizione:
|
In MSAL.NET, il supporto broker è abilitato per ogni publicClientApplication. Per impostazione predefinita, è disabilitata. Per abilitarlo, usare
Nella chiamata di acquisizione del token:
|
Passaggio 2: Impostare un uiViewController()
In ADAL.NET è stato passato un oggetto UIViewController come parte di PlatformParameters
. Vedere l'esempio nel passaggio 1. In MSAL.NET, per offrire agli sviluppatori maggiore flessibilità, viene usata una finestra oggetto, ma non è necessaria nell'utilizzo normale di iOS. Per usare il broker, impostare la finestra dell'oggetto per inviare e ricevere risposte dal broker.
Codice ADAL corrente: | Controparte di MSAL: |
Un UIViewController viene passato a
|
In MSAL.NET eseguire due operazioni per impostare la finestra dell'oggetto per iOS:
Ad esempio: In
In
Nella chiamata di acquisizione del token:
|
Passaggio 3: Aggiornare AppDelegate per gestire il callback
Sia ADAL che MSAL chiamano il broker e il broker a sua volta richiama l'applicazione tramite il OpenUrl
metodo della AppDelegate
classe . Per altre informazioni, vedere questa documentazione.
Non sono presenti modifiche tra ADAL.NET e MSAL.NET.
Passaggio 4: Registrare uno schema URL
ADAL.NET e MSAL.NET usare gli URL per richiamare il broker e restituire la risposta del broker all'app. Registrare lo schema URL nel file per l'app Info.plist
come indicato di seguito:
Codice ADAL corrente: | Controparte di MSAL: |
Lo schema URL è univoco per l'app. |
La
come prefisso, seguito dal Ad esempio:
Nota Questo schema URL diventa parte dell'URI di reindirizzamento usato per identificare in modo univoco l'app quando riceve la risposta dal broker. |
Passaggio 5: Aggiungere l'identificatore del broker alla sezione LSApplicationQueriesSchemes
ADAL.NET e MSAL.NET entrambi usano -canOpenURL:
per verificare se il broker è installato nel dispositivo. Aggiungere l'identificatore corretto per il broker iOS alla sezione LSApplicationQueriesSchemes del file info.plist come indicato di seguito:
Codice ADAL corrente: | Controparte di MSAL: |
Utilizza
|
Utilizza
|
Passaggio 6: Registrare l'URI di reindirizzamento nel portale di Azure
ADAL.NET e MSAL.NET entrambi aggiungere un requisito aggiuntivo sull'URI di reindirizzamento quando è destinato al broker. Registrare l'URI di reindirizzamento con l'applicazione nel portale di Azure.
Codice ADAL corrente: | Controparte di MSAL: |
Esempio:
|
Esempio:
|
Per altre informazioni su come registrare l'URI di reindirizzamento nella portale di Azure, vedere Passaggio 7: Aggiungere un URI di reindirizzamento alla registrazione dell'app.
Passaggio 7: Impostare Entitlements.plist
Abilitare l'accesso keychain nel file Entitlements.plist :
<key>keychain-access-groups</key>
<array>
<string>$(AppIdentifierPrefix)com.microsoft.adalcache</string>
</array>
Per altre informazioni sull'abilitazione dell'accesso keychain, vedere Abilitare l'accesso keychain.
Passaggi successivi
Informazioni sulle considerazioni specifiche di Xamarin iOS con MSAL.NET.