Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Libreria di Autenticazione Microsoft (MSAL) Python supporta due tipi di applicazioni client: applicazioni client pubbliche e applicazioni client riservate. I tipi di client sono distinti in base alla possibilità di eseguire l'autenticazione in modo sicuro con il server di autorizzazione e di conservare informazioni sensibili e di prova dell'identità in modo che non possano essere accessibili o noti a un utente nell'ambito dell'accesso. Questo articolo è incentrato su come inizializzare queste applicazioni usando MSAL Python.
Prerequisiti
Comprendere i concetti di base delle applicazioni client pubbliche e riservate.
Creare un'istanza di un'applicazione
È necessaria una registrazione dell'app per avviare un'app. Registrare un'app nel Interfaccia di amministrazione di Microsoft Entra. Dalla pagina di registrazione è necessario:
- L'identificatore del client dell'applicazione. Si tratta di una stringa sotto forma di GUID.
- L'URL del provider di identità (l'istanza) e i destinatari di accesso dell'applicazione. Questi due parametri sono noti collettivamente come autorità.
- Se necessario, l'identificatore del tenant, anch'esso un GUID, se si sta scrivendo un'applicazione aziendale limitata alla sola organizzazione (nota anche come applicazione a tenant singolo).
- Se si sta creando un'app client riservata, creare un segreto dell'applicazione sotto forma di stringa o certificato.
- Per le applicazioni web, imposta l'URL di reindirizzamento che Microsoft Entra ID usa per restituire il codice. Per le applicazioni desktop, aggiungere
http://localhostse non si fa affidamento sui broker di autenticazione.
Crea un'istanza di un'applicazione client pubblica
Le applicazioni client pubbliche usano la PublicClientApplication classe .
import msal
app = msal.PublicClientApplication(
"client_id",
authority="authority",
)
Creare un'istanza di un'applicazione client confidenziale
Le applicazioni client riservate usano la ConfidentialClientApplication classe .
import msal
app = msal.ConfidentialClientApplication(
"client_id",
authority="authority",
client_credential="client_secret",
)
Caching
Quando si crea un'istanza di un'applicazione client, è possibile usare due parametri per definire le preferenze di memorizzazione nella cache. Questi parametri sono: token_cache e http_cache.
- token_cache imposta la cache dei token usata dall'istanza dell'applicazione client. Per impostazione predefinita, viene creata e usata una cache in memoria. Per altre informazioni, vedere Memorizzazione nella cache dei token in MSAL Python.
- http_cache è disponibile in MSAL Python versione 1.16+. Questo memorizza automaticamente nella cache un numero limitato di risposte HTTP nonken, in modo che le istanze PublicClientApplication e ConfidentialClientApplication di lunga durata siano più efficienti e reattive in alcune situazioni. Se il parametro http_cache non viene specificato, MSAL usa un dict in memoria. Se la tua app è un'app da riga di comando (CLI), probabilmente vorrai mantenere persistente il tuo http_cache tra diverse esecuzioni della CLI. Per altre informazioni, vedere la guida di riferimento.