Delen via


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.InteractiveCredential
DeviceCodeCredential

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
standaardwaarde: 04b07795-8ddb-461a-bbee-02f9e1bf7b46

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.

prompt_callback
Callable[str, str, datetime]

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 bezoeken

  • user_code (str) de code die de gebruiker daar moet invoeren

  • expires_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

scopes
Iterable[str]

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
Vereist

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.