UsernamePasswordCredential Kelas
Mengautentikasi pengguna dengan nama pengguna dan kata sandi.
Secara umum, Microsoft tidak merekomendasikan autentikasi semacam ini, karena kurang aman daripada alur autentikasi lainnya.
Autentikasi dengan kredensial ini tidak interaktif, sehingga tidak kompatibel dengan bentuk autentikasi multifaktor atau permintaan persetujuan apa pun. Aplikasi harus sudah memiliki persetujuan dari pengguna atau admin direktori.
Kredensial ini hanya dapat mengautentikasi akun kerja dan sekolah; Akun Microsoft tidak didukung. Lihat Dokumentasi Azure Active Directory untuk informasi selengkapnya tentang jenis akun.
- Warisan
-
azure.identity._internal.interactive.InteractiveCredentialUsernamePasswordCredential
Konstruktor
UsernamePasswordCredential(client_id: str, username: str, password: str, **kwargs: Any)
Parameter
- authority
- str
Otoritas titik akhir Azure Active Directory, misalnya "login.microsoftonline.com", otoritas untuk Azure Public Cloud (yang merupakan default). AzureAuthorityHosts mendefinisikan otoritas untuk cloud lain.
- tenant_id
- str
ID Penyewa atau domain yang terkait dengan penyewa. Jika tidak disediakan, default ke penyewa "organisasi", yang hanya mendukung akun kerja atau sekolah Azure Active Directory.
- cache_persistence_options
- TokenCachePersistenceOptions
Konfigurasi untuk penembolokan token persisten. Jika tidak ditentukan, kredensial akan menyimpan token dalam memori.
- disable_instance_discovery
- bool
Menentukan apakah penemuan instans dilakukan atau tidak saat mencoba mengautentikasi. Mengatur ini ke true akan sepenuhnya menonaktifkan penemuan instans dan validasi otoritas. Fungsionalitas ini ditujukan untuk digunakan dalam skenario di mana titik akhir metadata tidak dapat dicapai, seperti di cloud privat atau Azure Stack. Proses penemuan instans memerlukan pengambilan metadata otoritas dari https://login.microsoft.com/ untuk memvalidasi otoritas. Dengan mengatur ini ke True, validasi otoritas dinonaktifkan. Akibatnya, sangat penting untuk memastikan bahwa host otoritas yang dikonfigurasi valid dan dapat dipercaya.
Menentukan penyewa selain "tenant_id" yang ditentukan yang kredensialnya dapat memperoleh token. Tambahkan nilai kartubebas "*" untuk memungkinkan kredensial memperoleh token untuk penyewa mana pun yang dapat diakses aplikasi.
Contoh
Buat UsernamePasswordCredential.
from azure.identity import UsernamePasswordCredential
credential = UsernamePasswordCredential(
client_id="<client_id>",
username="<username>",
password="<password>",
)
Metode
authenticate |
Mengautentikasi pengguna secara interaktif. |
close | |
get_token |
Meminta token akses untuk cakupan. Metode ini dipanggil secara otomatis oleh klien Azure SDK. |
authenticate
Mengautentikasi pengguna secara interaktif.
authenticate(**kwargs: Any) -> AuthenticationRecord
Parameter
cakupan untuk meminta selama autentikasi, seperti yang disediakan oleh scopes. Jika disediakan, autentikasi yang berhasil akan menyimpan token akses untuk cakupan ini.
Tipe hasil
Pengecualian
autentikasi gagal. Atribut kesalahan message
memberikan alasan.
close
close() -> None
Pengecualian
autentikasi gagal. Atribut kesalahan message
memberikan alasan.
get_token
Meminta token akses untuk cakupan.
Metode ini dipanggil secara otomatis oleh klien Azure SDK.
get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken
Parameter
- scopes
- str
cakupan yang diinginkan untuk token akses. Metode ini memerlukan setidaknya satu cakupan. Untuk informasi selengkapnya tentang cakupan, lihat https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.
- claims
- str
klaim tambahan yang diperlukan dalam token, seperti yang dikembalikan dalam tantangan klaim penyedia sumber daya setelah kegagalan otorisasi
- tenant_id
- str
penyewa opsional untuk disertakan dalam permintaan token.
- enable_cae
- bool
menunjukkan apakah akan mengaktifkan Evaluasi Akses Berkelanjutan (CAE) untuk token yang diminta. Default ke False.
Mengembalikan
Token akses dengan cakupan yang diinginkan.
Tipe hasil
Pengecualian
kredensial tidak dapat mencoba autentikasi karena tidak memiliki data, status, atau dukungan platform yang diperlukan
autentikasi gagal. Atribut kesalahan message
memberikan alasan.
interaksi pengguna diperlukan untuk memperoleh token, dan kredensial dikonfigurasi untuk tidak memulai ini secara otomatis. Call
untuk memulai autentikasi interaktif.