Bagikan melalui


aio Paket

Kredensial untuk klien Azure SDK asinkron.

Kelas

AuthorizationCodeCredential

Mengautentikasi dengan menukarkan kode otorisasi yang sebelumnya diperoleh dari Azure Active Directory.

Lihat Dokumentasi Azure Active Directory untuk informasi selengkapnya tentang alur autentikasi.

AzureCliCredential

Mengautentikasi dengan meminta token dari Azure CLI.

Ini mengharuskan sebelumnya masuk ke Azure melalui "az login", dan akan menggunakan identitas CLI yang saat ini masuk.

AzureDeveloperCliCredential

Mengautentikasi dengan meminta token dari Azure Developer CLI.

Azure Developer CLI adalah alat antarmuka baris perintah yang memungkinkan pengembang membuat, mengelola, dan menyebarkan sumber daya di Azure. Ini dibangun di atas Azure CLI dan menyediakan fungsionalitas tambahan khusus untuk pengembang Azure. Ini memungkinkan pengguna untuk mengautentikasi sebagai pengguna dan/atau perwakilan layanan terhadap Azure Active Directory (Azure AD). AzureDeveloperCliCredential mengautentikasi di lingkungan pengembangan dan memperoleh token atas nama pengguna atau perwakilan layanan yang masuk di Azure Developer CLI. Ini bertindak sebagai pengguna atau perwakilan layanan yang masuk Azure Developer CLI dan menjalankan perintah Azure CLI di bawahnya untuk mengautentikasi aplikasi terhadap Azure Active Directory.

Untuk menggunakan kredensial ini, pengembang perlu mengautentikasi secara lokal dalam Azure Developer CLI menggunakan salah satu perintah di bawah ini:

  • Jalankan "azd auth login" di Azure Developer CLI untuk mengautentikasi secara interaktif sebagai pengguna.

  • Jalankan "azd auth login –client-id 'client_id' –client-secret 'client_secret' –tenant-id 'tenant_id'" untuk mengautentikasi sebagai perwakilan layanan.

Anda mungkin perlu mengulangi proses ini setelah jangka waktu tertentu, tergantung pada validitas token refresh di organisasi Anda. Umumnya, masa berlaku token refresh adalah beberapa minggu hingga beberapa bulan. AzureDeveloperCliCredential akan meminta Anda untuk masuk lagi.

AzurePowerShellCredential

Mengautentikasi dengan meminta token dari Azure PowerShell.

Ini mengharuskan sebelumnya masuk ke Azure melalui "Connect-AzAccount", dan akan menggunakan identitas yang saat ini masuk.

CertificateCredential

Mengautentikasi sebagai perwakilan layanan menggunakan sertifikat.

Sertifikat harus memiliki kunci privat RSA, karena kredensial ini menandatangani pernyataan menggunakan RS256. Lihat Dokumentasi Azure Active Directory untuk informasi selengkapnya tentang mengonfigurasi autentikasi sertifikat.

ChainedTokenCredential

Urutan kredensial yang merupakan kredensial itu sendiri.

Metodenya get_token memanggil get_token pada setiap kredensial secara berurutan, secara berurutan, mengembalikan token valid pertama yang diterima.

ClientAssertionCredential

Mengautentikasi perwakilan layanan dengan pernyataan JWT.

Kredensial ini untuk skenario tingkat lanjut. CertificateCredential memiliki API yang lebih nyaman untuk skenario pernyataan yang paling umum, mengautentikasi perwakilan layanan dengan sertifikat.

ClientSecretCredential

Mengautentikasi sebagai perwakilan layanan menggunakan rahasia klien.

DefaultAzureCredential

Kredensial default yang mampu menangani sebagian besar skenario autentikasi Azure SDK.

Identitas yang digunakannya tergantung pada lingkungan. Ketika token akses diperlukan, token tersebut memintanya menggunakan identitas ini secara bergiliran, berhenti ketika seseorang menyediakan token:

  1. Perwakilan layanan yang dikonfigurasi oleh variabel lingkungan. Lihat EnvironmentCredential untuk detail selengkapnya.

  2. WorkloadIdentityCredential jika konfigurasi variabel lingkungan diatur oleh webhook identitas beban kerja Azure.

  3. Identitas terkelola Azure. Lihat ManagedIdentityCredential untuk detail selengkapnya.

  4. Hanya di Windows: pengguna yang telah masuk dengan aplikasi Microsoft, seperti Visual Studio. Jika beberapa identitas berada dalam cache, maka nilai variabel AZURE_USERNAME lingkungan digunakan untuk memilih identitas mana yang akan digunakan. Lihat SharedTokenCacheCredential untuk detail selengkapnya.

  5. Identitas saat ini masuk ke Azure CLI.

  6. Identitas saat ini masuk ke Azure PowerShell.

  7. Identitas saat ini masuk ke Azure Developer CLI.

Perilaku default ini dapat dikonfigurasi dengan argumen kata kunci.

EnvironmentCredential

Kredensial yang dikonfigurasi oleh variabel lingkungan.

Kredensial ini mampu mengautentikasi sebagai perwakilan layanan menggunakan rahasia klien atau sertifikat, atau sebagai pengguna dengan nama pengguna dan kata sandi. Konfigurasi dicoba dalam urutan ini, menggunakan variabel lingkungan ini:

Perwakilan layanan dengan rahasia:

  • AZURE_TENANT_ID: ID penyewa perwakilan layanan. Juga disebut ID 'direktori'.

  • AZURE_CLIENT_ID: ID klien perwakilan layanan

  • AZURE_CLIENT_SECRET: salah satu rahasia klien perwakilan layanan

  • AZURE_AUTHORITY_HOST: otoritas titik akhir Azure Active Directory, misalnya "login.microsoftonline.com", otoritas untuk Azure Public Cloud, yang merupakan default ketika tidak ada nilai yang diberikan.

Perwakilan layanan dengan sertifikat:

  • AZURE_TENANT_ID: ID penyewa perwakilan layanan. Juga disebut ID 'direktori'.

  • AZURE_CLIENT_ID: ID klien perwakilan layanan

  • AZURE_CLIENT_CERTIFICATE_PATH: jalur ke file sertifikat PEM atau PKCS12 termasuk kunci privat.

  • AZURE_CLIENT_CERTIFICATE_PASSWORD: (opsional) kata sandi file sertifikat, jika ada.

  • AZURE_AUTHORITY_HOST: otoritas titik akhir Azure Active Directory, misalnya "login.microsoftonline.com", otoritas untuk Azure Public Cloud, yang merupakan default ketika tidak ada nilai yang diberikan.

ManagedIdentityCredential

Mengautentikasi dengan identitas terkelola Azure di lingkungan hosting apa pun yang mendukung identitas terkelola.

Kredensial ini default untuk menggunakan identitas yang ditetapkan sistem. Untuk mengonfigurasi identitas yang ditetapkan pengguna, gunakan salah satu argumen kata kunci. Lihat Dokumentasi Azure Active Directory untuk informasi selengkapnya tentang mengonfigurasi identitas terkelola untuk aplikasi.

OnBehalfOfCredential

Mengautentikasi perwakilan layanan melalui alur atas nama.

Alur ini biasanya digunakan oleh layanan tingkat menengah yang mengotorisasi permintaan ke layanan lain dengan identitas pengguna yang didelegasikan. Karena ini bukan alur autentikasi interaktif, aplikasi yang menggunakannya harus memiliki persetujuan admin untuk setiap izin yang didelegasikan sebelum meminta token untuk mereka. Lihat Dokumentasi Azure Active Directory untuk deskripsi lebih rinci tentang alur atas nama.

SharedTokenCacheCredential

Mengautentikasi menggunakan token di cache lokal yang dibagikan antara aplikasi Microsoft.

VisualStudioCodeCredential

Mengautentikasi saat pengguna Azure masuk ke Visual Studio Code melalui ekstensi 'Akun Azure'.

Ini adalah masalah yang diketahui bahwa kredensial ini tidak berfungsi dengan versi ekstensi Akun Azure yang lebih baru dari 0.9.11. Perbaikan jangka panjang untuk masalah ini sedang berlangsung. Sementara itu, pertimbangkan untuk mengautentikasi dengan AzureCliCredential.

WorkloadIdentityCredential

Mengautentikasi menggunakan identitas beban kerja Azure Active Directory.

Autentikasi identitas beban kerja adalah fitur di Azure yang memungkinkan aplikasi yang berjalan pada komputer virtual (VM) untuk mengakses sumber daya Azure lainnya tanpa perlu perwakilan layanan atau identitas terkelola. Dengan autentikasi identitas beban kerja, aplikasi mengautentikasi diri mereka sendiri menggunakan identitas mereka sendiri, daripada menggunakan perwakilan layanan bersama atau identitas terkelola. Di bawah tenda, autentikasi identitas beban kerja menggunakan konsep Kredensial Akun Layanan (SAC), yang secara otomatis dibuat oleh Azure dan disimpan dengan aman di VM. Dengan menggunakan autentikasi identitas beban kerja, Anda dapat menghindari kebutuhan untuk mengelola dan memutar perwakilan layanan atau identitas terkelola untuk setiap aplikasi di setiap VM. Selain itu, karena SAC dibuat secara otomatis dan dikelola oleh Azure, Anda tidak perlu khawatir tentang menyimpan dan mengamankan kredensial sensitif itu sendiri.

WorkloadIdentityCredential mendukung autentikasi identitas beban kerja Azure di Azure Kubernetes dan memperoleh token menggunakan kredensial akun layanan yang tersedia di lingkungan Azure Kubernetes. Lihat gambaran umum identitas beban kerja ini untuk informasi selengkapnya.