---
title: Configuring Logto Authentication for LobeHub
description: >-
  Learn how to configure Logto SSO for LobeHub, including creating an
  application and setting up environment variables.
tags:
  - Logto
  - Authentication
  - LobeHub
  - Single Sign-On
  - OIDC
---

# Configuring Logto Authentication

[Logto](https://logto.io/) is an open-source Auth0 alternative designed for modern apps and SaaS products.

<Steps>
  ### Create Application in Logto

  1. Log in to your Logto Console
  2. Go to **Applications** and click **Create application**
  3. Select **Traditional web** as the application type
  4. Fill in the application name: `LobeHub`
  5. Configure redirect URIs:

  <Callout type={'info'}>
    **Callback URL Format**: `https://your-domain.com/api/auth/callback/logto`
  </Callout>

  6. After creation, note down the **App ID** and **App Secret**

  ### Get Issuer URL

  The issuer URL is your Logto endpoint, typically:

  - Cloud: `https://your-tenant.logto.app/oidc`
  - Self-hosted: `https://your-logto-domain/oidc`

  ### Configure Environment Variables

  When deploying LobeHub, you need to configure the following environment variables:

  | Environment Variable        | Type     | Description                                                                   |
  | --------------------------- | -------- | ----------------------------------------------------------------------------- |
  | `AUTH_SECRET`               | Required | Key used to encrypt session tokens. Generate using: `openssl rand -base64 32` |
  | `AUTH_SSO_PROVIDERS`        | Required | SSO provider for LobeHub. Use `logto` for Logto                               |
  | `AUTH_LOGTO_ID`             | Required | App ID from Logto application                                                 |
  | `AUTH_LOGTO_SECRET`         | Required | App Secret from Logto application                                             |
  | `AUTH_LOGTO_ISSUER`         | Required | Logto issuer URL (e.g., `https://your-tenant.logto.app/oidc`)                 |
  | `LOGTO_WEBHOOK_SIGNING_KEY` | Optional | Secret key for validating Webhook requests from Logto                         |

  <Callout type={'tip'}>
    Go to [📘 Environment Variables](/docs/self-hosting/environment-variables/auth#logto) for detailed information on these variables.
  </Callout>

  ### Configure Webhook (Optional)

  Configure Logto [Webhook](https://docs.logto.io/developers/webhooks/configure-webhooks) to sync user data updates to LobeHub.

  1. Go to **Webhooks** in Logto Console and create a Webhook
  2. Fill in the following fields:
     - Endpoint URL: `https://your-domain.com/api/webhooks/logto`
     - Events:
       - `User.Data.Updated`: Sync user profile updates
       - `User.SuspensionStatus.Updated`: Sync user suspension status
  3. After creation, copy the `Signing Key` and set it in the `LOGTO_WEBHOOK_SIGNING_KEY` environment variable
</Steps>

<Callout type={'info'}>
  After successful deployment, users will be able to authenticate with Logto and use LobeHub.
</Callout>

## Related Resources

- [Logto Documentation](https://docs.logto.io/)
- [Logto Application Setup](https://docs.logto.io/docs/recipes/integrate-logto/)
