ConfidentialClientApplication Klas
Hetzelfde als <xref:ClientApplication.__init__>, behalve die allow_broker parameter blijft None.
Maak een exemplaar van de toepassing.
Constructor
ConfidentialClientApplication(client_id, client_credential=None, authority=None, validate_authority=True, token_cache=None, http_client=None, verify=True, proxies=None, timeout=None, client_claims=None, app_name=None, app_version=None, client_capabilities=None, azure_region=None, exclude_scopes=None, http_cache=None, instance_discovery=None, allow_broker=None, enable_pii_log=None, oidc_authority=None)
Parameters
| Name | Description |
|---|---|
|
client_id
Vereist
|
Uw app heeft een client_id nadat u deze hebt geregistreerd op Microsoft Entra-beheercentrum. |
|
client_credential
|
Voor PublicClientApplication, gebruik je Geen hier. Hiervoor ConfidentialClientApplicationondersteunt het veel verschillende invoerindelingen voor verschillende scenario's. Ondersteuning met behulp van een clientgeheim. Voer gewoon een tekenreeks in, zoals
|
|
client_claims
|
Toegevoegd in versie 0.5.0: het is een woordenlijst met extra claims die door deze ConfidentialClientApplication persoonlijke sleutel worden ondertekend. U kunt bijvoorbeeld {"client_ip": "x.x.x.x.x"} gebruiken. U kunt ook een van de volgende standaardclaims negeren:
Default value: None
|
|
authority
|
Een URL die een tokeninstantie identificeert. Deze moet de indeling hebben
Gewijzigd in versie 1.17: u kunt ook vooraf gedefinieerde constante en een opbouwfunctie als volgt gebruiken:
Default value: None
|
|
validate_authority
|
(optioneel) Hiermee schakelt u autorisatievalidatie in of uit. Deze parameter is standaard ingesteld op true. Default value: True
|
|
token_cache
|
Hiermee stelt u de tokencache in die wordt gebruikt door dit ClientApplication-exemplaar. Standaard wordt er een cache in het geheugen gemaakt en gebruikt. Default value: None
|
|
http_client
|
(optioneel) Uw implementatie van abstracte klasse HttpClient <msal.oauth2cli.http.http_client> Standaard ingesteld op een sessie-exemplaar van aanvragen. Aangezien MSAL 1.11.0 is geconfigureerd, wordt de standaardsessie geconfigureerd om een nieuwe poging te doen bij verbindingsfout. Als u uw eigen http_client opgeeft, is het de plicht van uw http_client om te beslissen of u een nieuwe poging wilt uitvoeren. Default value: None
|
|
verify
|
(optioneel) Deze wordt doorgegeven aan de verificatieparameter in de onderliggende aanvraagbibliotheek . Dit geldt niet als u ervoor hebt gekozen om uw eigen Http-client door te geven Default value: True
|
|
proxies
|
(optioneel) Deze wordt doorgegeven aan de parameter proxy's in de onderliggende aanvraagbibliotheek . Dit geldt niet als u ervoor hebt gekozen om uw eigen Http-client door te geven Default value: None
|
|
timeout
|
(optioneel) Deze wordt doorgegeven aan de time-outparameter in de onderliggende aanvraagbibliotheek . Dit geldt niet als u ervoor hebt gekozen om uw eigen Http-client door te geven Default value: None
|
|
app_name
|
(optioneel) U kunt uw toepassingsnaam opgeven voor Microsoft telemetriedoeleinden. De standaardwaarde is Geen, betekent dat deze niet wordt doorgegeven aan Microsoft. Default value: None
|
|
app_version
|
(optioneel) U kunt uw toepassingsversie opgeven voor Microsoft telemetriedoeleinden. De standaardwaarde is Geen, betekent dat deze niet wordt doorgegeven aan Microsoft. Default value: None
|
|
client_capabilities
|
(optioneel) Hiermee kunt u een of meer clientmogelijkheden configureren, bijvoorbeeld ["CP1"]. Clientmogelijkheid is bedoeld om de Microsoft identity platform (STS) te informeren waarvoor deze client geschikt is, zodat STS bepaalde functies kan inschakelen. Als de client bijvoorbeeld in staat is om claims uit te voeren, kan STS toegangstokens uitgeven aan resources door MIDDELD-toegangstokens (Continuous Access Evaluation), wetende dat wanneer de resource een claimuitdaging verzendt, de client deze uitdagingen kan afhandelen. Implementatiedetails: Clientmogelijkheid wordt geïmplementeerd met behulp van de parameter 'claims' op de kabel, voorlopig. MSAL combineert deze in claimsparameter die u later opgeeft via een van de acquire-tokenaanvraag. Default value: None
|
|
azure_region
|
(optioneel) Geeft MSAL opdracht om de regionale tokenservice Entra te gebruiken. Deze verouderde functie is alleen beschikbaar voor toepassingen van derden. Alleen Ondersteunt 4 waarden:
Note Automatische detectie van regio's is getest op VM's en op Azure Functions. Het is onbetrouwbaar. Toepassingen die deze optie gebruiken, moeten een korte time-out configureren. Voor meer informatie en voor de waarden van de regiotekenreeks Zie https://learn.microsoft.com/entra/msal/dotnet/resources/region-discovery-troubleshooting Nieuw in versie 1.12.0. Default value: None
|
|
exclude_scopes
|
(optioneel) MsAL-hardcodes offline_access bereik, waardoor uw app langdurige toegang heeft tot de gegevens van de gebruiker.
Als dat niet nodig of ongewenst is voor uw app, kunt u deze parameter nu gebruiken om een uitsluitingslijst met bereiken op te geven, zoals Default value: None
|
|
http_cache
|
MSAL heeft al lang tokens in de cache opgeslagen in de Deze Als uw app een opdrachtregel-app (CLI) is, wilt u uw http_cache behouden voor verschillende CLI-uitvoeringen. De indeling van het persistente bestand kan worden gewijzigd vanwege, maar niet beperkt tot, onstabiel protocol, zodat uw implementatie onverwachte laadfouten tolereert. In het volgende recept ziet u een manier om dit te doen:
Inhoud binnen Inhoud in de inhoud Nieuw in versie 1.16.0. Default value: None
|
|
instance_discovery
|
<xref:boolean>
In het verleden zou MSAL verbinding maken met een centraal eindpunt dat zich bevindt om Deze parameter is standaard ingesteld op None, waardoor de instantiedetectie wordt ingeschakeld. Als u bepaalde instanties kent waarmee MSAL kan werken met as-is, zonder tussenkomst van instantiedetectie, is het aanbevolen patroon:
Als u niet van tevoren bepaalde autoriteiten kent, maar toch wilt dat MSAL een instantie accepteert die u wilt verstrekken, kunt u een Nieuw in versie 1.19.0. Default value: None
|
|
allow_broker
|
<xref:boolean>
Deprecated. Gebruik in plaats daarvan Default value: None
|
|
enable_pii_log
|
<xref:boolean>
Wanneer deze functie is ingeschakeld, kunnen logboeken PII (Persoonsgegevens) bevatten. Dit kan handig zijn bij het oplossen van brokergedrag. Het standaardgedrag is Onwaar. Nieuw in versie 1.24.0. Default value: None
|
|
oidc_authority
|
Toegevoegd in versie 1.28.0: het is een URL die een OpenID Connect-instantie (OIDC) van de indeling Opmerking: Broker wordt NIET gebruikt voor OIDC-instantie. Default value: None
|
Methoden
| acquire_token_for_client |
Hiermee verkrijgt u een token voor de huidige vertrouwelijke client, niet voor een eindgebruiker. Omdat MSAL Python 1.23, wordt automatisch gezocht naar token uit de cache en wordt alleen een aanvraag naar de id-provider verzonden wanneer de cache ontbreekt. |
| acquire_token_on_behalf_of |
Verwerft token met behulp van een on-behalf-of -stroom (OBO). De huidige app is een service in de middelste laag die is aangeroepen met een token dat een eindgebruiker vertegenwoordigt. De huidige app kan een dergelijk token (a.k.a. een gebruikersverklaring) gebruiken om namens die gebruiker een ander token aan te vragen om toegang te krijgen tot downstream web-API. Bekijk hier gedetailleerde documenten . De huidige app in de middelste laag heeft geen gebruikersinteractie om toestemming te krijgen. Bekijk in dit artikel hoe u vooraf toestemming krijgt voor uw app in de middelste laag. https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-on-behalf-of-flow#gaining-consent-for-the-middle-tier-application |
| remove_tokens_for_client |
Verwijder alle tokens die eerder zijn verkregen voor acquire_token_for_client de huidige client. |
acquire_token_for_client
Hiermee verkrijgt u een token voor de huidige vertrouwelijke client, niet voor een eindgebruiker.
Omdat MSAL Python 1.23, wordt automatisch gezocht naar token uit de cache en wordt alleen een aanvraag naar de id-provider verzonden wanneer de cache ontbreekt.
acquire_token_for_client(scopes, claims_challenge=None, fmi_path=None, **kwargs)
Parameters
| Name | Description |
|---|---|
|
scopes
Vereist
|
(Vereist) Bereiken die zijn aangevraagd voor toegang tot een beveiligde API (een resource). |
|
claims_challenge
|
De claims_challenge parameter vraagt specifieke claims op die zijn aangevraagd door de resourceprovider in de vorm van een claims_challenge instructie in de www-authenticate-header die moet worden geretourneerd vanuit het eindpunt userinfo en/of in het id-token en/of toegangstoken. Het is een tekenreeks van een JSON-object met lijsten met claims die vanaf deze locaties worden aangevraagd. Default value: None
|
|
fmi_path
|
Optional. Het FMI-referentiepad (Federated Managed Identity).
Wanneer dit is opgegeven, wordt deze verzonden als de
Default value: None
|
Retouren
| Type | Description |
|---|---|
|
Een dict die het json-antwoord van Microsoft Entra vertegenwoordigt:
|
acquire_token_on_behalf_of
Verwerft token met behulp van een on-behalf-of -stroom (OBO).
De huidige app is een service in de middelste laag die is aangeroepen met een token dat een eindgebruiker vertegenwoordigt. De huidige app kan een dergelijk token (a.k.a. een gebruikersverklaring) gebruiken om namens die gebruiker een ander token aan te vragen om toegang te krijgen tot downstream web-API. Bekijk hier gedetailleerde documenten .
De huidige app in de middelste laag heeft geen gebruikersinteractie om toestemming te krijgen. Bekijk in dit artikel hoe u vooraf toestemming krijgt voor uw app in de middelste laag. https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-on-behalf-of-flow#gaining-consent-for-the-middle-tier-application
acquire_token_on_behalf_of(user_assertion, scopes, claims_challenge=None, **kwargs)
Parameters
| Name | Description |
|---|---|
|
user_assertion
Vereist
|
Het binnenkomende token dat al door deze app is ontvangen |
|
scopes
Vereist
|
Bereiken die zijn vereist voor downstream-API (een resource). |
|
claims_challenge
|
De claims_challenge parameter vraagt specifieke claims op die zijn aangevraagd door de resourceprovider in de vorm van een claims_challenge-instructie in de www-authenticate-header die moet worden geretourneerd vanuit het eindpunt userinfo en/of in het id-token en/of toegangstoken. Het is een tekenreeks van een JSON-object met lijsten met claims die vanaf deze locaties worden aangevraagd. Default value: None
|
Retouren
| Type | Description |
|---|---|
|
Een dict die het json-antwoord van Microsoft Entra vertegenwoordigt:
|
remove_tokens_for_client
Verwijder alle tokens die eerder zijn verkregen voor acquire_token_for_client de huidige client.
remove_tokens_for_client()