Usare un'identità gestita
Questo articolo illustra come creare e usare un'identità gestita in Azure Web PubSub.
Importante
Azure Web PubSub può supportare una sola identità gestita. È possibile aggiungere un'identità assegnata dal sistema o un'identità assegnata dall'utente.
Aggiungere un'identità assegnata dal sistema
Per configurare un'identità gestita nel portale di Azure, creare un'istanza di Azure Web PubSub e attivare la funzionalità.
Nel portale di Azure creare una risorsa Web PubSub. Passare alla risorsa nel portale.
Nel menu a sinistra selezionare Identità.
Selezionare la scheda Assegnata dal sistema e quindi impostare Stato su Sì. Seleziona Salva.
Aggiungere un'identità assegnata dall'utente
Per creare una risorsa Web PubSub usando un'identità assegnata dall'utente, creare l'identità e quindi aggiungere al servizio l'identificatore della risorsa dell'identità.
Creare una risorsa dell'identità gestita assegnata dall'utente.
Nel portale di Azure creare una risorsa Web PubSub. Passare alla risorsa nel portale.
Nel menu a sinistra selezionare Identità.
Selezionare la scheda Assegnata dall'utente e quindi selezionare Aggiungi.
Cercare l'identità creata in precedenza e selezionarla. Selezionare Aggiungi.
Usare un'identità gestita negli scenari di eventi client
Azure Web PubSub è un servizio completamente gestito, perciò non è possibile usare un'identità gestita per ottenere manualmente i token. Al contrario, quando Web PubSub invia eventi a un gestore eventi, usa l'identità gestita per ottenere un token di accesso. Il servizio imposta quindi il token di accesso nell'intestazione Authorization
della richiesta HTTP.
Configurare l'autenticazione dell'identità gestita per un gestore eventi
Aggiungere un'identità assegnata dal sistema o un'identità assegnata dall'utente.
Passare a Configurare le impostazioni dell'hub e aggiungere o modificare un gestore eventi upstream.
In Autenticazioneselezionare Usa identità gestita, quindi selezionare la casella di controllo Specifica il gruppo di destinatari del token rilasciato. Il gruppo di destinatari diventa l'attestazione
aud
nel token di accesso. L'attestazione può essere parte della convalida per il gestore eventi.Per l'autenticazione, è possibile scegliere una di queste opzioni:
- Usare un'applicazione Microsoft Entra esistente. Viene usato l'ID applicazione dell'applicazione scelta.
- Usare l'URI ID applicazione dell'entità servizio.
Importante
L'uso di una risorsa vuota acquisisce effettivamente una destinazione token per Microsoft Graph. Attualmente, Microsoft Graph abilita la crittografia dei token, quindi non è supportata l'autenticazione del token da parte di un'applicazione se non con Microsoft Graph. È consigliabile creare sempre un'entità servizio per rappresentare la destinazione upstream. Impostare il valore ID applicazione o URI ID applicazione per l'entità servizio creata.
Autenticazione in un'app Funzioni di Azure
È possibile impostare facilmente la convalida dell'accesso per un'app Funzioni senza apportare modifiche al codice.
Nel portale di Azure passare all'app Funzioni.
Nel menu a sinistra selezionare Autenticazione.
Selezionare Aggiungi un provider di identità.
Nella scheda Dati principali, in Provider di identità, selezionare Microsoft.
In Azione da eseguire quando la richiesta non è autenticata selezionare Accedi con Microsoft Entra ID.
L'opzione per creare una nuova registrazione è selezionata per impostazione predefinita. È possibile modificare il nome della registrazione. Per altre informazioni su come abilitare un provider Microsoft Entra, vedere Configurare il servizio app di Azure o l'app Funzioni di Azure per l'uso di un accesso con Microsoft Entra ID.
Passare alla risorsa Web PubSub e aggiungere un'identità assegnata dal sistema o un'identità assegnata dall'utente.
Nel menu a sinistra della risorsa Web PubSub selezionare Impostazioni.
Selezionare Modifica per modificare le impostazioni dell'hub, quindi selezionare Modifica per modificare le impostazioni del gestore eventi. In Autenticazione selezionare Usa identità gestita e selezionare la casella di controllo Seleziona dalle applicazioni esistenti. Selezionare l'applicazione creata.
Dopo aver configurato queste impostazioni, l'app Funzioni rifiuta le richieste che non hanno un token di accesso nell'intestazione.
Convalidare un token di accesso
Anche se non si usa la funzionalità App Web di Servizio app di Azure o Funzioni di Azure, è possibile convalidare il token.
Il token nell'intestazione Authorization
è un token di accesso di Microsoft Identity Platform.
Per convalidare un token di accesso, l'app deve convalidare anche il gruppo di destinatari e i token di firma. I token di firma devono essere convalidati in base ai valori contenuti nel documento di individuazione OpenID. Per un esempio, vedere la versione indipendente dal tenant del documento.
Il middleware Microsoft Entra include funzionalità predefinite per la convalida dei token di accesso. È possibile esplorare gli esempi per trovarne uno scritto nel linguaggio che si vuole usare.
Sono disponibili librerie ed esempi di codice che illustrano come gestire la convalida dei token. Sono disponibili anche diverse librerie di partner open source per la convalida dei token JSON Web (JWT). È disponibile almeno un'opzione per ogni piattaforma e linguaggio. Per altre informazioni sulle librerie di autorizzazione Microsoft Entra e sui codici di esempio, vedere Librerie di autenticazione di Microsoft Identity Platform.
Se il gestore eventi è ospitato in Funzioni di Azure o app Web, un modo semplice consiste nel configurare l'accesso a Microsoft Entra.
Usare un'identità gestita come riferimento all'insieme di credenziali delle chiavi
Web PubSub può accedere a un insieme di credenziali delle chiavi per ottenere un segreto usando un'identità gestita.
Aggiungere un'identità assegnata dal sistema o un'identità assegnata dall'utente per Azure Web PubSub.
Nell'insieme di credenziali delle chiavi, concedere le autorizzazioni di lettura dei segreti per l'identità gestita usando i criteri di accesso. Per altre informazioni, vedere Assegnare criteri di accesso all'insieme di credenziali delle chiavi nel portale di Azure.
Attualmente, questa funzionalità può essere usata nello scenario seguente:
- Usare la sintassi
{@Microsoft.KeyVault(SecretUri=<secret-identity>)}
per ottenere segreti da un insieme di credenziali delle chiavi nell'impostazione del modello di URL del gestore eventi.