Clienttoepassingen

Microsoft Authentication Library (MSAL) Python ondersteunt twee typen clienttoepassingen: openbare clienttoepassingen en vertrouwelijke clienttoepassingen. De clienttypen worden onderscheiden door hun mogelijkheid om veilig te verifiëren met de autorisatieserver en om gevoelige identiteitsgegevens te bewaren, zodat deze niet kunnen worden geopend of bekend zijn bij een gebruiker binnen het bereik van de toegang. In dit artikel wordt uitgelegd hoe u deze toepassingen initialiseert met behulp van MSAL Python.

Prerequisites

Inzicht in de basisconcepten van openbare en vertrouwelijke clienttoepassingen.

Een toepassing instantiëren

U hebt een app-registratie nodig om een app te starten. Registreer een app in de Microsoft Entra-beheercentrum. Op de registratiepagina hebt u het volgende nodig:

  • De client-id van de applicatie. Dit is een tekenreeks in de vorm van een GUID.
  • De URL van de identiteitsprovider (de instantie) en de aanmeldingsdoelgroep voor uw toepassing. Deze twee parameters worden gezamenlijk de autoriteit genoemd.
  • Indien nodig, de tenant-id (ook een GUID) als u een line-of-business-toepassing schrijft die is afgestemd op alleen uw organisatie (ook wel een toepassing met één tenant genoemd).
  • Als u een vertrouwelijke client-app bouwt, maakt u een toepassingsgeheim in de vorm van een tekenreeks of certificaat.
  • Stel voor webtoepassingen de omleidings-URL in die Microsoft Entra ID gebruikt om de code te retourneren. Voeg voor bureaubladtoepassingen toe http://localhost als u niet vertrouwt op verificatiebrokers.

Een openbare clienttoepassing instantiëren

Openbare clienttoepassingen maken gebruik van de PublicClientApplication klasse.

import msal

app = msal.PublicClientApplication(
    "client_id",
    authority="authority",
    )

Een vertrouwelijke clienttoepassing instantiëren

Vertrouwelijke clienttoepassingen maken gebruik van de ConfidentialClientApplication klasse.

import msal

app = msal.ConfidentialClientApplication(
    "client_id",
    authority="authority",
    client_credential="client_secret",
    )

Caching

Wanneer u een clienttoepassing instantiëren, zijn er twee parameters die u kunt gebruiken om uw cachevoorkeuren te definiëren. Deze parameters zijn: token_cache en http_cache.

  • token_cache stelt de tokencache in die door de instantie van de clienttoepassing wordt gebruikt. Standaard wordt er een cache in het geheugen gemaakt en gebruikt. Zie tokencaching in MSAL Python voor meer informatie.
  • http_cache is beschikbaar in MSAL Python versie 1.16+. Hiermee wordt automatisch een beperkt aantal niet-token http-antwoorden in de cache opgeslagen, zodat exemplaren met een lange levensduur van PublicClientApplication en ConfidentialClientApplication in sommige situaties beter presterend en responsief zijn. Als de parameter http_cache niet is opgegeven, gebruikt MSAL een in-memory dict. Als uw app een opdrachtregel-app (CLI) is, wilt u uw http_cache behouden voor verschillende CLI-uitvoeringen. Zie de referentiehandleiding voor meer informatie.

Volgende stappen 

Tokens verkrijgen voor uw app.