authentication) di dalam setiap pod Ayakaleaf Pro. Login ini tidak memiliki job latar belakang maupun pod terpisah. Siapkan penyedia identitas (IdP) seperti pada Autentikasi SAML, lalu masukkan nilai-nilai dan sertifikat IdP ke Kubernetes seperti di bawah ini.
Di mana semuanya berjalan
Konfigurasi
1
Daftarkan Overleaf di IdP
Panduan langkah demi langkah goauthentik menunjukkan letak pengaturan ini.
2
Masukkan sertifikat IdP ke Secret overleaf-certs
Toolkit membaca sertifikat dari Jika Secret sudah ada, tambahkan file ke dalamnya: hapus dan buat ulang dengan setiap
data/overleaf/certs/. Di Kubernetes, sertifikat berasal dari Secret overleaf-certs, yang di-mount di /var/lib/overleaf/certs seperti dijelaskan di Sertifikat dan file lainnya:--from-file, atau gunakan kubectl -n overleaf edit secret overleaf-certs.OVERLEAF_SAML_IDP_CERT menerima sebuah path, atau daftar path dalam format JSON selama rotasi sertifikat. Pengaturan ini tidak menerima teks PEM itu sendiri.3
Tambahkan pengaturan ke ConfigMap
30-config.yaml (additions)
OVERLEAF_SAML_* tercantum di Variabel Lingkungan. Semuanya masuk ke ConfigMap: tidak ada yang merupakan secret itu sendiri. File kunci (OVERLEAF_SAML_PRIVATE_KEY, OVERLEAF_SAML_DECRYPTION_PVK) masuk ke overleaf-certs, dan ConfigMap menyimpan path-nya.4
Terapkan dan restart
overleaf-certs juga memerlukan restart ini.Beberapa replika
IdP mengembalikan pengguna ke ACS URL denganPOST lintas situs. Browser tidak mengirim cookie SameSite=Lax bersamanya, sehingga permintaan tersebut tidak membawa cookie sesi Overleaf maupun, di Chrome dan Edge, sticky cookie milik load balancer, dan dapat tiba di replika mana pun. Dengan pengaturan default hal ini tidak masalah: replika yang menerimanya membuat sesi di Redis dan load balancer mempertahankan pengguna di replika tersebut sejak saat itu.
Diuji di Kubernetes
Dengan goauthentik sebagai IdP (binding HTTP-POST, assertion dan respons yang ditandatangani), di Kubernetes 1.37 dengan tiga replika di belakang HAProxy, pengujian end-to-end kami untuk SAML lulus (19 kasus): admin pertama dari launchpad yang login melalui SAML, login dengan sertifikat IdP darioverleaf-certs, pembuatan akun dan login kembali, pemetaan admin berdasarkan grup maupun tanpa pemetaan, nama dan flag admin yang diperbarui pada setiap login, logout melalui IdP, aturan kata sandi untuk akun SAML, dan akun yang ditangguhkan. OVERLEAF_SAML_VALIDATE_IN_RESPONSE_TO dibiarkan pada nilai default-nya.
Tanya Jawab
Login melalui SAML langsung menampilkan “Something went wrong”
Login melalui SAML langsung menampilkan “Something went wrong”
Jawaban: Strategi SAML gagal dimuat. Pod tetap menjadi siap, jadi periksa log web dari setiap pod:Penyebab umum:
OVERLEAF_SAML_IDP_CERT mengarah ke file yang tidak ada di overleaf-certs, boolean yang bukan "true" atau "false", atau JSON yang tidak valid. Jika EXTERNAL_AUTH mencantumkan beberapa metode, error seperti ini juga menonaktifkan metode setelah SAML (ldap, lalu saml, lalu oidc).Apakah IdP perlu menjangkau Overleaf, atau Overleaf perlu menjangkau IdP?
Apakah IdP perlu menjangkau Overleaf, atau Overleaf perlu menjangkau IdP?
Jawaban: Tidak keduanya, untuk login dan logout: IdP dan Overleaf hanya bertukar pesan melalui browser pengguna. Hanya jika Anda mengonfigurasi IdP dengan URL metadata, IdP akan mengunduh
${OVERLEAF_SITE_URL}/saml/meta.
