Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Microsofts autentiseringsbibliotek (MSAL) Python stöder två typer av klientprogram: offentliga klientprogram och konfidentiella klientprogram. Klienttyperna särskiljs av deras möjlighet att autentisera säkert med auktoriseringsservern och att lagra känslig identitetsbevisinformation så att den inte kan nås eller kännas till för en användare inom ramen för dess åtkomst. Den här artikeln fokuserar på hur du initierar dessa program med hjälp av MSAL Python.
Förutsättningar
Förstå de grundläggande begreppen för offentliga och konfidentiella klientprogram.
Skapa en applikation
Du behöver en appregistrering för att starta en app. Registrera en app i Microsoft Entra administrationscenter. På registreringssidan behöver du:
- Applikationsklientens identifierare. Det här är en sträng i form av ett GUID.
- Identitetsleverantörens URL (instansen) och inloggningsmålgruppen för din applikation. Dessa två parametrar kallas tillsammans för auktoriteten.
- Om det behövs: klientorganisations-ID:t (också ett GUID) om du skriver ett verksamhetsprogram som är avgränsat till endast din organisation (även kallat ett program med en klientorganisation).
- Om du skapar en konfidentiell klientapp skapar du en programhemlighet i form av en sträng eller ett certifikat.
- För webbprogram anger du den omdirigerings-URL som Microsoft Entra ID använder för att returnera koden. För skrivbordsprogram lägger du till
http://localhostom du inte förlitar dig på autentiseringskoordinatorer.
Instansiera ett offentligt klientprogram
Offentliga klientprogram använder PublicClientApplication klassen .
import msal
app = msal.PublicClientApplication(
"client_id",
authority="authority",
)
Instansiera ett konfidentiellt klientprogram
Konfidentiella klientprogram använder ConfidentialClientApplication klassen.
import msal
app = msal.ConfidentialClientApplication(
"client_id",
authority="authority",
client_credential="client_secret",
)
Caching
När du instansierar ett klientprogram finns det två parametrar som du kan använda för att definiera dina inställningar för cachelagring. Dessa parametrar är: token_cache och http_cache.
- token_cache anger den tokencache som används av klientprograminstansen. Som standard skapas och används en minnesintern cache. Mer information finns i tokencachelagring i MSAL Python.
- http_cache finns i MSAL Python version 1.16+. Detta cachelagrar automatiskt ett visst begränsat antal icke-token http-svar, så att långlivade PublicClientApplication - och ConfidentialClientApplication-instanser skulle vara mer högpresterande och dynamiska i vissa situationer. Om parametern http_cache inte anges använder MSAL en minnesintern diktering. Om din app är en kommandoradsapp (CLI) vill du spara dina http_cache mellan olika CLI-körningar. Mer information finns i referensguiden.