Consentire agli utenti di accedere nell'app macOS (Swift) di esempio con l'autenticazione nativa
Questa guida mostra come eseguire un'applicazione macOS di esempio che dimostra gli scenari di iscrizione e accesso con Microsoft Entra per ID esterno.
In questo articolo vengono illustrate le operazioni seguenti:
- Registrare l'applicazione nel tenant esterno.
- Abilitare il client pubblico e i flussi di autenticazione nativi.
- Creare il flusso utente nel tenant esterno.
- Associare l'applicazione al flusso utente.
- Aggiornare un'applicazione per macOS nativa di esempio per usare i dettagli del tenant esterno.
- Eseguire e testare l'applicazione macOS nativa di esempio.
- Xcode
- Un tenant esterno. Se non si dispone già di una versione, iscriversi per la versione di prova gratuita
Per abilitare l'applicazione all'accesso utente con Microsoft Entra, è necessario che Microsoft Entra per ID esterno riconosca 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 spiega come registrare l'app nell'Interfaccia di amministrazione di Microsoft Entra:
Accedere all’Interfaccia di amministrazione di Microsoft Entra almeno come sviluppatore di applicazioni.
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.
Passare a Identità>Applicazioni>Registrazioni app.
Seleziona + Nuova registrazione.
Nella pagina Registra un'applicazione che viene visualizzata:
- Immettere un nome significativo per l’applicazione da mostrare agli utenti dell'app, ad esempio ciam-client-app.
- In Tipi di account supportati selezionare Account solo in questa directory organizzativa.
Selezionare Registra.
Al termine della registrazione, viene visualizzato il riquadro Panoramica dell'applicazione. Registrare l'ID applicazione (client) da usare nel codice sorgente dell'applicazione.
Per specificare che l'app è un client pubblico e può usare l'autenticazione nativa, abilitare i flussi del client pubblico e dell’autenticazione nativa:
- Nella pagina Registrazioni app, selezionare la registrazione dell'app per cui si vuole abilitare i flussi del client pubblico e dell’autenticazione nativa.
- In Gestisci selezionare Autenticazione.
- In Impostazioni avanzate, consentire i flussi del client pubblico:
- Per Abilita i flussi per dispositivi mobili e desktop seguenti, selezionare Sì.
- Per Abilita autenticazione nativa, selezionare Sì.
- Selezionare il pulsante Salva.
Nella pagina Registrazioni app, selezionare l'applicazione creata (ad esempio ciam-client-app) per aprire la relativa pagina Panoramica.
In Gestisci selezionare Autorizzazioni API. Nell'elenco Autorizzazioni configurate all'applicazione è stata assegnata l'autorizzazione User.Read. Tuttavia, poiché il tenant è esterno, gli utenti consumer non possono fornire il consenso a questa autorizzazione. L'amministratore deve fornire il consenso a questa autorizzazione per conto di tutti gli utenti nel tenant:
- Selezionare Concedi consenso amministratore per <nome del tenant>, quindi selezionare Sì.
- Selezionare Aggiorna, quindi verificare che Concesso per <nome del tenant> sia visualizzato in Stato per entrambi gli ambiti.
Per creare un flusso utente, attenersi alla procedura riportata di seguito.
Accedere all’Interfaccia di amministrazione di Microsoft Entra almeno come sviluppatore di applicazioni.
Se si ha accesso a più tenant, assicurarsi di usare la directory che contiene il tenant esterno:
- Selezionare l'icona Directory e sottoscrizioni nella barra degli strumenti.
- Nella pagina Impostazioni del portale | Directory e sottoscrizioni, trovare la directory del tenant esterno nell'elenco Nome directory e quindi selezionare Cambia.
Nel menu della barra laterale selezionare Identità.
Selezionare Identità esterne>Flussi utente.
Selezionare + Nuovo flusso utente.
Nella pagina Crea:
Immettere un nome per il flusso utente, ad esempio SignInSignUpSample.
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 e-mail e la password.
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 e accedere usando un indirizzo di posta elettronica come nome di accesso e una password come credenziale di primo fattore.
- Invia passcode monouso tramite e-mail: consente ai nuovi utenti di registrarsi ed eseguire l’accesso usando un indirizzo di posta elettronica come nome di accesso e la passcode monouso ricevuta tramite e-mail come credenziale di primo fattore. Per rendere disponibile questa opzione a livello di flusso utente, assicurarsi di abilitare il passcode monouso della posta elettronica (OTP) a livello di tenant. A tale scopo, selezionare Tutti i provider di identità e quindi, per Invia passcode monouso tramite e-mail, selezionare Configurato, l'opzione Sì e infine selezionare Salva.
In Attributi utente, è possibile scegliere gli attributi che si vuole raccogliere dall'utente al momento della registrazione. Per questa guida, selezionare Paese/area geografica e Città.
Seleziona Crea. Il nuovo flusso utente viene visualizzato nell'elenco Flussi utente. Se necessario, aggiornare la pagina.
Per consentire agli utenti del cliente di visualizzare l'esperienza di iscrizione o di accesso quando usano l'app, è necessario associare l'app a un flusso utente. Sebbene sia possibile associare molte applicazioni al flusso utente, è possibile associare un solo flusso utente a una singola applicazione.
Nel menu della barra laterale selezionare Identità.
Selezionare Identità esterne, quindi Flussi utente.
Nella pagina Flussi utente selezionare il nome del flusso utente creato in precedenza, ad esempio SignInSignUpSample.
In Usa selezionare Applicazioni.
Seleziona Aggiungi applicazione.
Selezionare l'applicazione dall'elenco, ad esempio ciam-client-app o usare la casella di ricerca per trovare l'applicazione e selezionarla.
Scegli Seleziona.
Dopo aver associato l'app a un flusso utente, è possibile testare il flusso utente simulando l'esperienza di iscrizione o di accesso di un utente con l'applicazione dall'interfaccia di amministrazione di Microsoft Entra. A tale scopo, usare la procedura descritta in Testare il flusso utente di iscrizione e accesso.
Aprire Terminale e passare alla directory in cui si vuole conservare il codice.
Clonare l'applicazione macOS da GitHub eseguendo il comando seguente:
git clone https://github.com/Azure-Samples/ms-identity-ciam-native-auth-macos-sample.git
Passare alla directory in cui è stato clonato il repository:
cd ms-identity-ciam-native-auth-macos-sample
In Xcode aprire il progetto NativeAuthSampleApp.xcodeproj.
Aprire il file NativeAuthSampleApp/Configuration.swift.
Trovare il segnaposto:
Enter_the_Application_Id_Here
e sostituirlo con l'ID applicazione (client) dell’app registrata in precedenza.Enter_the_Tenant_Subdomain_Here
e sostituirlo con il sottodominio della directory (tenant). Ad esempio, se il dominio primario del tenant ècontoso.onmicrosoft.com
, usare contoso. Se il sottodominio del tenant non è disponibile, vedere come leggere i dettagli del tenant.
Nota
Ricordarsi di selezionare uno schema per la compilazione e la destinazione in cui eseguire i prodotti compilati. Ogni schema contiene un elenco di dispositivi reali o simulati che rappresentano le destinazioni disponibili.
Per compilare ed eseguire il codice, selezionare Run dal menu Product in Xcode. Al termine della compilazione, Xcode avvierà l'app di esempio nel simulatore.
Questa guida testa l'utilizzo di e-mail e password. Immettere un indirizzo e-mail e una password validi, selezionare Iscrivitie avvia la schermata del codice di invio:
Dopo aver immesso l'indirizzo di posta elettronica nella schermata precedente, l'applicazione invierà un codice di verifica. Dopo l’invio del codice ricevuto, l'applicazione torna alla schermata precedente e vi accede automaticamente.