Memilih cara autentikasi yang tepat
Layanan Azure DevOps | Azure DevOps Server 2022 - Azure DevOps Server 2019
Untuk aplikasi yang berinteraksi dengan Azure DevOps Services, Anda harus mengautentikasi untuk mendapatkan akses ke sumber daya seperti REST API. Artikel ini menyediakan panduan untuk membantu Anda memilih mekanisme autentikasi yang tepat untuk aplikasi Anda.
Tabel berikut menguraikan mekanisme autentikasi yang direkomendasikan untuk berbagai jenis aplikasi. Lihat deskripsi, contoh, dan sampel kode yang menyertainya untuk membantu Anda memulai.
Jenis aplikasi | Deskripsi | Contoh | Mekanisme autentikasi | Sampel kode |
---|---|---|---|---|
Aplikasi sisi klien interaktif (REST) | Aplikasi klien yang memungkinkan interaksi pengguna memanggil REST API Azure DevOps Services | Aplikasi konsol menghitung proyek dalam organisasi | Microsoft Authentication Library (MSAL) | contoh |
Aplikasi sisi klien interaktif (pustaka klien) | Aplikasi klien yang memungkinkan interaksi pengguna memanggil pustaka Klien Azure DevOps Services | Aplikasi konsol menghitung bug yang ditetapkan ke pengguna saat ini | Pustaka klien | contoh |
Aplikasi JavaScript interaktif | Aplikasi JavaScript berbasis GUI | Aplikasi halaman tunggal AngularJS menampilkan informasi proyek untuk pengguna | Pustaka Autentikasi Microsoft untuk JavaScript (MSAL JS) | contoh |
Aplikasi web OAuth interaktif | Aplikasi web berbasis GUI yang memerlukan persetujuan pengguna | Dasbor Web Kustom menampilkan ringkasan build | OAuth | contoh |
Aplikasi sisi klien non-interaktif | Aplikasi sisi klien hanya teks tanpa kepala | Aplikasi konsol menampilkan semua bug yang ditetapkan untuk pengguna | Profil Perangkat | contoh |
Token akses pribadi (PAT) | Token pembawa untuk mengakses sumber daya Anda sendiri | Gunakan PAT Anda sebagai pengganti kata sandi Anda untuk permintaan REST. Tidak ideal untuk membangun aplikasi. | Tepukan | dokumen |
Aplikasi server | Aplikasi Azure DevOps Server menggunakan pustaka OM Klien | Ekstensi Azure DevOps Server yang menampilkan dasbor bug tim | Pustaka Klien | contoh |
Aplikasi perwakilan layanan | Aplikasi dengan akses ke sumber daya Azure DevOps organisasi | Fungsi Azure untuk membuat item kerja | Perwakilan layanan dan identitas terkelola | contoh |
Ekstensi web | Ekstensi Layanan Azure DevOps | Ekstensi Agile Cards | SDK Ekstensi Web VSS | contoh |
Untuk informasi lebih lanjut, baca artikel berikut:
- Tentang keamanan dan identitas.
- Autentikasi OAuth
- Perwakilan layanan dan identitas terkelola
- Pustaka Klien Azure DevOps
- Ekstensi Azure DevOps
- Gambaran umum perlindungan data Azure DevOps
Mengaktifkan invalidasi Autentikasi Dasar IIS menggunakan PATs untuk Azure DevOps Server
Untuk informasi selengkapnya, lihat Menggunakan Autentikasi Dasar IIS dengan Azure DevOps lokal.
Pertanyaan Umum
T: Mengapa akun layanan saya tidak dapat mengakses REST API Azure DevOps?
A: Akun layanan Anda mungkin belum "terwujud." Akun layanan tanpa izin masuk interaktif tidak dapat masuk. Untuk informasi selengkapnya, lihat solusinya .
T: Haruskah saya menggunakan Pustaka Klien Azure DevOps Services atau REST API Azure DevOps Services untuk aplikasi sisi klien interaktif saya?
J: Sebaiknya gunakan Pustaka Klien Azure DevOps Services melalui REST API untuk mengakses sumber daya Azure DevOps Services. Versi ini lebih sederhana dan lebih mudah dipertahankan saat versi titik akhir REST berubah. Jika pustaka klien tidak memiliki fungsionalitas tertentu, gunakan MSAL untuk autentikasi dengan REST API kami.
T: Apakah panduan ini hanya untuk Layanan Azure DevOps atau juga relevan untuk pengguna Azure DevOps Server lokal?
A: Panduan ini terutama untuk pengguna Azure DevOps Services. Untuk pengguna Azure Devops Server, sebaiknya gunakan Pustaka Klien, Autentikasi Windows, atau Token Akses Pribadi (PATs) untuk autentikasi.
T: Bagaimana jika saya ingin aplikasi saya mengautentikasi dengan Azure DevOps Server dan Azure DevOps Services?
A: Praktik terbaik adalah memiliki jalur autentikasi terpisah untuk Azure DevOps Server dan Azure DevOps Services. Anda dapat menggunakan requestContext
untuk menentukan layanan mana yang Anda akses lalu menerapkan mekanisme autentikasi yang sesuai. Jika Anda lebih suka solusi terpadu, PATs berfungsi untuk keduanya.