Memasang GitHub App di enterprise tidak membuka kode repositori
Skrip pengaturan perusahaan kadang masih bergantung pada token pribadi pegawai yang sudah keluar. Pada 23 Oktober, GitHub mengumumkan ketersediaan umum instalasi enterprise untuk GitHub Apps. Lebih banyak pekerjaan administrasi dapat beralih dari PAT klasik, tetapi pemasangan di enterprise tidak memberi akses ke seluruh kode.
Apa yang dapat dikelola aplikasi enterprise
Pengumuman mencakup kebijakan repositori, ruleset, pembacaan permintaan bypass, dan daftar IP yang diizinkan. Membaca permintaan bypass berbeda izinnya dari mengubah aturan. Memakai fitur baru bukan alasan untuk menyalakan semua izin tulis.
Instalasi enterprise hanya memberikan izin enterprise. Izin organisasi atau repositori yang ikut diminta aplikasi tidak diberikan melalui instalasi ini. Membaca kode dua organisasi memerlukan instalasi terpisah dan akses repositori yang sesuai. Jadi, dapat membaca pengaturan enterprise tetapi ditolak membaca kode belum tentu berarti pemasangan gagal.
Satu aplikasi, beberapa instalasi
Bayangkan enterprise acme dengan organisasi web dan mobile. Aplikasi yang dipasang pada ketiga akun mempunyai tiga instalasi. Token enterprise tidak menggantikan token web, dan token web tidak dapat dipakai untuk mobile. Gambar buatan sendiri ini merupakan contoh fiktif, bukan layar produk atau akun pelanggan.

Karena itu, cache token sebaiknya tidak memakai nama aplikasi saja sebagai kunci. Menyertakan ID instalasi membantu memisahkan pekerjaan kebijakan enterprise dari pembacaan repositori. Ini contoh penerapan batas akun yang dijelaskan dokumentasi.
Pertemuan izin aplikasi dan pengguna
Token akses pengguna bergantung pada izin aplikasi dan pengguna. Jika pengguna hanya boleh membaca, aplikasi tidak bisa melampaui hak tersebut saat bertindak atas namanya. Token akses instalasi bekerja berdasarkan izin aplikasi yang diberikan pada instalasi itu.
Penerbitan token memakai JWT aplikasi dan ID instalasi tujuan. Dokumentasi menjelaskan POST /app/installations/INSTALLATION_ID/access_tokens dan masa berlaku satu jam. Octokit dapat membuat serta memperbaruinya. Token singkat tetap memerlukan perlindungan private key dan cache yang membedakan setiap instalasi.

Sebelum mengganti token pribadi
Jika skrip mencampur kebijakan enterprise dengan kode beberapa organisasi, mengganti string token mungkin belum cukup. Pisahkan pekerjaan, cek dukungan tiap API, dan pilih jenis autentikasi yang sesuai. Tidak semua operasi GraphQL enterprise mendukung aplikasi. Memulai dari pembacaan memudahkan perbandingan hasil.
Ada perbedaan waktu pembaruan sumber: changelog 23 Oktober menyebut tersedia umum, sedangkan halaman instalasi yang dicek hari ini masih menyebut public preview. Status peluncuran di sini mengikuti pengumuman bertanggal, dan cakupan izin mengikuti dokumentasi. Manfaatnya adalah merancang otomatisasi berdasarkan akun dan tugas, bukan menyalin seluruh kewenangan seseorang.
Sumber dan bacaan lanjutan
GitHub Docs · Enterprise installation