Izinkan pengguna anonim untuk hanya melihat daftar pekerjaan tanpa menjelajahi ruang kerja di Jenkins

15

Kami menjalankan Jenkins CI. Secara umum kami ingin menyediakan

  1. akses penuh ke pengguna terautentikasi dari grup tertentu
  2. akses baca penuh ke pengguna anonim
  3. blokir pengguna anonim untuk mengakses proyek tertentu (sepenuhnya)

Kami menggunakan basis data pengguna / grup Unix dan Strategi Otorisasi Matriks berbasis Proyek . Poin (1) dan (2) bekerja dengan baik tetapi kami mengalami kesulitan untuk mencapai (3).

Kami telah mencoba:

  • dalam Keamanan Global menghapus semua hak untuk anonim dan kemudian memberikannya dalam keamanan berbasis proyek tetapi setelah itu semua permintaan anonim (bahkan ke halaman Jenkins utama) menghasilkan halaman login
  • di Global Security menambahkan dalam langkah-langkah hak berikut: Lihat-Baca (tidak berfungsi), Temukan-Pekerjaan (tidak berfungsi), Baca-Kerja (tidak berfungsi), Overal-Read - yang terakhir ini tampaknya berhasil namun itu memberi pengguna anonim terlalu banyak hak dan kami tidak dapat membatasi akses ke proyek tertentu.

tl; dr

kami ingin Jenkins CI sepenuhnya terbuka (baca-bijaksana) dengan beberapa proyek yang sepenuhnya tersembunyi / diblokir untuk anonim.

Wojtek
sumber

Jawaban:

20

OK, jadi saya sudah berhasil melakukannya:

  • Anda memerlukan Plugin Strategi Otorisasi Berbasis Peran
  • aktifkan strategi otentikasi ini di Konfigurasi Keamanan Global
  • di Kelola dan Tetapkan Peran / Kelola Peran buat peran baru anonim dan disahkan untuk peran global dan proyek
  • dalam peran Global, berikan peran anonim hanya untuk Keseluruhan / Baca (ini setidaknya akan mengakses layar jenkins utama pengguna anonim dengan navigasi dan tautan ke halaman masuk, bukan prompt masuk segera)
  • dalam peran Proyek, tambahkan peran anonim dengan pola regexp yang akan cocok dengan proyek yang Anda ingin akses pengguna anonim dan setelah menambahkan peran ini, berikan hak untuk Pekerjaan / Baca dan Pekerjaan / Temukan
  • arahkan ke Kelola dan Tetapkan Peran / Tetapkan Peran dan tetapkan kelompok pengguna Anonim ke peran anonim (dan pengguna yang diautentikasi untuk grup tertentu). MENYIMPAN
Wojtek
sumber
Gotcha terkait adalah bahwa strategi peran peka huruf besar-kecil dalam mencocokkan nama pengguna. Saya telah memasukkan nama pengguna huruf besar di halaman "Tetapkan Peran". Saya masuk dengan nama pengguna huruf kecil dan meskipun nama pengguna saya ditampilkan dalam huruf besar, tidak ada peran yang cocok dengan pengguna saya. Izin saya yang diijinkan jatuh kembali ke pengguna anonim. Jika saya masuk dengan nama pengguna huruf besar, itu berfungsi.
s_t_e_v_e
Sementara jawaban ini berfungsi, Anda pernah menjelaskan tujuan atau konfigurasi peran "terotentikasi".
Brad Wood
itu hanya jalan pintas - bisa "anonim" dan "istimewa"; Saya menggunakan "autentikasi" karena bagian dari orang yang tersedia untuk melihat dan mengedit tugas-tugas tersembunyi tertentu akan sama dengan yang sebenarnya memiliki akun.
Wojtek
Video ini membantu saya .. savjee.be/videos/get-started-with-jenkins/…
Anand Varkey Philips
2

Dengan https://wiki.jenkins.io/display/JENKINS/Role+Strategy+Pluginplugin di atas

maka Anda TIDAK perlu menambahkan authenticatedperan di halaman Kelola Peran .

Screenshot: Kelola Peran & Tetapkan Peran

Yanjiong Wang
sumber