Authentik
Dowiedz się, jak skonfigurować LibreChat do korzystania z Authentik w celu uwierzytelniania użytkowników.
- Dostęp do interfejsu administratora Authentik:
- Otwórz interfejs administratora Authentik w swojej przeglądarce. Można go znaleźć pod adresem URL takim jak:
https://authentik.example.com/if/admin/#/administration/overview.Jako przykładowego adresu URL użyjemy
https://authentik.example.com. Zastąp go adresem URL swojej instancji Authentik.
- Utwórz nową aplikację i dostawcę za pomocą kreatora:
- Kliknij kartę Applications na lewym pasku bocznym, a następnie ponownie kliknij Applications.
- Na górze strony powinieneś zobaczyć przycisk z napisem
Create with Wizard. Kliknij go.Uwaga: Możesz również utworzyć aplikację i dostawcę ręcznie, pamiętaj tylko, aby je później powiązać.
- Możesz nazwać aplikację, jak tylko chcesz. W tym przykładzie nazwiemy ją
LibreChati klikniemy dalej. - Wybierz dostawcę
OAuth2/OIDCi kliknij dalej. - Wybierz swoje przepływy uwierzytelniania i autoryzacji.
- Przewiń w dół i zanotuj
Client IDorazClient Secret. Będą one potrzebne później. - W sekcji Advanced protocol settings zmień Subject mode na
Based on the User's Email. - Kliknij Submit.
- Dodaj nową aplikację, którą utworzyłeś, do Outpost.
Uwaga: Na tym etapie należy również zastosować wszelkie zasady kontroli dostępu, które mają obowiązywać w LibreChat.
- Zbierz informacje dla .env:
- Będziesz potrzebować następujących informacji z Authentik:
Client IDClient SecretOpenID Configuration URLWszystkie z nich można znaleźć, klikając na dostawcę, którego właśnie utworzyłeś.
- Konfiguracja LibreChat:
- Otwórz plik
.envi dodaj następujące zmienne:
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=2000Uwaga: Upewnij się, że w pliku .env nic nie jest ujęte w cudzysłowy oraz że włączono logowanie społecznościowe.
- Sprawdź konfigurację:
- Zrestartuj LibreChat, aby zastosować zmiany.
- Otwórz okno incognito i przejdź do swojej instancji LibreChat.
- Poniżej formularza logowania powinien znajdować się nowy przycisk z napisem
Login with Authentik. - Powinieneś zostać przekierowany do Authentik w celu zalogowania się.
- Po zalogowaniu powinieneś zostać przekierowany z powrotem do LibreChat i być zalogowany.
- Jeśli nie zostaniesz przekierowany z powrotem do LibreChat, sprawdź logi Authentik pod kątem ewentualnych błędów.
Jaka jest ta instrukcja?