Klientské aplikace

Identity a ověřování Microsoftu (MSAL) Python podporuje dva typy klientských aplikací: veřejné klientské aplikace a důvěrné klientské aplikace. Typy klientů jsou odlišeny schopností zabezpečeného ověřování u autorizačního serveru a uchovávání citlivých informací o ověření identity, aby k nim uživatel neměl přístup ani je v rámci jeho přístupu nepoznal. Tento článek se zaměřuje na inicializaci těchto aplikací pomocí knihovny MSAL Python.

Předpoklady

Seznamte se se základními koncepty veřejných a důvěrných klientských aplikací.

Vytvoření instance aplikace

K zahájení aplikace vyžadujete registraci aplikace. Zaregistrujte aplikaci v Centrum pro správu Microsoft Entra. Na stránce registrace potřebujete:

  • Identifikátor klienta aplikace. Jedná se o řetězec ve formátu GUID.
  • Adresa URL zprostředkovatele identity (instance) a cílová skupina přihlašování pro vaši aplikaci. Tyto dva parametry se souhrnně označují jako autorita.
  • V případě potřeby identifikátor tenanta (také identifikátor GUID), pokud píšete podnikovou aplikaci určenou pouze pro vaši organizaci (označovanou také jako jednotenantová aplikace).
  • Pokud vytváříte důvěrnou klientskou aplikaci, vytvořte tajný kód aplikace ve formě řetězce nebo certifikátu.
  • U webových aplikací nastavte adresu URL pro přesměrování, kterou Microsoft Entra ID používá k vrácení kódu. V případě desktopových aplikací přidejte http://localhost , pokud se nespoléháte na zprostředkovatele ověřování.

Vytvoření instance veřejné klientské aplikace

Veřejné klientské aplikace používají PublicClientApplication třídu.

import msal

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

Vytvoření instance důvěrné klientské aplikace

Důvěrné klientské aplikace používají ConfidentialClientApplication třídu.

import msal

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

Caching

Při vytváření instance klientské aplikace existují dva parametry, které můžete použít k definování předvoleb ukládání do mezipaměti. Tyto parametry jsou: token_cache a http_cache.

  • token_cache nastaví mezipaměť tokenů používanou instancí klientské aplikace. Ve výchozím nastavení se vytvoří a použije mezipaměť v paměti. Další informace najdete v tématu Ukládání tokenů do mezipaměti v msAL Python.
  • http_cache je k dispozici v MSAL Python verze 1.16 nebo novější. Tím se automaticky ukládá do mezipaměti určitý omezený počet HTTP odpovědí, které neobsahují tokeny, takže dlouho běžící instance PublicClientApplication a ConfidentialClientApplication budou v některých situacích výkonnější a pohotovější. Pokud není parametr http_cache zadán, MSAL použije slovník v paměti. Pokud se jedná o aplikaci příkazového řádku (CLI), měli byste zachovat http_cache v různých spuštěních rozhraní příkazového řádku. Další informace najdete v referenční příručce.

Další kroky

Získejte tokeny pro vaši aplikaci.