Bagikan melalui


Mengonfigurasi pengelola kredensial - GITHub API

BERLAKU UNTUK: Semua tingkatAN API Management

Dalam artikel ini, Anda mempelajari cara membuat koneksi terkelola di API Management dan memanggil API GitHub yang memerlukan token OAuth 2.0. Jenis pemberian kode otorisasi digunakan dalam contoh ini.

Anda akan mempelajari cara untuk:

  • Mendaftarkan aplikasi di GitHub
  • Mengonfigurasi penyedia kredensial di API Management
  • Mengonfigurasi koneksi
  • Membuat API di API Management dan mengonfigurasi kebijakan
  • Menguji API GitHub Anda di API Management

Prasyarat

  • Akun GitHub diperlukan.
  • Instans API Management yang sedang berjalan. Jika perlu, buat instans Azure API Management.
  • Aktifkan identitas terkelola yang ditetapkan sistem untuk API Management dalam instans API Management.

Langkah 1: Daftarkan aplikasi di GitHub

Buat aplikasi GitHub OAuth untuk API dan berikan izin yang sesuai untuk permintaan yang ingin Anda panggil.

  1. Masuk ke GitHub.

  2. Di profil akun Anda, buka Pengaturan > Pengembang Pengaturan > Aplikasi OAuth. Pilih Aplikasi OAuth baru.

    Cuplikan layar mendaftarkan aplikasi OAuth yang baru di GitHub.

    1. Masukkan Nama aplikasi dan URL Beranda untuk aplikasi. Untuk contoh ini, Anda dapat menyediakan URL tempat penampung seperti http://localhost.
    2. Secara opsional, tambahkan Deskripsi aplikasi.
    3. Di URL panggilan balik otorisasi (URL pengalihan), masukkan https://authorization-manager.consent.azure-apim.net/redirect/apim/<YOUR-APIM-SERVICENAME>, mengganti nama instans API Management tempat Anda akan mengonfigurasi penyedia kredensial.
  3. Pilih Daftar aplikasi.

  4. Pada halaman Umum , salin ID Klien, yang akan Anda gunakan di Langkah 2.

  5. Pilih Membuat rahasia klien baru. Salin rahasia, yang tidak akan ditampilkan lagi, dan yang akan Anda gunakan di Langkah 2.

    Cuplikan layar yang menunjukkan cara mendapatkan ID klien dan rahasia klien untuk aplikasi di GitHub.

Langkah 2: Mengonfigurasi penyedia kredensial di API Management

  1. Masuk ke portal dan buka instans API Management Anda.

  2. Di menu sebelah kiri, pilih Manajer> info masuk+ Buat.

    Cuplikan layar pembuatan kredensial API Management di portal Azure.

  3. Pada halaman Buat penyedia kredensial, masukkan pengaturan berikut ini:

    Pengaturan Nilai
    Nama penyedia kredensial Nama pilihan Anda, seperti github-01
    IdP Lalu pilih GitHub
    Jenis pemberian Pilih Kode otorisasi
    ID klien Tempelkan nilai yang Anda salin sebelumnya dari pendaftaran aplikasi
    Rahasia Klien Tempelkan nilai yang Anda salin sebelumnya dari pendaftaran aplikasi
    Cakupan Untuk contoh ini, atur cakupan ke Pengguna
  4. Pilih Buat.

  5. Saat diminta, tinjau URL pengalihan OAuth yang ditampilkan, dan pilih Ya untuk mengonfirmasi bahwa URL tersebut cocok dengan URL yang Anda masukkan dalam pendaftaran aplikasi.

Langkah 3: Mengonfigurasi koneksi

Pada tab Koneksi ion, selesaikan langkah-langkah untuk koneksi Anda ke penyedia.

Catatan

Saat Anda mengonfigurasi koneksi, API Management secara default menyiapkan kebijakan akses yang memungkinkan akses oleh identitas terkelola yang ditetapkan sistem instans. Akses ini cukup untuk contoh ini. Anda dapat menambahkan kebijakan akses tambahan sesuai kebutuhan.

  1. Masukkan nama Koneksi ion, lalu pilih Simpan.
  2. Di bawah Langkah 2: Masuk ke koneksi Anda (untuk jenis pemberian kode otorisasi), pilih tautan untuk masuk ke penyedia kredensial. Selesaikan langkah-langkah di sana untuk mengotorisasi akses, dan kembali ke API Management.
  3. Di bawah Langkah 3: Tentukan siapa yang akan memiliki akses ke koneksi ini (Kebijakan akses), anggota identitas terkelola dicantumkan. Menambahkan anggota lain bersifat opsional, tergantung pada skenario Anda.
  4. Pilih Selesaikan.

Koneksi baru muncul dalam daftar koneksi, dan memperlihatkan status Koneksi. Jika Anda ingin membuat koneksi lain untuk penyedia kredensial, selesaikan langkah-langkah sebelumnya.

Tip

Gunakan portal untuk menambahkan, memperbarui, atau menghapus koneksi ke penyedia kredensial kapan saja. Untuk informasi selengkapnya, lihat Mengonfigurasi beberapa koneksi.

Langkah 4: Membuat API di API Management dan mengonfigurasi kebijakan

  1. Masuk ke portal dan buka instans API Management Anda.

  2. Di menu sebelah kiri, pilih API > + Tambahkan API.

  3. Pilih HTTP dan masukkan pengaturan berikut. Lalu pilih Buat.

    Pengaturan Nilai
    Nama tampilan githubuser
    URL layanan Web https://api.github.com
    Akhiran URL API githubuser
  4. Navigasikan ke API yang baru dibuat dan pilih Tambahkan Operasi. Masukkan pengaturan berikut dan pilih Simpan.

    Pengaturan Nilai
    Nama tampilan getauthdata
    URL untuk GET /user

    Cuplikan layar menambahkan operasi getauthdata ke API di portal.

  5. Ikuti langkah-langkah sebelumnya untuk menambahkan operasi lain dengan pengaturan berikut.

    Pengaturan Nilai
    Nama tampilan getauthfollowers
    URL untuk GET /user/followers
  6. Pilih Semua operasi. Di bagian Pemrosesan masuk, pilih (</>) ikon (penyunting kode).

  7. Salin berikut ini, dan tempel di editor kebijakan. Pastikan provider-id nilai dan authorization-id dalam get-authorization-context kebijakan sesuai dengan nama penyedia dan koneksi kredensial, masing-masing, yang Anda konfigurasikan di langkah-langkah sebelumnya. Pilih Simpan.

    <policies>
        <inbound>
            <base />
            <get-authorization-context provider-id="github-01" authorization-id="first-connection" context-variable-name="auth-context" identity-type="managed" ignore-error="false" />
            <set-header name="Authorization" exists-action="override">
                <value>@("Bearer " + ((Authorization)context.Variables.GetValueOrDefault("auth-context"))?.AccessToken)</value>
            </set-header>
            <set-header name="User-Agent" exists-action="override">
                <value>API Management</value>
            </set-header>
        </inbound>
        <backend>
            <base />
        </backend>
        <outbound>
            <base />
        </outbound>
        <on-error>
            <base />
        </on-error>
    </policies>
    

Definisi kebijakan sebelumnya terdiri dari tiga bagian:

  • Kebijakan get-authorization-context mengambil token otorisasi dengan mereferensikan penyedia info masuk dan koneksi yang Anda buat sebelumnya.
  • Kebijakan set-header pertama membuat header HTTP dengan token otorisasi yang diambil.
  • Kebijakan set-header kedua membuat User-Agent header (persyaratan GITHub API).

Langkah 5: Uji API

  1. Pada tab Uji , pilih satu operasi yang Anda konfigurasi.

  2. Pilih Kirim.

    Cuplikan layar pengujian API yang berhasil di dalam portal.

    Respons yang berhasil mengembalikan data pengguna dari API GitHub.