DeviceCodeCredential Klas
Verifieert gebruikers via de apparaatcodestroom.
Wanneer get_token wordt aangeroepen, verkrijgt deze referentie een verificatie-URL en code van Azure Active Directory. Een gebruiker moet naar de URL bladeren, de code invoeren en verifiëren met Azure Active Directory. Als de gebruiker is geverifieerd, ontvangt de referentie een toegangstoken.
Deze referentie is voornamelijk nuttig voor het verifiëren van een gebruiker in een omgeving zonder een webbrowser, zoals een SSH-sessie. Als er een webbrowser beschikbaar is, InteractiveBrowserCredential is dit handiger omdat hiermee automatisch een browser wordt geopend op de aanmeldingspagina.
- Overname
-
azure.identity._internal.interactive.InteractiveCredentialDeviceCodeCredential
Constructor
DeviceCodeCredential(client_id: str = '04b07795-8ddb-461a-bbee-02f9e1bf7b46', *, timeout: int | None = None, prompt_callback: Callable[[str, str, datetime], None] | None = None, **kwargs: Any)
Parameters
- client_id
- str
client-id van de toepassing waarvoor gebruikers zich verifiëren. Wanneer dit niet is opgegeven, worden gebruikers geverifieerd bij een Azure-ontwikkelingstoepassing.
- authority
- str
Instantie van een Azure Active Directory-eindpunt, bijvoorbeeld 'login.microsoftonline.com', de instantie voor de openbare Azure-cloud (dit is de standaardinstelling). AzureAuthorityHosts definieert instanties voor andere clouds.
- tenant_id
- str
een Azure Active Directory-tenant-id. Standaard ingesteld op de tenant 'organisaties', waarmee werk- of schoolaccounts kunnen worden geverifieerd. Vereist voor toepassingen met één tenant.
- timeout
- int
seconden om te wachten totdat de gebruiker is geverifieerd. Standaard wordt de geldigheidsperiode van de apparaatcode ingesteld door Azure Active Directory, die ook prevaleert wanneer de time-out langer is.
Een callback waarmee u kunt bepalen hoe verificatie-instructies worden gepresenteerd. Moet argumenten accepteren (verification_uri
, user_code
, expires_on
):
verification_uri
(str) de URL die de gebruiker moet bezoekenuser_code
(str) de code die de gebruiker daar moet invoerenexpires_on
(datetime.datetime) de UTC-tijd waarop de code verloopt
Als dit argument niet wordt opgegeven, worden met de referentie instructies voor stdout afgedrukt.
- authentication_record
- AuthenticationRecord
AuthenticationRecord geretourneerd door authenticate
- disable_automatic_authentication
- bool
indien waar, get_token wordt weergegeven AuthenticationRequiredError wanneer gebruikersinteractie is vereist om een token te verkrijgen. Standaard ingesteld op False.
- cache_persistence_options
- TokenCachePersistenceOptions
configuratie voor permanente tokencache. Als dit niet wordt opgegeven, worden tokens in het geheugen in de cache opgeslagen.
- disable_instance_discovery
- bool
Bepaalt of exemplaardetectie wordt uitgevoerd bij een verificatiepoging. Als u dit instelt op true, wordt zowel exemplaardetectie als instantievalidatie volledig uitgeschakeld. Deze functionaliteit is bedoeld voor gebruik in scenario's waarin het eindpunt voor metagegevens niet kan worden bereikt, zoals in privéclouds of Azure Stack. Het proces van exemplaardetectie omvat het ophalen van instantiemetagegevens van https://login.microsoft.com/ om de instantie te valideren. Als u deze instelling instelt op Waar, wordt de validatie van de instantie uitgeschakeld. Als gevolg hiervan is het van cruciaal belang om ervoor te zorgen dat de geconfigureerde instantiehost geldig en betrouwbaar is.
Voorbeelden
Maak een DeviceCodeCredential.
from azure.identity import DeviceCodeCredential
credential = DeviceCodeCredential()
Methoden
authenticate |
Een gebruiker interactief verifiëren. |
close | |
get_token |
Een toegangstoken aanvragen voor bereiken. Deze methode wordt automatisch aangeroepen door Azure SDK-clients. |
authenticate
Een gebruiker interactief verifiëren.
authenticate(**kwargs: Any) -> AuthenticationRecord
Parameters
bereiken die tijdens de verificatie moeten worden aangevraagd, zoals de bereiken die worden geleverd door scopes. Als de verificatie is opgegeven, wordt een toegangstoken voor deze bereiken in de cache opgeslagen.
- claims
- str
aanvullende claims die vereist zijn in het token, zoals de claims die worden geleverd door claims
Retourtype
Uitzonderingen
verificatie is mislukt. Het kenmerk van de message
fout geeft een reden.
close
close() -> None
Uitzonderingen
verificatie is mislukt. Het kenmerk van de message
fout geeft een reden.
get_token
Een toegangstoken aanvragen voor bereiken.
Deze methode wordt automatisch aangeroepen door Azure SDK-clients.
get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken
Parameters
- scopes
- str
gewenste bereiken voor het toegangstoken. Voor deze methode is ten minste één bereik vereist. Zie voor meer informatie over bereiken https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.
- claims
- str
aanvullende claims die vereist zijn in het token, zoals de claims die worden geretourneerd in de claimvraag van een resourceprovider na een autorisatiefout
- tenant_id
- str
optionele tenant die moet worden opgenomen in de tokenaanvraag.
- enable_cae
- bool
geeft aan of Continue toegangsevaluatie (CAE) moet worden ingeschakeld voor het aangevraagde token. Standaard ingesteld op False.
Retouren
Een toegangstoken met de gewenste bereiken.
Retourtype
Uitzonderingen
de referentie kan geen verificatie uitvoeren omdat de vereiste gegevens, status of platformondersteuning ontbreekt
verificatie is mislukt. Het kenmerk van de message
fout geeft een reden.
gebruikersinteractie is nodig om een token te verkrijgen en de referentie is geconfigureerd om dit niet automatisch te starten. Call
om interactieve verificatie te starten.
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor