Authentik
Tìm hiểu cách cấu hình LibreChat để sử dụng Authentik cho xác thực người dùng.
- Truy cập Giao diện Quản trị Authentik:
- Mở Giao diện Quản trị Authentik trong trình duyệt của bạn. Bạn có thể tìm thấy tại một URL như:
https://authentik.example.com/if/admin/#/administration/overview.Chúng tôi sẽ sử dụng
https://authentik.example.comlàm URL ví dụ. Hãy thay thế URL này bằng URL của instance Authentik của bạn.
- Tạo một Application và Provider mới bằng trình hướng dẫn:
- Nhấp vào tab Applications ở thanh bên trái và nhấp vào Applications một lần nữa.
- Ở đầu trang, bạn sẽ thấy một nút có nội dung
Create with Wizard. Hãy nhấp vào đó.Lưu ý: Bạn cũng có thể tạo ứng dụng và nhà cung cấp theo cách thủ công, chỉ cần đảm bảo liên kết chúng sau đó.
- Bạn có thể đặt tên cho ứng dụng tùy ý. Trong ví dụ này, chúng tôi sẽ đặt tên là
LibreChatvà nhấn tiếp theo. - Chọn nhà cung cấp
OAuth2/OIDCvà nhấp vào tiếp theo. - Chọn các luồng xác thực và ủy quyền của bạn.
- Cuộn xuống và ghi lại
Client IDvàClient Secret. Bạn sẽ cần chúng sau này. - Trong phần Advanced protocol settings, hãy thay đổi Subject mode thành
Based on the User's Email. - Nhấp vào Submit.
- Thêm ứng dụng mới mà bạn đã tạo vào một Outpost.
Lưu ý: Bạn cũng nên áp dụng bất kỳ chính sách kiểm soát truy cập nào mà bạn muốn áp dụng cho LibreChat tại thời điểm này.
- Thu thập thông tin cho .env:
- Bạn sẽ cần các thông tin sau từ Authentik:
Client IDClient SecretOpenID Configuration URLTất cả những mục này có thể được tìm thấy bằng cách nhấp vào nhà cung cấp mà bạn vừa tạo.
- Cấu hình LibreChat:
- Mở tệp
.envvà thêm các biến sau:
OPENID_ISSUER=https://authentik.example.com/application/o/librechat/.well-known/openid-configuration
OPENID_CLIENT_ID=[YourClientID]
OPENID_CLIENT_SECRET=[YourClientSecret]
OPENID_SESSION_SECRET=[JustGenerateARandomSessionSecret]
OPENID_CALLBACK_URL=/oauth/openid/callback
OPENID_SCOPE=openid profile email
# Optional customization below
OPENID_BUTTON_LABEL=Login with Authentik
OPENID_IMAGE_URL=https://cdn.jsdelivr.net/gh/selfhst/icons/png/authentik.png
# Generate nonce for federated identity providers that require it, i.e. Cognito configured with Entra as an OIDC provider.
OPENID_GENERATE_NONCE=true
# Redirects the user to the end session endpoint after logging out
OPENID_USE_END_SESSION_ENDPOINT=true
# Maximum logout URL length before using logout_hint instead of id_token_hint (default: 2000)
# OPENID_MAX_LOGOUT_URL_LENGTH=2000Lưu ý: Đảm bảo không có nội dung nào được đặt trong dấu ngoặc kép trong tệp .env của bạn và bạn đã cho phép đăng nhập qua mạng xã hội.
- Kiểm tra cấu hình:
- Khởi động lại LibreChat để áp dụng các thay đổi.
- Mở một cửa sổ ẩn danh và điều hướng đến phiên bản LibreChat của bạn.
- Bên dưới biểu mẫu đăng nhập sẽ có một nút mới với nội dung
Login with Authentik. - Bạn sẽ được chuyển hướng đến Authentik để đăng nhập.
- Sau khi đăng nhập, bạn sẽ được chuyển hướng trở lại LibreChat và được đăng nhập thành công.
- Nếu bạn không được chuyển hướng trở lại LibreChat, hãy kiểm tra nhật ký của Authentik để xem có lỗi nào không.
Hướng dẫn này thế nào?