authentication) bên trong mọi pod Ayakaleaf Pro. Nó không có tác vụ nền và không có pod riêng. Phía nhà cung cấp (client, redirect URI, claim quản trị viên) giống như trên Toolkit, vì vậy trước tiên hãy thiết lập OpenID Provider (OP) của bạn theo Xác thực OIDC, sau đó đưa các giá trị vào Kubernetes như bên dưới.
Các thành phần chạy ở đâu
Cấu hình
1
Đăng ký Overleaf tại OP
Cho phép các địa chỉ sau trong OP của bạn, được tạo từ
OVERLEAF_SITE_URL:Tìm năm URL trong tài liệu discovery của OP như mô tả trong Tìm các giá trị bằng tài liệu discovery.
2
Thêm các thiết lập vào ConfigMap
Thêm vào
overleaf-env (30-config.yaml, hoặc 60-config.yaml khi dùng nhiều replica):30-config.yaml (additions)
EXTERNAL_AUTH nhận một danh sách phân tách bằng dấu cách, ví dụ ldap oidc. Xem Biến môi trường để biết mọi thiết lập OVERLEAF_OIDC_*; tất cả đều được đặt trong ConfigMap, ngoại trừ client secret.3
Đưa client secret vào Secret
4
Tin cậy một CA riêng (tùy chọn)
Nếu chứng chỉ của OP được cấp bởi CA riêng của bạn, hãy thêm CA vào Secret
overleaf-certs được mount tại /var/lib/overleaf/certs (xem Chứng chỉ và các tệp khác) và trỏ Node.js tới nó:5
Áp dụng và khởi động lại
405 cho GET) đều có nghĩa là endpoint truy cập được; 000 nghĩa là không.Nhiều replica
Không cần gì thêm. Giá trịstate của một lần đăng nhập và ID token dùng để đăng xuất được lưu trong session nằm trên Redis, nên callback hoạt động trên bất kỳ replica nào nhận được nó.
Đã kiểm thử trên Kubernetes
Với goauthentik làm OP, trên Kubernetes 1.37 với ba replica phía sau HAProxy, các bài kiểm thử end-to-end của chúng tôi cho OIDC đều đạt (35 trường hợp): đăng nhập và đăng xuất qua OP; ánh xạ quản trị viên theo nhóm, theo email và theo một giá trị đơn, và khi không có ánh xạ; cập nhật tên và cờ quản trị viên ở mỗi lần đăng nhập; liên kết và hủy liên kết tài khoản; đặt lại và thay đổi mật khẩu của tài khoản OIDC; tài khoản bị tạm ngưng;OVERLEAF_OIDC_ALLOWED_EMAIL_DOMAINS; OVERLEAF_DISABLE_LOCAL_LOGIN; và OIDC kết hợp với truy cập công khai.
Hỏi & Đáp
Tôi xem lý do đăng nhập thất bại ở đâu?
Tôi xem lý do đăng nhập thất bại ở đâu?
Trả lời: Trong log web của pod đã phục vụ yêu cầu, không phải trong Khi có nhiều replica, hãy kiểm tra từng
kubectl logs:overleaf-N.
