Bagikan melalui


Memecahkan masalah autentikasi lingkungan pengembangan

Artikel ini memberikan panduan tentang cara menangani masalah yang muncul saat melakukan autentikasi Azure SDK untuk aplikasi Java yang berjalan di mesin pengembang secara lokal, melalui berbagai implementasi TokenCredential. Untuk informasi selengkapnya, lihat Autentikasi Azure di lingkungan pengembangan Java.

Memecahkan masalah AzureCliCredential

Ketika Anda menggunakan AzureCliCredential, Anda dapat secara opsional mencoba/menangkap untuk CredentialUnavailableException. Tabel berikut menunjukkan kesalahan yang ditunjukkan pengecualian ini, dan metode mitigasi:

Pesan kesalahan Deskripsi Mitigasi
Azure CLI not installed Azure CLI tidak diinstal atau tidak dapat ditemukan. - Pastikan Anda telah menginstal Azure CLI dengan benar.
- Memastikan bahwa lokasi penginstalan telah ditambahkan ke PATH variabel lingkungan.
Please run 'az login' to set up account Saat ini tidak ada akun yang masuk ke Azure CLI, atau proses masuk telah kedaluwarsa. - Masuk ke Azure CLI menggunakan az login perintah . Untuk informasi selengkapnya, lihat Masuk dengan Azure CLI.
- Validasi bahwa Azure CLI dapat memperoleh token. Untuk informasi selengkapnya, lihat bagian berikutnya.

Verifikasi bahwa Azure CLI dapat memperoleh token

Anda dapat memverifikasi bahwa Anda telah mengautentikasi Azure CLI dengan benar dan dapat memperoleh token. Pertama, gunakan perintah berikut untuk memverifikasi bahwa akun saat ini masuk ke Azure CLI:

az account show

Setelah Anda memverifikasi Bahwa Azure CLI menggunakan akun yang benar, gunakan perintah berikut untuk memvalidasi bahwa azure CLI dapat memperoleh token untuk akun ini:

az account get-access-token \
    --output json \
    --resource https://management.core.windows.net

Peringatan

Output perintah ini berisi token akses yang valid. Untuk menghindari penyusupan keamanan akun, jangan bagikan token akses ini.

Memecahkan masalah AzureDeveloperCliCredential

Ketika Anda menggunakan AzureDeveloperCliCredential, Anda dapat secara opsional mencoba/menangkap untuk CredentialUnavailableException. Tabel berikut menunjukkan kesalahan yang ditunjukkan pengecualian ini, dan metode mitigasi:

Pesan kesalahan Deskripsi Mitigasi
Azure Developer CLI not installed Azure Developer CLI tidak diinstal atau tidak dapat ditemukan. - Pastikan Anda telah menginstal Azure Developer CLI dengan benar.
- Memastikan bahwa lokasi penginstalan telah ditambahkan ke PATH variabel lingkungan.
Please run 'azd auth login' to set up account Saat ini tidak ada akun yang masuk ke Azure Developer CLI, atau rincian masuk telah kedaluwarsa. - Masuk ke Azure Developer CLI menggunakan perintah azd auth login.
- Validasi bahwa Azure Developer CLI dapat memperoleh token. Untuk informasi selengkapnya, lihat bagian berikutnya.

Verifikasi bahwa Azure Developer CLI dapat memperoleh token

Anda dapat memverifikasi bahwa Anda telah mengautentikasi CLI Pengembang Azure dengan benar, dan dapat memperoleh token. Pertama, gunakan perintah berikut untuk memverifikasi bahwa akun saat ini masuk ke Azure Developer CLI:

azd config list

Setelah memverifikasi Bahwa Azure Developer CLI menggunakan akun yang benar, Anda dapat menggunakan perintah berikut untuk memvalidasi bahwa CLI Pengembang Azure dapat memperoleh token untuk akun ini:

azd auth token --output json --scope https://management.core.windows.net/.default

Peringatan

Output perintah ini berisi token akses yang valid. Untuk menghindari penyusupan keamanan akun, jangan bagikan token akses ini.

Memecahkan masalah AzurePowerShellCredential

Ketika Anda menggunakan AzurePowerShellCredential, Anda dapat secara opsional mencoba/menangkap untuk CredentialUnavailableException. Tabel berikut menunjukkan kesalahan yang ditunjukkan pengecualian ini, dan metode mitigasi:

Pesan kesalahan Deskripsi Mitigasi
PowerShell isn't installed. Penginstalan lokal PowerShell tidak ditemukan. Pastikan Anda telah menginstal PowerShell dengan benar pada mesin.
Az.Account module >= 2.2.0 isn't installed. Modul Az.Account yang diperlukan untuk autentikasi di Azure PowerShell belum diinstal. Instal modul Az.Account terbaru. Untuk informasi lebih lanjut, lihat Cara menginstal Azure PowerShell.
Please run 'Connect-AzAccount' to set up account. Saat ini tidak ada akun yang masuk ke Azure PowerShell. - Masuk ke Azure PowerShell dengan menggunakan perintah Connect-AzAccount. Untuk informasi selengkapnya, lihat Masuk dengan Azure PowerShell
- Validasi bahwa Azure PowerShell dapat memperoleh token. Untuk informasi selengkapnya, lihat bagian berikutnya.

Verifikasi bahwa Azure PowerShell bisa mendapatkan token

Anda dapat memverifikasi bahwa Anda telah mengautentikasi Azure PowerShell dengan benar, dan dapat memperoleh token. Pertama, gunakan perintah berikut untuk memverifikasi bahwa akun saat ini masuk ke Azure CLI:

Get-AzContext

Perintah ini menghasilkan output yang mirip dengan contoh berikut:

Name                                     Account             SubscriptionName    Environment         TenantId
----                                     -------             ----------------    -----------         --------
Subscription1 (xxxxxxxx-xxxx-xxxx-xxx... test@outlook.com    Subscription1       AzureCloud          xxxxxxxx-x...

Setelah memverifikasi Azure PowerShell menggunakan akun yang benar, Anda bisa menggunakan perintah berikut untuk memvalidasi bahwa azure PowerShell dapat memperoleh token untuk akun ini.

Get-AzAccessToken -ResourceUrl "https://management.core.windows.net"

Peringatan

Output perintah ini berisi token akses yang valid. Untuk menghindari penyusupan keamanan akun, jangan bagikan token akses ini.

Memecahkan masalah VisualStudioCodeCredential

Catatan

Ini adalah masalah yang diketahui bahwa tidak berfungsi dengan versi ekstensi Akun Azure yang lebih baru dari . Perbaikan jangka panjang untuk masalah ini sedang berlangsung. Sementara itu, pertimbangkan untuk melakukan autentikasi melalui Azure CLI.

Ketika Anda menggunakan VisualStudioCodeCredential, Anda dapat secara opsional mencoba/menangkap untuk CredentialUnavailableException. Tabel berikut menunjukkan kesalahan yang ditunjukkan pengecualian ini, dan metode mitigasi:

Pesan kesalahan Deskripsi Mitigasi
Failed To Read VS Code Credentials</p></p>OR</p>Authenticate via Azure Tools plugin in VS Code Tidak ada informasi akun Azure yang ditemukan dalam konfigurasi Visual Studio Code. - Pastikan Anda telah menginstal Plugin Akun Azure dengan benar.
- Gunakan Perintah Lihat Palet Perintah untuk menjalankan perintah Azure: Masuk. Perintah ini membuka jendela browser dan menampilkan halaman yang memungkinkan Anda masuk ke Azure.
- Jika Anda sudah menginstal ekstensi Akun Azure dan telah masuk ke akun Anda, coba keluar dan masuk lagi. Tindakan ini mengisi ulang cache dan berpotensi mengurangi kesalahan yang Anda dapatkan.
MSAL Interaction Required Exception VisualStudioCodeCredential dapat membaca kredensial yang di-cache dari dalam cache tetapi kemungkinan token yang di-cache sudah kedaluwarsa. Masuk ke ekstensi Akun Azure melalui Palet Perintah untuk menjalankan Azure: Masuk di VS Code IDE.
ADFS tenant not supported Autentikasi Layanan Azure Visual Studio saat ini tidak mendukung penyewa ADFS. Gunakan kredensial dari cloud yang didukung saat mengautentikasi dengan Visual Studio. Untuk informasi selengkapnya tentang cloud yang didukung, lihat Cloud nasional.

Langkah berikutnya

Jika panduan pemecahan masalah dalam artikel ini tidak membantu mengatasi masalah saat Anda menggunakan pustaka klien Azure SDK untuk Java, kami sarankan Anda mengajukan masalah di repositori Azure SDK for Java GitHub.