Pas de porte dérobée par le chat : appliquer les droits de l’app aux appels d’outils IA
KwaFlux applique aux appels d’outils IA le même contrôle de connexion qu’aux clics, fait vérifier un bail signé Ed25519 et revérifie à chaque relance.
L’essentiel
- Ajouter un serveur MCP à une application de bureau payante ouvre une seconde porte d’entrée. Si la vérification du forfait ne se fait que dans les écrans de l’app, la voie IA la contourne.
- Dans KwaFlux, les appels d’outils IA passent par la même vérification de connexion et de forfait que les clics, au même endroit : le plan de contrôle de l’app, pas le script MCP.
- Le worker qui exécute le traitement vérifie à son tour, en contrôlant un bail signé avec Ed25519 avant de lancer un travail payant.
- Reprendre ou relancer une tâche repasse par les vérifications à ce moment-là : relancer ne permet donc pas de prolonger un forfait expiré ou un réglage désactivé.
Quand nous avons ajouté un serveur MCP à KwaFlux, une règle est passée avant tout : un assistant IA doit pouvoir faire exactement ce que vous pouvez faire dans l’app, ni plus ni moins. La vérification de compte qui protège une fonction s’applique donc aux appels d’outils de la même manière qu’aux clics.
Elle doit aussi tenir quand l’assistant relance une tâche plus tard, alors que votre forfait ou vos réglages ont pu changer.
Dans ce guide, vous verrez où apparaît d’ordinaire une seconde voie vers les fonctions payantes, comment KwaFlux garde une seule vérification pour les deux voies, ce qu’apporte le bail signé du worker, et pourquoi chaque relance est revérifiée.
Sommaire
- Qu’est-ce qu’une vérification des droits ?
- Où apparaît d’ordinaire la porte dérobée
- Une seule vérification, dans l’app
- Une seconde vérification dans le worker
- Reprise et relance repassent par les vérifications
- Ce qui est gratuit via MCP
- À quoi sert cette conception, et à quoi elle ne sert pas
- Questions fréquentes
Qu’est-ce qu’une vérification des droits ?
Une vérification des droits est l’étape où un logiciel confirme que le compte connecté dispose du forfait ou de la licence qu’exige une fonction, avant de la laisser s’exécuter.
Dans KwaFlux, les fonctions qui écrivent des fichiers, à savoir les exports (y compris l’amélioration par IA), les conversions, les réparations de fichiers et les téléchargements depuis un lien, exigent une connexion et un forfait. Tout le reste, comme parcourir l’app, importer, prévisualiser ou diagnostiquer un fichier, fonctionne sans compte.
Où apparaît d’ordinaire la porte dérobée
Les applications de bureau vérifient souvent le forfait dans l’interface : un bouton est désactivé, ou bien cliquer dessus affiche un écran de mise à niveau. Cela fonctionne jusqu’à l’arrivée d’un second appelant.
Un serveur MCP est un second appelant. S’il envoie les tâches directement au moteur, ou s’il appelle une fonction interne que le bouton protégeait, la vérification de l’interface ne s’exécute pas. C’est pour cette raison que la spécification MCP place le contrôle d’accès côté serveur : les serveurs doivent (« MUST ») valider toutes les entrées des outils et « mettre en œuvre des contrôles d’accès appropriés ». Une vérification qui vit dans le bouton ne compte pas.
Une seule vérification, dans l’app
KwaFlux place la vérification là où chaque requête doit passer : le plan de contrôle, à l’intérieur de l’app en cours d’exécution. Le script MCP ne décide rien en matière de forfait. Il transmet une requête typée, et l’app répond.
| Étape | Clic dans l’app | Demande d’un assistant IA |
|---|---|---|
| Entrée de la requête | L’écran de l’app | Le plan de contrôle, par le canal local |
| Vérification de la connexion et du forfait | Oui | Oui, avec la même vérification |
| Construction du traitement | Le générateur de traitements de l’app | Le même générateur de traitements, exécuté par le worker |
| Bail vérifié par le worker | Oui | Oui |
| Résultat | Fichier à côté de la source, ou dans le dossier choisi | Fichier à côté de la source |
Si vous n’êtes pas connecté, ou si votre forfait ne couvre pas la fonction, l’assistant reçoit une erreur structurée qui le dit, et il peut vous inviter à vous connecter. Il ne peut pas contourner l’obstacle, car il n’y a rien d’autre à appeler. Pour voir comment les couches s’articulent, lisez pourquoi les agents IA ne devraient pas cliquer sur l’écran.
Une seconde vérification dans le worker
La vérification de l’app décide si une tâche peut être mise en file d’attente. Le worker, le processus distinct qui fait réellement tourner le moteur, effectue sa propre vérification avant de lancer un travail payant : il contrôle un bail (lease) émis pour la tâche et signé avec Ed25519.
Une vérification de signature dans un autre processus signifie que la décision ne repose pas sur un seul point. Une tâche arrivée au worker par un autre chemin, sans bail signé valide, n’exécute pas ses fonctions payantes.
Ed25519 est le schéma de signature sur courbe d’Edwards spécifié dans la RFC 8032. Il utilise des clés et des signatures courtes (clés publiques de 32 octets et signatures de 64 octets pour Ed25519), et la vérification est rapide, ce qui convient à un contrôle effectué pour chaque tâche.
À noter : nous ne décrivons volontairement ni le contenu d’un bail ni sa durée de validité. Tout l’intérêt de la conception est que le worker peut le vérifier sans faire confiance à celui qui lui a transmis la tâche.
Reprise et relance repassent par les vérifications
Les relances sont le point délicat. Une tâche autorisée au moment de sa mise en file d’attente ne l’est peut-être plus quand on la reprend une heure plus tard. KwaFlux traite la reprise et la relance comme de nouvelles décisions :
- Le forfait est revérifié. Si votre forfait a pris fin depuis la mise en file d’attente, reprendre ou relancer une tâche payante échoue à la vérification, comme le ferait une nouvelle demande.
- Le réglage de téléchargement est revérifié. Si vous avez désactivé les téléchargements par les agents depuis qu’un assistant en a mis un en file d’attente, sa relance est refusée. Voir pourquoi une IA ne peut pas approuver un téléchargement à votre place.
- La propriété est revérifiée. Un assistant ne peut reprendre ou relancer que les tâches qu’il a lui-même soumises.
L’autre option, c’est une tâche qui, une fois approuvée, peut être relancée indéfiniment sur la foi d’une décision qui ne tient plus. Vérifier au moment de l’action comble cette brèche.
Ce qui est gratuit via MCP
La partie gratuite de KwaFlux reste gratuite via MCP. Sans connexion, un assistant peut :
- vérifier si KwaFlux est lancé et connecté ;
- lister les tâches et lire leur statut ;
- diagnostiquer un fichier endommagé pour savoir s’il peut être réparé ;
- mettre en pause ou annuler ses propres tâches.
Les aperçus gratuits de 1, 3 et 5 secondes restent dans l’app ; l’assistant ne les génère pas.
À quoi sert cette conception, et à quoi elle ne sert pas
Cette conception garde les mêmes règles sur les deux voies. Un assistant IA ne débloque rien, et il ne vous fait perdre aucun droit dont vous disposez. Chaque requête passe par la même vérification, et chaque tâche lancée par l’assistant apparaît dans la liste des tâches de l’app, étiquetée avec le nom de l’assistant qui l’a soumise.
Elle ne remplace pas la protection du canal lui-même, qui empêche les autres comptes et les autres ordinateurs de communiquer tout court avec KwaFlux. C’est l’objet de la sécurisation du canal local.
Conclusion
Ajouter une interface IA à une application payante est l’occasion de découvrir où vivent vraiment vos vérifications. KwaFlux garde une seule vérification dans le plan de contrôle de l’app, pour les clics comme pour les appels d’outils, fait vérifier un bail signé par le worker avant tout travail payant, et revérifie chaque fois qu’une tâche est reprise ou relancée. L’assistant a droit au même KwaFlux que vous.
Le même KwaFlux, depuis l’app ou depuis votre assistant
Le serveur MCP local de KwaFlux permet à Codex, Claude, Cursor et aux autres applications MCP de lancer les mêmes traitements que vous dans l’app, selon les mêmes règles. Le traitement IA tourne sur votre propre GPU et vos fichiers média ne sont pas envoyés pour être traités. KwaFlux fonctionne sous Windows 10 (64 bits, version 1809 ou plus récente), Windows 11 et macOS 12 ou plus récent sur Apple Silicon. Importer des fichiers et explorer l’app ne demandent pas de compte. Une connexion avec un forfait payant n’est requise que pour exporter, convertir, réparer un fichier ou télécharger un fichier depuis un lien.
Testez sur vos propres images
Téléchargez KwaFlux et prévisualisez gratuitement les effets sur vos propres images avant de payer — sans compte, traitement sur votre GPU, sans envoi de vos médias pour le traitement. Les aperçus vidéo durent 1, 3 ou 5 secondes, ceux de la stabilisation 5, 15 ou 30 secondes.
Questions fréquentes
Un serveur MCP peut-il contourner le paywall d’une application ?
Oui, si l’application ne vérifie les forfaits que dans son interface. Un serveur qui appelle directement le moteur ou des fonctions internes saute ces vérifications. Placer la vérification dans le composant par lequel passe chaque requête, et revérifier là où le travail s’exécute, ferme cette voie.
Qu’est-ce qu’un bail signé ?
C’est un petit jeton émis pour une tâche précise et signé avec une clé privée, que le processus chargé de la tâche vérifie avec la clé publique correspondante avant de démarrer. Il permet à ce processus de confirmer que la tâche a été autorisée, sans faire confiance à celui qui la lui a transmise.
Pourquoi utiliser Ed25519 pour les signatures ?
Ed25519 offre des clés et des signatures courtes, une vérification rapide et une spécification publiée dans la RFC 8032. Ces propriétés conviennent à un contrôle exécuté une fois par tâche dans une application de bureau.
Faut-il revérifier les permissions lors d’une relance ?
Oui. Une relance intervient après la demande initiale, et le forfait ou les réglages de l’utilisateur ont pu changer. Traiter la relance comme une nouvelle demande empêche une ancienne approbation de maintenir une tâche en vie quand les conditions qui la justifiaient ne tiennent plus.
Les assistants IA ont-ils droit à des fonctions différentes de celles de l’app ?
En général, à un sous-ensemble. Les fonctions qui demandent de dessiner ou de cliquer sur l’image restent le plus souvent dans l’app. Voir ce qu’un assistant IA peut faire dans une app vidéo pour un exemple.


