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

Authentik

Aprenda a configurar o LibreChat para usar o Authentik para autenticação de usuários.

  1. Acessar a interface de administração do Authentik:
  • Abra a interface de administração do Authentik no seu navegador. Pode ser encontrada em uma URL como: https://authentik.example.com/if/admin/#/administration/overview.

    Usaremos https://authentik.example.com como uma URL de exemplo. Substitua isso pela URL da sua instância do Authentik.

  1. Crie um novo Application e Provider usando o assistente:
  • Clique na aba Applications na barra lateral esquerda e clique em Applications novamente.
  • No topo da página, você deve ver um botão que diz Create with Wizard. Clique nele.

    Nota: Você também pode criar um aplicativo e um provedor manualmente, apenas certifique-se de vinculá-los posteriormente.

  • Você pode nomear a aplicação como quiser. Para este exemplo, vamos nomeá-la como LibreChat e clicar em próximo.
  • Escolha o provedor OAuth2/OIDC e clique em próximo.
  • Escolha seus fluxos de autenticação e autorização.
  • Role a página para baixo e anote o Client ID e o Client Secret. Você precisará deles mais tarde.
  • Em Advanced protocol settings, altere Subject mode para Based on the User's Email.
  • Clique em Submit.
  • Adicione o novo aplicativo que você criou a um Outpost.

    Nota: Você também deve aplicar quaisquer políticas de controle de acesso que deseje aplicar ao LibreChat neste momento.

  1. Reunir informações para o .env:
  • Você precisará das seguintes informações do Authentik:
    • Client ID
    • Client Secret
    • OpenID Configuration URL

      Tudo isso pode ser encontrado clicando no provedor que você acabou de criar.

  1. Configurar o LibreChat:
  • Abra o arquivo .env e adicione as seguintes variáveis:
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

Nota: Certifique-se de que nada esteja entre aspas no seu .env e que você tenha permitido o login social.

  1. Verificar Configuração:
  • Reinicie o LibreChat para aplicar as alterações.
  • Abra uma janela anônima e navegue até a sua instância do LibreChat.
  • Abaixo do formulário de login, deve haver um novo botão que diz Login with Authentik.
  • Você deve ser redirecionado para o Authentik para fazer login.
  • Após fazer login, você deve ser redirecionado de volta ao LibreChat e estar logado.
    • Se você não for redirecionado de volta para o LibreChat, verifique os logs do Authentik para identificar quaisquer erros.

Como está este guia?