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

Auth0

Pelajari cara mengonfigurasi LibreChat untuk menggunakan Auth0 sebagai autentikasi pengguna.

Langkah 1: Buat Aplikasi SAML di Auth0

  1. Masuk ke Auth0 Dashboard Anda.
  2. Navigasikan ke Applications > Applications.
  3. Klik Create Application.
  4. Masukkan Nama Aplikasi (contoh: LibreChat) dan pilih Regular Web Application.
  5. Klik Create.

auth0-1

Langkah 2: Konfigurasi Add-On SAML

  1. Buka aplikasi yang baru dibuat di Auth0.
  2. Buka tab Addons.
  3. Klik penggeser untuk mengaktifkan SAML2 Web App.
  4. Klik panel SAML2 Web App.
  5. Konfigurasikan pengaturan berikut:
    • Application Callback URL: Atur ini ke URL callback SAML LibreChat Anda: https://YOUR_DOMAIN/oauth/saml/callback
    • Pengaturan (Format JSON): Gunakan konfigurasi berikut:
      {
          "mappings": {
              "email": "email",
              "name": "username"
          }
      }

      catatan

      Jika aplikasi Anda memerlukan atribut tambahan seperti given_name, family_name, username, atau picture, pastikan pemetaan ini dikonfigurasi dengan benar di pengaturan SAML Auth0.

  6. Klik Save.

auth0-2 auth0-3

Langkah 3: Dapatkan Metadata SAML Auth0

  1. Setelah SAML diaktifkan, kembali ke pengaturan SAML2 Web App.
  2. Buka tab Usage.
  3. Klik pada Identity Provider Certificate: Download Atuh0 certificate.
  4. Gunakan Issuer untuk SAML_ISSUER
  5. Gunakan Identity Provider Login URL untuk SAML_ENTRY_POINT.
  6. Salin file sertifikat yang telah diunduh ke folder proyek Anda

auth0-4

Langkah 4: Konfigurasi LibreChat dengan SAML

Buka file .env di folder proyek Anda dan tambahkan variabel berikut:

SAML_ENTRY_POINT=https://dev-xxxxx.us.auth0.com/samlp/aaaaaa
SAML_ISSUER=urn:dev-xxxxx.us.auth0.com
SAML_CERT=dev-xxxxx.pem
SAML_CALLBACK_URL=/oauth/saml/callback
SAML_SESSION_SECRET=[JustGenerateARandomSessionSecret]

# Attribute mappings (optional)
SAML_EMAIL_CLAIM=
SAML_USERNAME_CLAIM=
SAML_GIVEN_NAME_CLAIM=
SAML_FAMILY_NAME_CLAIM=
SAML_PICTURE_CLAIM=
SAML_NAME_CLAIM=

# Logint buttion settings (optional)
SAML_BUTTON_LABEL=
SAML_IMAGE_URL=

# Whether the SAML Response should be signed.
# - If "true", the entire `SAML Response` will be signed.
# - If "false" or unset, only the `SAML Assertion` will be signed (default behavior).
# SAML_USE_AUTHN_RESPONSE_SIGNED=

Bagaimana panduan ini?