DeviceCodeCredential Třída
Ověřuje uživatele prostřednictvím toku kódu zařízení.
Při get_token volání tyto přihlašovací údaje získají ověřovací adresu URL a kód z Azure Active Directory. Uživatel musí přejít na adresu URL, zadat kód a ověřit se pomocí Azure Active Directory. Pokud se uživatel úspěšně ověří, přihlašovací údaje obdrží přístupový token.
Tyto přihlašovací údaje jsou primárně užitečné pro ověřování uživatele v prostředí bez webového prohlížeče, jako je relace SSH. Pokud je dostupný webový prohlížeč, je pohodlnější, InteractiveBrowserCredential protože automaticky otevře prohlížeč na přihlašovací stránce.
- Dědičnost
-
azure.identity._internal.interactive.InteractiveCredentialDeviceCodeCredential
Konstruktor
DeviceCodeCredential(client_id: str = '04b07795-8ddb-461a-bbee-02f9e1bf7b46', *, timeout: int | None = None, prompt_callback: Callable[[str, str, datetime], None] | None = None, **kwargs: Any)
Parametry
- client_id
- str
ID klienta aplikace, na které se uživatelé budou ověřovat. Pokud uživatelé nezadáte, budou se ověřovat ve vývojové aplikaci Azure.
- authority
- str
Autorita koncového bodu Azure Active Directory, například "login.microsoftonline.com", autorita pro veřejný cloud Azure (což je výchozí nastavení). AzureAuthorityHosts definuje autority pro jiné cloudy.
- tenant_id
- str
ID tenanta Azure Active Directory. Výchozí hodnota je tenant organizace, který může ověřovat pracovní nebo školní účty. Vyžaduje se pro aplikace s jedním tenantem.
- timeout
- int
sekundy, než se uživatel ověří. Výchozí hodnota je doba platnosti kódu zařízení nastavená službou Azure Active Directory, která platí také v případě, že je časový limit delší.
Zpětné volání, které umožňuje řídit způsob, jakým jsou prezentovány pokyny k ověřování. Musí přijmout argumenty (verification_uri
, user_code
, ): expires_on
verification_uri
(str) adresa URL, na které musí uživatel přejítuser_code
(str) kód, který tam uživatel musí zadatexpires_on
(datetime.datetime) čas UTC, kdy vyprší platnost kódu
Pokud tento argument není zadaný, přihlašovací údaje vypíše pokyny pro stdout.
- authentication_record
- AuthenticationRecord
AuthenticationRecord vráceno uživatelem authenticate
- disable_automatic_authentication
- bool
pokud true, get_token vyvolá AuthenticationRequiredError se, když je k získání tokenu nutná interakce uživatele. Výchozí hodnota je False.
- cache_persistence_options
- TokenCachePersistenceOptions
konfigurace pro trvalé ukládání tokenů do mezipaměti. Pokud neurčíte, přihlašovací údaje budou tokeny ukládat do mezipaměti.
- disable_instance_discovery
- bool
Určuje, jestli se při pokusu o ověření provádí zjišťování instancí. Nastavení na hodnotu true zcela zakáže zjišťování instancí i ověřování autority. Tato funkce je určená pro použití ve scénářích, kdy není možné dosáhnout koncového bodu metadat, například v privátních cloudech nebo ve službě Azure Stack. Proces zjišťování instancí zahrnuje načtení metadat autority za https://login.microsoft.com/ účelem ověření autority. Když tuto hodnotu nastavíte na Hodnotu True, ověření autority se zakáže. Proto je důležité zajistit, aby nakonfigurovaný hostitel autority byl platný a důvěryhodný.
Příklady
Vytvořte DeviceCodeCredential.
from azure.identity import DeviceCodeCredential
credential = DeviceCodeCredential()
Metody
authenticate |
Interaktivní ověřování uživatele |
close | |
get_token |
Vyžádejte si přístupový token pro obory. Klienti sady Azure SDK tuto metodu volali automaticky. |
authenticate
Interaktivní ověřování uživatele
authenticate(**kwargs: Any) -> AuthenticationRecord
Parametry
rozsahy, které mají být požadovány během ověřování, například rozsahy poskytované nástrojem scopes. Pokud je k dispozici, úspěšné ověřování uloží přístupový token pro tyto obory do mezipaměti.
Návratový typ
Výjimky
ověřování se nezdařilo. Atribut chyby message
uvádí důvod.
close
close() -> None
Výjimky
ověřování se nezdařilo. Atribut chyby message
uvádí důvod.
get_token
Vyžádejte si přístupový token pro obory.
Klienti sady Azure SDK tuto metodu volali automaticky.
get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken
Parametry
- scopes
- str
požadované obory pro přístupový token. Tato metoda vyžaduje alespoň jeden obor. Další informace o oborech najdete v tématu https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.
- claims
- str
další deklarace identity vyžadované v tokenu, například ty, které se vrátily při napadení deklarací identity poskytovatele prostředků po selhání autorizace
- tenant_id
- str
volitelného tenanta, který se má zahrnout do žádosti o token.
- enable_cae
- bool
určuje, jestli se má pro požadovaný token povolit průběžné vyhodnocování přístupu (CAE). Výchozí hodnota je False.
Návraty
Přístupový token s požadovanými obory.
Návratový typ
Výjimky
přihlašovací údaje se nemohou pokusit o ověření, protože nemají požadovaná data, stav nebo podporu platformy.
ověřování se nezdařilo. Atribut chyby message
uvádí důvod.
K získání tokenu je nutná interakce uživatele a přihlašovací údaje jsou nakonfigurované tak, aby se nezačínaly automaticky. Call
a zahájit interaktivní ověřování.