Condividi tramite


Concedere l’accesso agli utenti in un'applicazione Android .NET MAUI di esempio

Si applica a: Cerchio bianco con il simbolo X grigio. Tenant delle risorse Cerchio verde con un segno di spunta bianco. Tenant esterni (altre informazioni)

Questa guida pratica usa un'interfaccia utente di .NET Multi-Platform App UI (.NET MAUI) di esempio per mostrare come aggiungere l'autenticazione a un'applicazione Android usando un tenant esterno. L'applicazione di esempio consente agli utenti di eseguire l'accesso e la disconnessione. L'applicazione Android .NET MAUI di esempio usa Microsoft Authentication Library (MSAL) per .NET per gestire l'autenticazione.

In questo articolo si apprenderà come eseguire le attività seguenti:

  • Registrare un'applicazione Android .NET MAUI nel tenant esterno:
  • Creare un flusso utente di accesso e disconnessione nel tenant esterno.
  • Associare l'applicazione Android .NET MAUI al flusso utente.
  • Aggiornare un'applicazione Android .NET MAUI di esempio per usare i dettagli del tenant esterno.
  • Eseguire e testare l'applicazione Android .NET MAUI di esempio.

Prerequisiti

Registrare l'applicazione Android .NET MAUI

Per consentire all'applicazione di permettere agli utenti di eseguire l'accesso con Microsoft Entra, Microsoft Entra per ID esterno deve “supportare” l'applicazione creata. La registrazione dell'app stabilisce una relazione di trust tra l'app e Microsoft Entra. Quando si registra un'applicazione, l'ID esterno genera un identificatore univoco noto come ID applicazione (client), un valore usato per identificare l'app durante la creazione di richieste di autenticazione.

La procedura seguente illustra come registrare l'app nell'Interfaccia di amministrazione di Microsoft Entra:

  1. Accedere all’Interfaccia di amministrazione di Microsoft Entra almeno come sviluppatore di applicazioni.

  2. Se si ha accesso a più tenant, usare l'icona Impostazioni nel menu in alto per passare al tenant esterno dal menu Directory e sottoscrizioni.

  3. Passare a Identità>Applicazioni>Registrazioni app.

  4. Seleziona + Nuova registrazione.

  5. Nella pagina Registra un'applicazione visualizzata:

    1. In Nome immettere un nome significativo per l'applicazione da mostrare agli utenti dell'app, ad esempio ciam-client-app.
    2. In Tipi di account supportati selezionare Account solo in questa directory organizzativa.
  6. Selezionare Registra.

  7. Al termine della registrazione, viene visualizzato il riquadro Panoramica dell'applicazione. Registrare il valore di ID applicazione (client) che verrà usato nel codice sorgente dell'applicazione.

Per specificare il tipo di app per la registrazione dell'app, seguire questa procedura:

  1. In Gestisci selezionare Autenticazione.
  2. Nella pagina Configurazioni della piattaforma selezionare Aggiungi una piattaforma, quindi selezionare l'opzione Applicazioni per dispositivi mobile e desktop.
  3. In URI di reindirizzamento immettere msalEnter_the_Application_Id_Here://auth, sostituire Enter_the_Application_Id_Here con l'ID applicazione (client) copiato in precedenza, quindi selezionare Configura.
  4. Seleziona Salva per salvare le modifiche.
  1. Nella pagina Registrazioni app selezionare l'applicazione creata (ad esempio ciam-client-app) per aprire la relativa pagina Panoramica.

  2. In Gestisci selezionare Autorizzazioni API. Nell'elenco Autorizzazioni configurate, all'applicazione è stata assegnata l'autorizzazione User.Read. Poiché il tenant è esterno, gli utenti consumer stessi non possono tuttavia fornire il consenso a questa autorizzazione. L'amministratore deve fornire il consenso a questa autorizzazione per conto di tutti gli utenti nel tenant:

    1. Selezionare Concedi consenso amministratore per <nome del tenant>, quindi selezionare .
    2. Selezionare Aggiorna, quindi verificare che Concesso per <nome del tenant> venga visualizzato in Stato per entrambi gli ambiti.

Creare un flusso utente

Seguire questa procedura per creare un flusso utente che un cliente può usare per accedere a o registrarsi a un'applicazione.

  1. Accedere all'Interfaccia di amministrazione di Microsoft Entra almeno come amministratore del flusso utente con ID esterno.

  2. Se si ha accesso a più tenant, usare l'icona Impostazioni nel menu in alto per passare al tenant esterno dal menu Directory e sottoscrizioni.

  3. Passare a Identità>Identità esterne>Flussi utente.

  4. Selezionare + Nuovo flusso utente.

  5. Nella pagina Crea:

    1. In Nome immettere il nome del flusso utente, ad esempio SignInSignUpSample.

    2. Nell'elenco Provider di identità selezionare Account di posta elettronica. Questo provider di identità consente agli utenti di accedere o registrarsi usando il proprio indirizzo di posta elettronica.

      Nota

      I provider di identità aggiuntivi verranno elencati qui solo dopo la configurazione della federazione. Ad esempio, se si configura la federazione con Google o Facebook, sarà possibile selezionare tali provider di identità aggiuntivi qui.

    3. In Account di posta elettronicaè possibile selezionare una delle due opzioni. Per questa esercitazione selezionare Indirizzo di posta elettronica con password.

      • Indirizzo di posta elettronica con password: consente ai nuovi utenti di registrarsi ed eseguire l’accesso usando un indirizzo di posta elettronica come nome di accesso e una password come credenziale di primo fattore.
      • Passcode monouso tramite posta elettronica: consente ai nuovi utenti di registrarsi ed eseguire l’accesso usando un indirizzo di posta elettronica come nome di accesso e un passcode monouso ricevuto tramite messaggio di posta elettronica come credenziale di primo fattore. Il passcode monouso tramite posta elettronica deve essere abilitato a livello di tenant (Tutti i provider di identità>Passcode monouso tramite posta elettronica) affinché questa opzione sia disponibile a livello di flusso utente.
    4. In Attributi utentescegliere gli attributi da raccogliere dall'utente al momento della registrazione. Se si seleziona Mostra altro, è possibile scegliere attributi e attestazioni per paese/area geografica, nome visualizzatoe codice postale. Seleziona OK. Gli attributi vengono richiesti agli utenti solo quando si registrano per la prima volta.

  6. Seleziona Crea. Il nuovo flusso utente viene visualizzato nell'elenco Flussi utente. Se necessario, aggiornare la pagina.

Per abilitare la reimpostazione della password self-service, seguire la procedura descritta nell'articolo Abilitare la reimpostazione della password self-service.

Associare l'applicazione Android .NET MAUI al flusso utente

Anche se molte applicazioni possono essere associate al flusso utente, è possibile associare un solo flusso utente a ciascuna applicazione. Un flusso utente consente di configurare l'esperienza utente per applicazioni specifiche. Ad esempio, è possibile configurare un flusso utente che richiede agli utenti di eseguire l’accesso o registrarsi con l'indirizzo di posta elettronica.

  1. Nel menu della barra laterale selezionare Identità.

  2. Selezionare Identità esterne, quindi Flussi utente.

  3. Nella pagina Flussi utente selezionare il nome del flusso utente creato in precedenza, ad esempio SignInSignUpSample.

  4. In Usa selezionare Applicazioni.

  5. Seleziona Aggiungi applicazione.

  6. Selezionare l'applicazione dall'elenco, ad esempio ciam-client-app o usare la casella di ricerca per trovare l'applicazione e quindi selezionarla.

  7. Scegli Seleziona.

Clonare o scaricare un'applicazione Android .NET MAUI di esempio

Per ottenere il codice di esempio dell'applicazione Android .NET MAUI, scaricare il file .zip o clonare l'applicazione Android .NET MAUI di esempio da GitHub eseguendo il comando seguente:

git clone https://github.com/Azure-Samples/ms-identity-ciam-dotnet-tutorial.git

Configurare l'applicazione Android .NET MAUI di esempio

  1. In Visual Studio, aprire il file ms-identity-ciam-dotnet-tutorial-main/1-Authentication/2-sign-in-maui/appsettings.json.
  2. Trovare il segnaposto:
    1. Enter_the_Tenant_Subdomain_Here e sostituirlo con il sottodominio directory (tenant). Ad esempio, se il dominio primario del tenant è contoso.onmicrosoft.com, usare contoso. Se non si dispone del nome del tenant, scoprire come leggere i dettagli del tenant.
    2. Enter_the_Application_Id_Here e sostituirlo con l'ID applicazione (client) dell’app registrata in precedenza.
  3. In Visual Studio, aprile il file ms-identity-ciam-dotnet-tutorial-main/1-Authentication/2-sign-in-maui/Platforms/Android/AndroidManifest.xml.
  4. Trovare il segnaposto:
    1. Enter_the_Application_Id_Here e sostituirlo con l'ID applicazione (client) dell’app registrata in precedenza.

Eseguire e testare l'applicazione Android .NET MAUI di esempio

Le app .NET MAUI sono progettate per l’esecuzione in più sistemi operativi e dispositivi. È necessario selezionare la destinazione con cui si desidera testare ed eseguire il debug dell'app.

Impostare la destinazione di debug nella barra degli strumenti di Visual Studio sul dispositivo con cui si vuole eseguire il debug e il test. La procedura seguente mostra come impostare la destinazione di debug in Windows:

  1. Selezionare l'elenco a discesa Destinazione del debug.
  2. Selezionare Emulatori Android.
  3. Selezionare dispositivo emulatore.

Eseguire l'app premendo F5 o selezionando il pulsante di riproduzione nella parte superiore di Visual Studio.

  1. È ora possibile testare l'app Android .NET MAUI di esempio. Dopo aver eseguito l'app, la finestra dell'app Android viene visualizzata in un emulatore:

    Screenshot del pulsante di accesso nell'applicazione Android.

  2. Nella finestra Android visualizzata, selezionare il pulsante Accedi. Verrà visualizzata una finestra del browser e all’utente verrà richiesto di effettuare l'accesso.

    Screenshot che mostra la richiesta all’utente di immettere le credenziali nell'applicazione Android.

    Durante il processo di accesso, viene richiesto di concedere varie autorizzazioni (per consentire all'applicazione di accedere ai dati dell’utente). Al termine dell'accesso e del consenso, la schermata dell'applicazione visualizza la pagina principale.

    Screenshot della pagina principale nell'applicazione Android visualizzata dopo l'accesso.

Passaggi successivi