Sebarkan kebijakan kustom dengan GitHub Actions
Tindakan GitHub memungkinkan Anda membuat alur kerja integrasi berkelanjutan (CI) dan penyebaran berkelanjutan (CD) kustom langsung di repositori GitHub Anda. Artikel ini menjelaskan cara mengotomatiskan penyebaran kebijakan kustom Azure Active Directory B2C (Azure AD B2C) menggunakan Tindakan GitHub.
Untuk mengotomatiskan proses penyebaran kebijakan kustom, gunakan Tindakan GitHub untuk menyebarkan kebijakan kustom Azure AD B2C. GitHub Action ini dikembangkan oleh komunitas Azure AD B2C.
Tindakan ini menyebarkan kebijakan kustom Azure AD B2C ke penyewa Azure AD B2C Anda menggunakan API Microsoft Graph. Jika kebijakan belum ada di penyewa Anda, itu akan dibuat. Jika tidak, itu akan diganti.
Penting
Mengelola kebijakan kustom Azure AD B2C dengan Azure Pipelines saat ini menggunakan operasi pratinjau yang tersedia di titik akhir /beta
Microsoft Graph API. Penggunaan API ini dalam aplikasi produksi tidak didukung. Untuk informasi selengkapnya, lihat referensi titik akhir Microsoft Graph REST API beta.
Prasyarat
- Selesaikan langkah-langkah dalam Memulai dengan kebijakan kustom di Azure Active Directory B2C.
- Jika Anda belum membuat repositori GitHub, buat satu.
Memilih folder kebijakan kustom
Repositori GitHub Anda dapat berisi semua file kebijakan Azure AD B2C dan aset lainnya. Di direktori akar repositori Anda, buat atau pilih folder yang sudah ada yang berisi kebijakan kustom Anda.
Misalnya, pilih folder bernama kebijakan. Tambahkan file kebijakan kustom Azure AD B2C Anda ke folder kebijakan. Kemudian Terapkan perubahan.
Jangan Dorong perubahan. Anda akan melakukannya nanti, setelah Anda menyiapkan alur kerja penyebaran.
Mendaftar aplikasi Microsoft Graph
Untuk mengizinkan Tindakan GitHub berinteraksi dengan API Microsoft Graph, buat pendaftaran aplikasi di penyewa Azure AD B2C Anda. Jika Anda belum melakukannya, daftarkan aplikasi Microsoft Graph.
Agar GitHub Action dapat mengakses data di Microsoft Graph, berikan izin aplikasi yang relevan kepada aplikasi terdaftar. Berikan izin Microsoft Graph>Kebijakan>Policy.ReadWrite.TrustFramework dalam Izin API pendaftaran aplikasi.
Membuat rahasia terenkripsi GitHub
Rahasia GitHub adalah variabel lingkungan terenkripsi yang Anda buat di lingkungan organisasi, repositori, atau repositori. Pada langkah ini, Anda menyimpan rahasia aplikasi untuk aplikasi yang Anda daftarkan sebelumnya di langkah Mendaftarkan aplikasi MS Graph.
Tindakan GitHub untuk menyebarkan kebijakan kustom Azure AD B2C menggunakan rahasia untuk memperoleh token akses yang digunakan untuk berinteraksi dengan API Microsoft Graph. Untuk informasi selengkapnya, lihat Membuat rahasia terenkripsi untuk repositori.
Untuk membuat rahasia GitHub, ikuti langkah-langkah berikut:
- Di GitHub, arahkan ke halaman utama repositori.
- Di bawah nama repositori Anda, pilih Pengaturan.
- Di bilah sisi kiri, pilih Rahasia.
- Pilih Rahasia repositori baru.
- Untuk Nama, ketik ClientSecret.
- Untuk Nilai, masukkan rahasia aplikasi yang Anda buat sebelumnya.
- Pilih Tambahkan rahasia.
Membuat alur kerja GitHub
Alur kerja GitHub adalah prosedur otomatis yang Anda tambahkan ke repositori Anda. Alur kerja terdiri dari satu atau lebih pekerjaan dan dapat dijadwalkan atau dipicu oleh suatu peristiwa. Pada langkah ini, Anda membuat alur kerja yang menyebarkan kebijakan kustom Anda.
Untuk membuat alur kerja, ikuti langkah-langkah berikut:
Di GitHub, arahkan ke halaman utama repositori Anda.
Di bawah nama repositori Anda, pilih Tindakan.
Jika Anda tidak mengonfigurasi alur kerja sebelumnya, pilih siapkan alur kerja sendiri. Jika tidak, pilih Alur Kerja Baru.
GitHub menawarkan untuk membuat file alur kerja bernama
main.yml
di folder.github/workflows
. File ini berisi informasi tentang alur kerja, termasuk lingkungan Azure AD B2C Anda dan kebijakan kustom untuk disebarkan. Di editor web GitHub, tambahkan kode YAML berikut:on: push env: clientId: 00000000-0000-0000-0000-000000000000 tenant: your-tenant.onmicrosoft.com jobs: build-and-deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: 'Upload TrustFrameworkBase Policy' uses: azure-ad-b2c/deploy-trustframework-policy@v3 with: folder: "./Policies" files: "TrustFrameworkBase.xml,TrustFrameworkLocalization.xml,TrustFrameworkExtensions.xml,SignUpOrSignin.xml" tenant: ${{ env.tenant }} clientId: ${{ env.clientId }} clientSecret: ${{ secrets.clientSecret }}
Perbarui properti file YAML berikut ini:
Bagian Nama Nilai env
clientId
ID aplikasi (klien) dari aplikasi yang Anda daftarkan di langkah Daftarkan aplikasi MS Graph. env
tenant
Nama penyewa Azure AD B2C Anda (misalnya, contoso.onmicrosoft.com). with
folder
Folder tempat file kebijakan kustom disimpan, misalnya, ./Policies
.with
files
Daftar file kebijakan yang dipisahkan koma untuk disebarkan, misalnya, TrustFrameworkBase.xml,TrustFrameworkLocalization.xml,TrustFrameworkExtensions.xml,SignUpOrSignin.xml
.Penting
Saat menjalankan agen dan mengunggah file kebijakan, pastikan mereka diunggah dalam urutan yang benar:
- TrustFrameworkBase.xml
- TrustFrameworkLocalization.xml
- TrustFrameworkExtensions.xml
- SignUpOrSignin.xml
- ProfileEdit.xml
- PasswordReset.xml
Pilih Mulai terapkan.
Di bawah bidang terapkan pesan, tunjukkan apakah akan menambahkan penerapan Anda ke cabang saat ini atau ke cabang baru. Pilih Terapkan file baru, atau Usulkan file baru untuk membuat permintaan tarik.
Menguji alur kerja
Untuk menguji alur kerja yang Anda buat, Dorong perubahan kebijakan kustom Anda. Setelah pekerjaan Anda mulai berjalan, Anda dapat melihat grafik visualisasi kemajuan proses dan melihat aktivitas setiap langkah di GitHub.
Di GitHub, arahkan ke halaman utama repositori Anda.
Di bawah nama repositori Anda, pilih Tindakan.
Di bilah sisi kiri, pilih alur kerja yang Anda buat.
Di bawah Alur kerja berjalan, pilih nama proses yang ingin Anda lihat.
Di bawah Pekerjaan atau di grafik visualisasi, pilih pekerjaan yang ingin Anda lihat.
Lihat hasil setiap langkah. Cuplikan layar berikut menunjukkan log langkah Unggah kebijakan kustom.
Opsional: Jadwalkan alur kerja Anda
Alur kerja yang Anda buat dipicu oleh peristiwa dorong. Jika mau, Anda dapat memilih peristiwa lain untuk memicu alur kerja, misalnya permintaan tarik.
Anda juga dapat menjadwalkan alur kerja untuk dijalankan pada waktu UTC tertentu menggunakan sintaks cron POSIX. Peristiwa jadwal memungkinkan Anda untuk memicu alur kerja pada waktu yang dijadwalkan. Untuk informasi selengkapnya, lihat Peristiwa terjadwal.
Contoh berikut memicu alur kerja setiap hari pada pukul 5.30 dan 17.30 UTC:
on:
schedule:
# * is a special character in YAML so you have to quote this string
- cron: '30 5,17 * * *'
Untuk mengedit alur kerja Anda:
Di GitHub, arahkan ke halaman utama repositori Anda.
Di bawah nama repositori Anda, pilih Tindakan.
Di bilah sisi kiri, pilih alur kerja yang Anda buat.
Di bawah Alur kerja berjalan, pilih nama proses yang ingin Anda lihat.
Dari menu, pilih tiga titik ... , lalu pilih Lihat file alur kerja.
Di editor web GitHub, pilih Edit.
Ubah
on: push
ke contoh di atas.Terapkan perubahan Anda.
Langkah berikutnya
- Pelajari cara mengonfigurasi Peristiwa yang memicu alur kerja