Configurare l'accesso Single Sign-On usando Microsoft Entra ID for Spring Cloud Gateway e il portale API
Nota
I piani Basic, Standard ed Enterprise saranno deprecati a partire dalla metà di marzo 2025, con un periodo di ritiro di 3 anni. È consigliabile eseguire la transizione ad App Azure Container. Per altre informazioni, vedere l'annuncio di ritiro di Azure Spring Apps.
Il piano Standard a consumo e dedicato sarà deprecato a partire dal 30 settembre 2024, con un arresto completo dopo sei mesi. È consigliabile eseguire la transizione ad App Azure Container. Per altre informazioni, vedere Eseguire la migrazione del consumo di Azure Spring Apps Standard e del piano dedicato alle app Azure Container.
Questo articolo si applica a: ❎ Basic/Standard ✅ Enterprise
Questo articolo illustra come configurare l'accesso Single Sign-On (SSO) per Spring Cloud Gateway o il portale API usando l'ID Microsoft Entra come provider di identificazione OpenID.
Prerequisiti
- Un'istanza del piano Enterprise con Spring Cloud Gateway o il portale API abilitato. Per altre informazioni, vedere Avvio rapido: Creare e distribuire app in Azure Spring Apps usando il piano Enterprise.
- Autorizzazioni sufficienti per gestire le applicazioni Microsoft Entra.
Per abilitare l'accesso SSO per Spring Cloud Gateway o il portale API, sono necessarie le quattro proprietà seguenti configurate:
SSO, proprietà | Configurazione di Microsoft Entra |
---|---|
clientId | Vedi Registrare l'app |
clientSecret | Vedere Creare un segreto client |
ambito | Vedere Configurare l'ambito |
issuerUri | Vedere Generare l'URI dell'autorità di certificazione |
Le proprietà verranno configurate in Microsoft Entra ID nei passaggi seguenti.
Assegnare un endpoint per Spring Cloud Gateway o portale API
Prima di tutto, è necessario ottenere l'endpoint pubblico assegnato per Spring Cloud Gateway e il portale API seguendo questa procedura:
- Aprire l'istanza del servizio piano enterprise nel portale di Azure.
- Selezionare Spring Cloud Gateway o il portale API in Componenti VMware Tanzu nel menu a sinistra.
- Selezionare Sì accanto a Assegna endpoint.
- Copiare l'URL da usare nella sezione successiva di questo articolo.
Creare una registrazione dell'applicazione Microsoft Entra
Registrare l'applicazione per stabilire una relazione di trust tra l'app e Microsoft Identity Platform attenendosi alla procedura seguente:
- Nella schermata Home selezionare Microsoft Entra ID nel menu a sinistra.
- Selezionare Registrazioni app in Gestisci, quindi selezionare Nuova registrazione.
- Immettere un nome visualizzato per l'applicazione in Nome, quindi selezionare un tipo di account da registrare in Tipi di account supportati.
- In URI di reindirizzamento (facoltativo) selezionare Web, quindi immettere l'URL dalla sezione precedente nella casella di testo. L'URI di reindirizzamento è il percorso in cui Microsoft Entra ID reindirizza il client e invia i token di sicurezza dopo l'autenticazione.
- Selezionare Registra per completare la registrazione dell'applicazione.
Al termine della registrazione, verrà visualizzato l'ID applicazione (client) nella schermata Panoramica della pagina Registrazioni app*.
Aggiungere un URI di reindirizzamento dopo la registrazione dell'app
È anche possibile aggiungere URI di reindirizzamento dopo la registrazione dell'app seguendo questa procedura:
- Nella panoramica dell'applicazione, in Gestisci nel menu a sinistra selezionare Autenticazione.
- Selezionare Web, quindi selezionare Aggiungi URI in URI di reindirizzamento.
- Aggiungere un nuovo URI di reindirizzamento e quindi selezionare Salva.
Per altre informazioni sulla registrazione delle applicazioni, vedere Guida introduttiva: Registrare un'applicazione con Microsoft Identity Platform.
Aggiungere un segreto client
L'applicazione usa un segreto client per autenticarsi nel flusso di lavoro SSO. È possibile aggiungere un segreto client seguendo questa procedura:
- Nella panoramica dell'applicazione, in Gestisci nel menu a sinistra selezionare Certificati e segreti.
- Selezionare Segreti client e quindi Nuovo segreto client.
- Immettere una descrizione per il segreto client, quindi impostare una data di scadenza.
- Selezionare Aggiungi.
Avviso
Ricordarsi di salvare il segreto client in un luogo sicuro. Non è possibile recuperarlo dopo aver lasciato questa pagina. Il segreto client deve essere fornito con l'ID client quando si accede come applicazione.
Configurare l'ambito
La scope
proprietà di SSO è un elenco di ambiti da includere nei token di identità JWT. Vengono spesso definite autorizzazioni. Identity Platform supporta diversi ambiti OpenID Connect, ad esempio openid
, email
e profile
. Per altre informazioni, vedere la sezione Ambiti openID Connect di Ambiti e autorizzazioni in Microsoft Identity Platform.
Configurare l'URI dell'autorità emittente
L'URI dell'autorità di certificazione è l'URI asserto come identificatore dell'autorità di certificazione. Ad esempio, se l'URI dell'autorità di certificazione fornito è https://example.com
, verrà effettuata una richiesta di configurazione del provider OpenID a https://example.com/.well-known/openid-configuration
.
L'URI dell'autorità di certificazione di Microsoft Entra ID è simile a <authentication-endpoint>/<Your-TenantID>/v2.0
. Sostituire <authentication-endpoint>
con l'endpoint di autenticazione per l'ambiente cloud (ad esempio, https://login.microsoftonline.com
per Azure globale) e sostituire <Your-TenantID>
con l'ID directory (tenant) in cui è stata registrata l'applicazione.
Configurare SSO
Dopo aver configurato l'applicazione Microsoft Entra, è possibile configurare le proprietà SSO di Spring Cloud Gateway o del portale API seguendo questa procedura:
- Selezionare Spring Cloud Gateway o portale API in Componenti VMware Tanzu nel menu a sinistra e quindi selezionare Configurazione.
- Immettere i
Scope
campi ,Client Id
,Client Secret
eIssuer URI
nei campi appropriati. Separare più ambiti con una virgola. - Selezionare Salva per abilitare la configurazione dell'accesso Single Sign-On.
Nota
Dopo aver configurato le proprietà SSO, ricordarsi di abilitare l'accesso SSO per le route di Spring Cloud Gateway impostando ssoEnabled=true
. Per altre informazioni, vedere Configurazione della route.