Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

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.

  1. 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.com làm URL ví dụ. Hãy thay thế URL này bằng URL của instance Authentik của bạn.

  1. 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à LibreChat và nhấn tiếp theo.
  • Chọn nhà cung cấp OAuth2/OIDC và 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 IDClient 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.

  1. Thu thập thông tin cho .env:
  • Bạn sẽ cần các thông tin sau từ Authentik:
    • Client ID
    • Client Secret
    • OpenID Configuration URL

      Tấ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.

  1. Cấu hình LibreChat:
  • Mở tệp .env và 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=2000

Lư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.

  1. 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?