authentication) di dalam setiap pod Ayakaleaf Pro. Login ini tidak memiliki job latar belakang maupun pod terpisah. Sisi penyedia (client, redirect URI, klaim admin) sama seperti di Toolkit, jadi siapkan OpenID Provider (OP) Anda dengan Autentikasi OIDC terlebih dahulu, lalu masukkan nilainya ke Kubernetes seperti di bawah ini.
Di mana semuanya berjalan
Konfigurasi
1
Daftarkan Overleaf di OP
Izinkan alamat-alamat berikut di OP Anda, yang dibentuk dari
OVERLEAF_SITE_URL:Temukan kelima URL di dokumen discovery milik OP seperti dijelaskan di Menemukan nilai dengan dokumen discovery.
2
Tambahkan pengaturan ke ConfigMap
Tambahkan ke
overleaf-env (30-config.yaml, atau 60-config.yaml untuk beberapa replika):30-config.yaml (additions)
EXTERNAL_AUTH menerima daftar yang dipisahkan spasi, misalnya ldap oidc. Lihat Variabel Lingkungan untuk setiap pengaturan OVERLEAF_OIDC_*; semuanya masuk ke ConfigMap kecuali client secret.3
Masukkan client secret ke Secret
4
Percayai CA privat (opsional)
Jika sertifikat OP berasal dari CA Anda sendiri, tambahkan CA tersebut ke Secret
overleaf-certs yang di-mount di /var/lib/overleaf/certs (lihat Sertifikat dan file lainnya) dan arahkan Node.js ke sana:5
Terapkan dan restart
405 untuk GET) berarti endpoint dapat dijangkau; 000 berarti tidak.Beberapa replika
Tidak ada yang perlu ditambahkan. Nilaistate dari sebuah login dan ID token yang digunakan untuk logout disimpan di sesi, yang berada di Redis, sehingga callback berfungsi di replika mana pun yang menerimanya.
Diuji di Kubernetes
Dengan goauthentik sebagai OP, di Kubernetes 1.37 dengan tiga replika di belakang HAProxy, pengujian end-to-end kami untuk OIDC lulus (35 kasus): login, dan logout melalui OP; pemetaan admin berdasarkan grup, berdasarkan email, dan berdasarkan satu nilai, serta tanpa pemetaan; nama dan flag admin yang diperbarui pada setiap login; menautkan dan melepas tautan akun; reset kata sandi dan perubahan kata sandi akun OIDC; akun yang ditangguhkan;OVERLEAF_OIDC_ALLOWED_EMAIL_DOMAINS; OVERLEAF_DISABLE_LOCAL_LOGIN; serta OIDC bersama dengan akses publik.
Tanya Jawab
Di mana saya dapat melihat mengapa login gagal?
Di mana saya dapat melihat mengapa login gagal?
Jawaban: Di log web dari pod yang melayani permintaan tersebut, bukan di Dengan beberapa replika, periksa setiap
kubectl logs:overleaf-N.
