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

Apple

Apprenez à configurer LibreChat pour utiliser Apple pour l'authentification des utilisateurs.

Prérequis

Avant de commencer, assurez-vous de disposer des éléments suivants :

  • Compte développeur Apple : Si vous n'en avez pas, inscrivez-vous ici.

Création d'un nouvel App ID

1. Connectez-vous à l'Apple Developer Console

2. Accéder aux Identifiers

  • Allez dans Certificates, Identifiers & Profiles.
  • Cliquez sur Identifiers dans la barre latérale.

3. Créer un nouvel App ID

  1. Cliquez sur le bouton "+" pour ajouter un nouvel identifiant.
  2. Sélectionnez App IDs et cliquez sur Continue.
  3. Choisissez App et cliquez sur Continue.
  4. Saisissez une Description pour votre App ID (par ex., LibreChat App ID).
  5. Définissez le Bundle ID (par ex., com.yourdomain.librechat).
  6. Cliquez sur Continue puis sur Register.
  • Références d'images :

  • Create App ID Figure 1 : Création d'un nouvel App ID

  • Select App Figure 2 : Sélection de l'identifiant de l'application

4. Activer "Sign in with Apple"

  1. Après avoir créé l'App ID, cliquez dessus pour le modifier.
  2. Sous Capabilities, recherchez et cochez Sign in with Apple.
  3. Cliquez sur Save.
  • Référence d'image :
  • Enable Sign in with Apple Figure 3 : Activation de « Sign in with Apple »

Création d'un ID de service

1. Accéder aux Identifiers

  • Dans la section Certificates, Identifiers & Profiles, cliquez sur Identifiers.

2. Créer un nouvel ID de services

  1. Cliquez sur le bouton "+".
  2. Sélectionnez Services IDs et cliquez sur Continue.
  3. Saisissez une Description (par ex., LibreChat Services ID).
  4. Saisissez un Identifiant (par ex., com.yourdomain.librechat.services).
  5. Cliquez sur Continue puis sur Register.
  • Références d'images :

  • Select Services ID Figure 4 : Sélection de l'ID des services

  • Create Services ID Figure 5 : Création de l'ID de services

3. Configurer "Sign in with Apple"

  1. Cliquez sur l'ID de service nouvellement créé.
  2. Sous Capabilities, cliquez sur Configure à côté de Sign in with Apple.
  3. Saisissez vos Domains (par ex. your-domain.com) et vos Return URLs (par ex. https://your-domain.com/oauth/apple/callback).
  4. Cliquez sur Next puis sur Register.
  • Référence d'image :

  • Configure Sign in with Apple Figure 6 : Configuration de « Sign in with Apple » pour l'ID de service

  • Configuration de l'authentification Web Figure 7 : Configuration de l'authentification Web

  • Web Authentication Configuration Figure 8 : Configuration de l'ID des services d'enregistrement des modifications


Création d'une clé

1. Accéder aux clés

  • Dans la section Certificates, Identifiers & Profiles, cliquez sur Keys.

2. Créer une nouvelle clé

  1. Cliquez sur le bouton "+" pour ajouter une nouvelle clé.
  2. Saisissez un Key Name (par ex., LibreChatSignInWithApple).
  3. Sélectionnez Sign in with Apple sous Capabilities.
  4. Cliquez sur Configure et sélectionnez l'App ID créé (par ex. com.yourdomain.librechat), puis cliquez sur Save.
  5. Cliquez sur Continue puis sur Register.
  • Références d'images :

  • Create Key Figure 8 : Création d'une nouvelle clé

  • Configure Key Figure 9 : Configuration de la clé avec l'App ID

  • Register a New Key Figure 10 : Enregistrement de la clé

3. Télécharger la clé privée

  1. Après avoir créé la clé, cliquez sur Download.
  2. Important : Enregistrez le fichier .p8 en lieu sûr. Vous ne pourrez plus le télécharger à nouveau.
  3. Notez le Key ID ; vous en aurez besoin pour le fichier .env.
  • Référence d'image :
  • Téléchargez votre clé Figure 11 : Téléchargement de la clé privée

Configuration de LibreChat

1. Mettre à jour la configuration .env

Ajoutez la configuration Apple OAuth2 suivante à votre fichier .env :

DOMAIN_CLIENT=https://your-domain.com # use http://localhost:3080 if not using a custom domain
DOMAIN_SERVER=https://your-domain.com # use http://localhost:3080 if not using a custom domain

# Apple
APPLE_CLIENT_ID=com.yourdomain.librechat.services
APPLE_TEAM_ID=YOUR_TEAM_ID
APPLE_KEY_ID=YOUR_KEY_ID
APPLE_PRIVATE_KEY_PATH=/path/to/AuthKey.p8 # Absolute path to your downloaded .p8 file
APPLE_CALLBACK_URL=/oauth/apple/callback

Remarque :

  • Remplacez com.yourdomain.librechat.services par votre véritable ID de services.
  • Remplacez YOUR_TEAM_ID et YOUR_KEY_ID par les valeurs respectives de votre compte Apple Developer.
  • Si vous utilisez Docker, assurez-vous que le fichier .p8 est accessible dans votre conteneur Docker et mettez à jour APPLE_PRIVATE_KEY_PATH en conséquence.

2. Redémarrer LibreChat

Après avoir mis à jour le fichier .env, redémarrez LibreChat pour appliquer les changements.

  • Si vous utilisez Docker :
docker compose up -d

Dépannage

Si vous rencontrez des problèmes lors de la configuration, envisagez les solutions suivantes :

  • URI de redirection invalide :

    • Assurez-vous que l'URI de redirection dans votre Apple Developer Console (https://your-domain.com/oauth/apple/callback) correspond exactement à celui spécifié dans votre fichier .env (APPLE_CALLBACK_URL).
  • Problèmes de clé privée :

    • Vérifiez que le chemin vers votre fichier .p8 (APPLE_PRIVATE_KEY_PATH) est correct.
    • Assurez-vous que LibreChat dispose des permissions de lecture pour le fichier .p8.
  • Erreurs d'ID d'équipe et d'ID de clé :

    • Vérifiez deux fois que les APPLE_TEAM_ID et APPLE_KEY_ID dans votre fichier .env correspondent à ceux de votre compte Apple Developer.
  • Échec de la vérification du domaine :

    • Assurez-vous que le fichier de vérification est correctement téléchargé à la racine de votre domaine.
    • Vérifiez qu'il n'y a pas de fautes de frappe dans le nom de domaine saisi lors de la configuration.
  • Problèmes de configuration Docker :

    • Si vous utilisez Docker, confirmez que le fichier .p8 est correctement monté et que le chemin dans APPLE_PRIVATE_KEY_PATH est accessible à l'intérieur du conteneur.
  • Vérifier les journaux :

    • Consultez les logs de LibreChat pour tout message d'erreur lié à l'authentification Apple. Cela peut fournir des informations spécifiques sur ce qui pourrait ne pas fonctionner.

Que pensez-vous de ce guide ?