Přihlašovací údaje klienta

V Python MSAL existují dva typy přihlašovacích údajů klienta:

  • Tajné kódy aplikací
  • Certifikáty

Přihlašovací údaje klienta s tajným kódem aplikace

Během registrace důvěrné klientské aplikace s Microsoft Entra ID se vygeneruje tajný klíč klienta (druh hesla aplikace).

Registrace tajných klíčů klienta pomocí portálu pro registraci aplikací

Správa přihlašovacích údajů klienta probíhá na stránce certifikátů a tajných kódů pro aplikaci:

image

  • Tajný klíč aplikace (také pojmenovaný tajný klíč klienta) je generován Microsoft Entra ID při registraci důvěrné klientské aplikace, když vyberete Nový tajný klíč klienta. V tomto okamžiku musíte před výběrem možnosti Uložit zkopírovat tajný řetězec do schránky, abyste ho mohli použít ve své aplikaci. Tento řetězec se vám v budoucnu znovu nezobrazí.

Použití tajných kódů klienta

V msAL Python přihlašovací údaje klienta jsou podobné tomu, co jsou v Python ADAL, s výjimkou toho, že přihlašovací údaje klienta jsou předány jako parametr při konstrukci aplikace. V tomto případě se tajný klíč klienta předává jako parametr. Poté, co je důvěrná klientská aplikace vytvořena, se zavolá acquire_token_for_client s parametrem scope.

Přihlašovací údaje klienta s certifikátem

Když je aplikace zaregistrovaná v Microsoft Entra ID, nahraje veřejný klíč certifikátu. Při vytváření aplikace se thumbprint a private_key_file předávají jako přihlašovací údaj klienta. Když bude klientská aplikace chtít získat token, bude muset volat metodu acquire_token_for_client s rozsahem jako parametrem.

Postup vygenerování certifikátu a privátního klíče, který se má použít při implementaci toku přihlašovacích údajů klienta, jsou následující:

  1. Vygenerování klíče:

    openssl genrsa -out server.pem 2048

  2. Vytvořte žádost o certifikát:

    openssl req -new -key server.pem -out server.csr

  3. Vygenerování certifikátu:

    openssl x509 -req -days 365 -in server.csr -signkey server.pem -out server.crt

  4. Tento certifikát (server.crt) budete muset nahrát na Azure Portal v nastavení aplikace. Jakmile tento certifikát uložíte, portál vám poskytne otisk tohoto certifikátu, který je potřeba při volání pro získání tokenu. Klíč bude server.pem klíč, který jste vygenerovali v prvním kroku.

  5. Teď můžete vytvořit přihlašovací údaje pro tok přihlašovacích údajů klienta pomocí certifikátu v msAL Python následujícím způsobem:

client_credential = {
    "thumbprint": <thumbprint of cert file>,
    "private_key": <private key from the private_key_file>
 }