Eseguire l'autenticazione delle richieste su più tenant

Quando si crea un'applicazione multi-tenant, potrebbe essere necessario gestire richieste di autenticazione per risorse in tenant diversi. Uno scenario comune è quando una macchina virtuale in un tenant deve essere aggiunta a una rete virtuale in un altro tenant. Azure Resource Manager fornisce un valore di intestazione per l'archiviazione dei token ausiliari per autenticare le richieste in tenant diversi.

Valori di intestazione per l'autenticazione

La richiesta include i valori di intestazione di autenticazione seguenti:

Nome intestazione Descrizione Valore di esempio
Autorizzazione Token primario Bearer <primary-token>
x-ms-authorization-auxiliary Token ausiliari Bearer <auxiliary-token1>, EncryptedBearer <ausiliario-token2>, Bearer <ausiliario-token3>

L'intestazione ausiliaria può contenere fino a tre token ausiliari.

Nel codice dell'app multi-tenant, ottenere il token di autenticazione per altri tenant e archiviarli nelle intestazioni ausiliari. L'utente o l'applicazione devono essere stati invitati come guest in altri tenant.

Elaborazione della richiesta

Quando l'app invia una richiesta a Resource Manager, la richiesta viene eseguita con l'identità dal token primario. Il token primario deve essere valido e non scaduto. Questo token deve provenire da un tenant in grado di gestire la sottoscrizione.

Quando la richiesta fa riferimento a una risorsa da un altro tenant, Resource Manager controlla i token ausiliari per determinare se è possibile elaborare la richiesta. Tutti i token ausiliari nell'intestazione devono essere validi e non scaduti. In presenza di token scaduti, Resource Manager restituisce un codice di risposta 401. La risposta include l'ID client e l'ID tenant dal token non valido. Se l'intestazione ausiliaria contiene un token valido per il tenant, viene elaborata la richiesta su più tenant.

Passaggi successivi