Sécurité

Secret Vault

Stockez vos clés API et vos secrets dans votre propre AWS Lambda au lieu de la base de données d'AiTalk. Lorsqu'il est activé, les secrets sont récupérés directement depuis votre Lambda au moment de l'exécution — rien n'est stocké sur nos serveurs.


Fonctionnement

Mode normal :
  Serveur AiTalk ──(clé API depuis la BDD)──→ OpenAI / Claude / etc.

Mode Secret Vault :
  Serveur AiTalk ──(demande la clé)──→ Votre AWS Lambda ──(renvoie la clé)──→ AiTalk l'utilise une fois
                                                                               puis la supprime de la mémoire

Avec Secret Vault activé :

  • Vos clés API et tokens sont stockés uniquement dans les variables d'environnement de votre AWS Lambda

  • AiTalk les récupère au moment de l'exécution, les utilise pour l'appel API, puis les supprime

  • Si votre Lambda est inaccessible, les appels API échoueront — il n'y a aucun repli sur la base de données (par conception)

  • Les connexions OAuth (ex. Google Drive) utilisent toujours la base de données (le renouvellement automatique des tokens est nécessaire)


Prérequis

  • Un compte AWS (l'offre gratuite suffit)

  • Connaissance de base de la console AWS

Coût : AWS Lambda inclut 1 million de requêtes gratuites par mois (offre gratuite permanente). Pour la plupart des utilisateurs, Secret Vault coûte 0 $/mois.


Guide d'installation

Étape 1 : Créer une fonction AWS Lambda

  1. Cliquez sur Créer une fonction

  2. Choisissez Créer à partir de zéro

  3. Paramètres :

    • Nom de la fonction : aitalk-secret-vault (ou tout autre nom de votre choix)

    • Runtime : Node.js 20.x

    • Architecture : x86_64

  4. Cliquez sur Créer une fonction

Étape 2 : Déployer le code template

  1. Dans AiTalk, allez dans Paramètres > Sécurité

  2. Cliquez sur Télécharger le template Lambda pour obtenir le fichier secret-vault-lambda.js

  3. Dans la console AWS Lambda, allez dans l'onglet Code

  4. Remplacez le code par défaut par le contenu du template téléchargé

  5. Cliquez sur Deploy

Étape 3 : Activer l'URL de fonction

  1. Allez dans l'onglet ConfigurationURL de fonction

  2. Cliquez sur Créer une URL de fonction

  3. Type d'authentification : NONE (l'authentification est gérée par le token Bearer)

  4. Cliquez sur Enregistrer

  5. Copiez l'URL de fonction générée (ex. https://xxxxxxxxxx.lambda-url.eu-west-1.on.aws/)

Étape 4 : Ajouter vos secrets comme variables d'environnement

  1. Allez dans l'onglet ConfigurationVariables d'environnement

  2. Cliquez sur Modifier

  3. Ajoutez vos secrets en utilisant les noms de clés exacts indiqués dans le tableau Référence des clés Vault dans les paramètres AiTalk :

Nom de la clé
Valeur
Description

AUTH_TOKEN

(généré à l'étape 5)

Token d'authentification

ai_provider_openai_api_key

sk-xxxxxxxx...

Clé API OpenAI

ai_provider_anthropic_api_key

sk-ant-xxxxxxxx...

Clé API Claude

ai_provider_google_api_key

AIzaxxxxxxxx...

Clé API Gemini

wf_conn_{connectionId}_token

(votre token)

Tokens de connexion Workflow

bot_channel_{channelId}_token

(votre token)

Tokens de canal Bot

Les noms de clés exacts pour vos connexions workflow et canaux bot sont listés dans Paramètres > Sécurité > Référence des clés Vault.

  1. Cliquez sur Enregistrer

Étape 5 : Connecter AiTalk à votre Lambda

  1. Dans AiTalk, allez dans Paramètres > Sécurité

  2. Collez l'URL de fonction Lambda

  3. Cliquez sur Générer un nouveau token — copiez le token

  4. Retournez dans les variables d'environnement Lambda et définissez AUTH_TOKEN avec ce token

  5. Cliquez sur Tester la connexion pour vérifier

  6. Cliquez sur Enregistrer et activer


Référence des clés Vault

Les noms de clés utilisés dans les variables d'environnement de votre Lambda doivent correspondre exactement. Vous pouvez trouver tous les noms de clés dans Paramètres > Sécurité > Référence des clés Vault.

Clés des fournisseurs AI

Fournisseur
Nom de la clé

OpenAI

ai_provider_openai_api_key

Anthropic (Claude)

ai_provider_anthropic_api_key

Google (Gemini)

ai_provider_google_api_key

DeepSeek

ai_provider_deepseek_api_key

Grok

ai_provider_grok_api_key

Tokens de connexion Workflow

Format : wf_conn_{connectionId}_token

Exemples :

  • wf_conn_cm1abc123def_token (connexion Telegram)

  • wf_conn_cm2xyz789ghi_token (connexion SendGrid)

Tokens de canal Bot

Format : bot_channel_{channelId}_token

Pour les bots Slack, deux clés sont nécessaires :

  • bot_channel_{channelId}_slack_bot_token

  • bot_channel_{channelId}_slack_signing_secret


Désactiver Secret Vault

  1. Allez dans Paramètres > Sécurité

  2. Cliquez sur Désactiver

  3. AiTalk utilisera à nouveau les clés chiffrées stockées dans la base de données

Vos clés stockées dans la base de données ne sont jamais supprimées lorsque le Vault est activé, vous pouvez donc revenir en arrière à tout moment.


Dépannage

Problème
Solution

« Échec de connexion » lors du test

Vérifiez que l'URL de fonction Lambda est correcte et que la fonction est déployée

Erreur « Unauthorized »

Vérifiez que le AUTH_TOKEN dans votre Lambda correspond au token dans AiTalk

Erreur « Clé non trouvée »

Vérifiez que le nom de la clé dans les variables d'environnement Lambda correspond exactement (sensible à la casse)

Le chat AI ne fonctionne pas après activation

Assurez-vous que toutes les variables d'environnement des clés API requises sont définies dans Lambda

Le workflow échoue après activation

Vérifiez que tous les tokens de connexion workflow ont été ajoutés à Lambda


Notes de sécurité

  • Le token Bearer authentifie les requêtes entre AiTalk et votre Lambda

  • Seul votre compte AWS peut accéder aux variables d'environnement Lambda

  • AiTalk ne stocke, n'enregistre ni ne met en cache les secrets récupérés depuis votre Lambda

  • Pour une sécurité maximale, restreignez l'accès Lambda avec les politiques AWS IAM

Last updated