DeviceCodeCredential Sınıf
Cihaz kodu akışı aracılığıyla kullanıcıların kimliğini doğrular.
Çağrıldığında get_token , bu kimlik bilgisi Azure Active Directory'den bir doğrulama URL'si ve kodu alır. Kullanıcının URL'ye göz atması, kodu girmesi ve Azure Active Directory ile kimlik doğrulaması yapması gerekir. Kullanıcı başarıyla kimlik doğrulaması yaparsa, kimlik bilgisi bir erişim belirteci alır.
Bu kimlik bilgisi öncelikle kullanıcının kimliğini web tarayıcısı olmayan bir ortamda (SSH oturumu gibi) doğrulamak için yararlıdır. Bir web tarayıcısı varsa, InteractiveBrowserCredential otomatik olarak oturum açma sayfasına bir tarayıcı açtığından daha kullanışlıdır.
- Devralma
-
azure.identity._internal.interactive.InteractiveCredentialDeviceCodeCredential
Oluşturucu
DeviceCodeCredential(client_id: str = '04b07795-8ddb-461a-bbee-02f9e1bf7b46', *, timeout: int | None = None, prompt_callback: Callable[[str, str, datetime], None] | None = None, **kwargs: Any)
Parametreler
- client_id
- str
kullanıcıların kimlik doğrulaması yapacağı uygulamanın istemci kimliği. Belirtilmediğinde kullanıcılar bir Azure geliştirme uygulamasında kimlik doğrulaması yapar.
- authority
- str
Azure Active Directory uç noktasının yetkilisi, örneğin "login.microsoftonline.com", Azure Genel Bulut yetkilisi (varsayılandır). AzureAuthorityHosts diğer bulutlar için yetkilileri tanımlar.
- tenant_id
- str
Bir Azure Active Directory kiracı kimliği. Varsayılan olarak iş veya okul hesaplarının kimliğini doğrulayan "kuruluşlar" kiracısı kullanılır. Tek kiracılı uygulamalar için gereklidir.
- timeout
- int
kullanıcının kimliğini doğrulamasını beklemek için saniye. Azure Active Directory tarafından ayarlanan cihaz kodunun geçerlilik süresini varsayılan olarak belirler. Bu süre, zaman aşımı daha uzun olduğunda da geçerli olur.
Kimlik doğrulama yönergelerinin nasıl sunulduğunu denetlemeyi sağlayan bir geri arama. Bağımsız değişkenleri (verification_uri
, user_code
, expires_on
) kabul etmelidir:
verification_uri
(str) kullanıcının ziyaret etmesi gereken URLuser_code
(str) kullanıcının girmesi gereken koduexpires_on
(datetime.datetime) kodun süresinin dolacağı UTC saati
Bu bağımsız değişken sağlanmazsa, kimlik bilgisi yönergeleri stdout'a yazdırır.
- authentication_record
- AuthenticationRecord
AuthenticationRecord döndüren authenticate
- disable_automatic_authentication
- bool
True ise, get_token belirteç almak için kullanıcı etkileşimi gerektiğinde tetiklenir AuthenticationRequiredError . Varsayılan değer False'tur.
- cache_persistence_options
- TokenCachePersistenceOptions
kalıcı belirteç önbelleğe alma yapılandırması. Belirtilmezse, kimlik bilgisi belirteçleri bellekte önbelleğe alır.
- disable_instance_discovery
- bool
Kimlik doğrulaması denenirken örnek bulma işleminin gerçekleştirilip gerçekleştirilmeyeceğini belirler. Bunu true olarak ayarlamak hem örnek bulma hem de yetkili doğrulamayı tamamen devre dışı bırakır. Bu işlevsellik, meta veri uç noktasına erişilemeyen özel bulutlar veya Azure Stack gibi senaryolarda kullanılmak üzere tasarlanmıştır. Örnek bulma işlemi, yetkiliyi doğrulamak için yetkili meta verilerinin 'den https://login.microsoft.com/ alınmasını gerektirir. Bunu True olarak ayarladığınızda, yetkilinin doğrulaması devre dışı bırakılır. Sonuç olarak, yapılandırılan yetkili konağın geçerli ve güvenilir olduğundan emin olmak çok önemlidir.
Örnekler
DeviceCodeCredential oluşturun.
from azure.identity import DeviceCodeCredential
credential = DeviceCodeCredential()
Yöntemler
authenticate |
Kullanıcının kimliğini etkileşimli olarak doğrulayın. |
close | |
get_token |
Kapsamlar için erişim belirteci isteyin. Bu yöntem Azure SDK istemcileri tarafından otomatik olarak çağrılır. |
authenticate
Kullanıcının kimliğini etkileşimli olarak doğrulayın.
authenticate(**kwargs: Any) -> AuthenticationRecord
Parametreler
kimlik doğrulaması sırasında istenecek kapsamlar, örneğin tarafından scopessağlananlar. Sağlanırsa, başarılı kimlik doğrulaması bu kapsamlar için bir erişim belirtecini önbelleğe alır.
Dönüş türü
Özel durumlar
kimlik doğrulaması başarısız oldu. Hatanın message
özniteliği bir neden verir.
close
close() -> None
Özel durumlar
kimlik doğrulaması başarısız oldu. Hatanın message
özniteliği bir neden verir.
get_token
Kapsamlar için erişim belirteci isteyin.
Bu yöntem Azure SDK istemcileri tarafından otomatik olarak çağrılır.
get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken
Parametreler
- scopes
- str
erişim belirteci için istenen kapsamlar. Bu yöntem en az bir kapsam gerektirir. Kapsamlar hakkında daha fazla bilgi için bkz https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc. .
- claims
- str
bir yetkilendirme hatasından sonra bir kaynak sağlayıcısının talep sınamasında döndürülenler gibi belirteçte gereken ek talepler
- tenant_id
- str
belirteci isteğine dahil etmek için isteğe bağlı kiracı.
- enable_cae
- bool
, istenen belirteç için Sürekli Erişim Değerlendirmesi'nin (CAE) etkinleştirilip etkinleştirilmeydiğini gösterir. Varsayılan değer False'tur.
Döndürülenler
İstenen kapsamlara sahip bir erişim belirteci.
Dönüş türü
Özel durumlar
gerekli veri, durum veya platform desteği olmadığından kimlik doğrulaması denenemiyor
kimlik doğrulaması başarısız oldu. Hatanın message
özniteliği bir neden verir.
kullanıcı etkileşimi bir belirteç almak için gereklidir ve kimlik bilgisi bunu otomatik olarak başlatmayacak şekilde yapılandırılır. Call
etkileşimli kimlik doğrulamasına başlamak için.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin