Agences et sous-comptes
Cloud embarqué à votre marque : couches, droits et configuration sans casser l’intégration
Guide pratique pour intégrer Apification Cloud dans un portail propriétaire en séparant marque, configuration, droits, identifiants et actions serveur.
Le problème : sembler intégré ne signifie pas être bien intégré
Un Cloud embarqué à votre marque peut s’afficher parfaitement dans un portail et, malgré tout, être mal séparé en matière de droits, d’identifiants ou de responsabilités. Le risque apparaît lorsque l’iframe est traitée comme une fenêtre publique décorée : on personnalise la couleur, on masque des boutons et l’on considère l’intégration comme résolue. En réalité, la session embarquée doit être lancée avec une identité, une politique effective et une configuration visuelle résolues côté serveur à chaque ouverture. Sans cette résolution, la marque peut masquer des erreurs d’isolation entre clients, des liens trop larges ou des actions qui devraient dépendre du backend.
Apification conçoit l’intégration pour les revendeurs comme une combinaison de Cloud embarqué, d’API, de configuration héritée et de thèmes visuels. Cette combinaison est importante, car chaque élément a une fonction distincte. L’iframe fournit l’expérience utilisateur dans le portail ; l’API REST et le contrat OpenAPI servent aux opérations serveur à serveur ; les webhooks permettent de réagir aux événements avec des livraisons signées, un historique et des tentatives supplémentaires ; et les thèmes visuels adaptent l’expérience sans modifier les limites fonctionnelles et de sécurité. La décision clé consiste à ne pas demander à une couche de faire le travail d’une autre.
- Signal d’alerte : le même lien ou la même session sert pour plusieurs clients.
- Signal d’alerte : les clés d’intégration apparaissent dans le code du navigateur.
- Signal d’alerte : la validation visuelle est approuvée avant la validation des utilisateurs, des groupes, des liens et des restrictions.
Carte des couches : iframe, API, JavaScript, configuration et thème
La première couche est l’interface embarquée. Dans Apification, le Cloud embarqué se présente comme un espace de travail au sein du produit, avec une session contrôlée et marquée, des sessions iframe signées, des thèmes, des droits effectifs et une communication JavaScript avec l’hôte. Pour les revendeurs, la session iframe est signée et de courte durée. Cela réduit la tentation de créer des accès permanents et impose que chaque lancement dispose d’un contexte : sous-compte, utilisateur et ressources autorisées.
La deuxième couche est l’intégration serveur. L’API REST serveur à serveur gère les ressources Cloud, les utilisateurs, les paramètres et les travaux de transformation depuis le backend. La référence REST est la liste autorisée des opérations exposées par API ; les fonctions qui n’y figurent pas restent des flux de l’interface de compte. Ce point évite une attente dangereuse : tout ce qu’un utilisateur voit dans l’interface ne doit pas forcément être automatisé via l’API. Si une opération doit être automatisée, vérifiez qu’elle figure dans la référence et concevez le flux avec des identifiants à portée limitée.
- Iframe : expérience utilisateur contrôlée et à votre marque.
- API REST/OpenAPI : opérations backend et automatisation prises en charge.
- JavaScript hôte-iframe : sélection, finalisation et navigation au moyen de messages validés.
- Webhooks : réaction aux événements avec charges utiles signées HMAC, historique et tentatives supplémentaires.
Ce que le thème visuel doit résoudre, et ce qu’il ne doit pas promettre
Le thème visuel doit résoudre la cohérence de l’expérience : couleurs, apparence et continuité entre le portail du client et le Cloud embarqué. Il est raisonnable qu’une agence souhaite que l’utilisateur ne ressente pas de rupture de produit lorsqu’il gère des fichiers, des services ou des projets numériques. Apification permet d’adapter l’expérience du Cloud embarqué au moyen de thèmes et de paramètres compatibles, tout en conservant les limites fonctionnelles et de sécurité. Cette dernière partie est essentielle : le thème accompagne la session, il ne redéfinit pas l’autorisation.
Ce que le thème ne doit pas promettre, c’est l’isolation des données, la sécurité ou des changements de droits. Un bouton moins visible ne revient pas à interdire une action ; un écran à la marque du client ne prouve pas que le contexte est limité à son sous-compte ; une couleur corporate ne fait pas expirer les liens et ne restreint pas les téléchargements. Lors d’une revue d’intégration, séparez la validation visuelle de la validation des droits. Approuvez le design lorsqu’il est cohérent, mais ne l’utilisez pas comme preuve de sécurité.
- Utilisez le thème pour l’apparence, la navigation perçue et la cohérence de marque.
- N’utilisez pas le thème pour remplacer les utilisateurs, les groupes, les restrictions ou les politiques effectives.
- Documentez quels éléments relèvent de la personnalisation visuelle et quels éléments relèvent des règles d’accès.
Configuration héritée sans la transformer en boîte noire
La configuration héritée sert à réduire les réglages manuels répétés entre espaces ou clients. Dans un réseau de clients, elle évite de configurer depuis zéro chaque expérience embarquée et aide à maintenir une cohérence opérationnelle. Dans Apification, la configuration effective du lancement combine politiques maîtres, paramètres du client, thème et droits. Cette combinaison permet de partir d’une base commune et d’ajuster ce qui est propre à chaque client, à condition que l’équipe sache quelle règle vient d’où.
L’erreur habituelle est que l’héritage devienne invisible. Si personne ne distingue politique maître, paramètre client, thème et droit, un incident s’analyse à l’aveugle. Pour l’éviter, maintenez une matrice de configuration : quelle valeur est définie globalement, ce que chaque client peut modifier, ce qui est calculé au lancement de la session et qui l’approuve. Pour les changements sensibles, testez au moins deux clients avec des configurations différentes afin de confirmer que l’héritage ne laisse pas passer des capacités indésirables.
- Définissez une politique maître minimale et stable.
- Autorisez les paramètres client uniquement lorsqu’il existe une raison opérationnelle claire.
- Enregistrez la source de chaque règle : maître, client, thème ou droit.
- Vérifiez la configuration effective avant d’activer l’accès en production.
Identifiants et backend : séparer actions utilisateur et actions automatisées
Les identifiants serveur ne doivent pas parvenir au navigateur. La documentation d’intégration revendeur d’Apification est claire : le provisionnement, les secrets et la signature restent sur des serveurs de confiance, tandis que le navigateur ne reçoit qu’un contexte limité et temporaire. Elle déconseille également de créer des sessions iframe dans le navigateur lorsque cela expose des secrets réutilisables. Le backend doit authentifier le client et créer le contexte signé sans remettre au frontend une clé susceptible d’être réutilisée hors du flux prévu.
En pratique, il est préférable de séparer deux types d’actions. Les actions utilisateur se produisent dans la session embarquée, avec les droits effectifs correspondant à cet utilisateur, à ce sous-compte et aux ressources concernées. Les actions automatisées s’exécutent depuis le backend via l’API avec des identifiants à portée limitée, en accordant uniquement la lecture ou l’écriture requise. Pour le provisionnement initial, l’API peut créer des comptes clients, des utilisateurs et une configuration initiale depuis l’application du revendeur. De plus, les identifiants externes doivent être mappés de manière prévisible afin que les nouvelles tentatives ne créent pas de ressources en double, et les écritures compatibles peuvent être protégées par des clés d’idempotence.
- Ne signez jamais de sessions embarquées depuis le code du navigateur si cela expose des secrets réutilisables.
- Utilisez des identifiants avec la portée pratique la plus réduite pour l’intégration.
- Mappez les identifiants externes de manière stable afin d’éviter les doublons.
- Appliquez l’idempotence aux écritures compatibles lorsqu’il existe des tentatives supplémentaires liées au réseau.
Droits, publication et téléchargements avant d’afficher les fichiers
Avant d’afficher des fichiers dans le portail, vérifiez les utilisateurs, les groupes, les liens, les restrictions et les fenêtres de publication. Apification permet de partager des éléments au moyen de liens, d’utilisateurs ou de groupes, et de fournir des téléchargements originaux ou transformés. Il permet également de protéger les fichiers et services avec des droits, OTP, authentification externe, restrictions et fenêtres de publication. La question n’est donc pas seulement de savoir si l’iframe se charge, mais si le bon utilisateur voit les bonnes ressources pendant la bonne période et avec le type de téléchargement prévu.
Une session signée doit être limitée au sous-compte, à l’utilisateur et aux ressources autorisées correspondants. Elle ne doit pas être réutilisée pour plusieurs sous-comptes ; changer de client exige un nouveau contexte autorisé et signé. Ce critère évite l’une des erreurs les plus graves dans les portails multiclients : conserver une session valide alors que le contexte visuel du portail change. Si l’utilisateur sélectionne un autre client, forcez une nouvelle résolution de l’identité, de la politique effective, du thème et des droits côté serveur.
- Vérifiez les utilisateurs et les groupes avant d’activer les liens partagés.
- Vérifiez si OTP, authentification externe, restrictions ou fenêtres de publication s’appliquent.
- Validez si le téléchargement doit être original ou transformé.
- Lors d’un changement de client, générez un nouveau contexte signé ; ne réutilisez pas la session précédente.
Flux de mise en œuvre recommandé et erreurs fréquentes
Un flux prudent commence par un prototype visuel limité, et non par une ouverture complète de fichiers réels. Validez d’abord que l’iframe embarquée s’intègre au portail et que la communication hôte-iframe couvre la sélection, la finalisation et la navigation au moyen de messages validés. Créez ensuite un test de droits avec des utilisateurs de différents profils et, s’il existe plusieurs clients, avec des sous-comptes séparés. Puis testez les actions autorisées et refusées, la gestion des erreurs, les téléchargements originaux ou transformés et l’expiration du contexte temporaire.
Les erreurs fréquentes suivent un schéma : faire confiance uniquement à l’iframe, personnaliser l’interface avant de définir les droits, mélanger des clients dans un même contexte, laisser des liens actifs indéfiniment ou ne pas enregistrer quelle partie contrôle chaque action. La solution consiste à attribuer les responsabilités. Le thème contrôle l’apparence ; la configuration héritée apporte de la cohérence ; le backend signe, provisionne et conserve les secrets ; l’API automatise les opérations prises en charge ; les droits gouvernent l’accès ; et les webhooks notifient les événements avec des livraisons signées, un historique et des tentatives supplémentaires. Lorsque chaque couche a un responsable, les incidents sont plus faciles à reproduire et à corriger.
- Étape 1 : prototype visuel avec des données non sensibles.
- Étape 2 : matrice de droits par utilisateur, groupe, client et ressource.
- Étape 3 : tests des actions autorisées, refusées et des erreurs attendues.
- Étape 4 : revue des liens, des fenêtres, de l’OTP si applicable et des téléchargements.
- Étape 5 : documentation interne indiquant quelle couche contrôle chaque décision.
Questions fréquentes
Un Cloud embarqué à votre marque peut-il se résoudre uniquement avec une iframe ?
Il n’est pas conseillé de l’envisager ainsi. Dans Apification, l’intégration embarquée combine iframe signée, API, configuration héritée, thèmes visuels, droits effectifs et communication JavaScript validée avec l’hôte.
Où les sessions iframe signées doivent-elles être générées ?
Elles doivent être générées sur des serveurs de confiance. Le backend authentifie le client et crée le contexte signé ; le navigateur ne doit recevoir qu’un contexte limité et temporaire, sans secrets réutilisables.
Le thème visuel peut-il modifier les droits ou isoler les données entre clients ?
Non. Le thème adapte l’apparence et la cohérence de l’expérience, mais il doit conserver les limites fonctionnelles et de sécurité. L’isolation dépend du contexte signé, des droits et des politiques effectives.
Que se passe-t-il si l’utilisateur change de client dans le portail ?
Un nouveau contexte autorisé et signé doit être créé. Une session embarquée ne doit pas être réutilisée pour plusieurs sous-comptes, même si l’interface du portail a déjà changé visuellement.
Quand utiliser l’API et quand utiliser l’interface embarquée ?
Utilisez l’interface embarquée pour les actions utilisateur dans le Cloud. Utilisez l’API REST pour les opérations serveur à serveur prises en charge, comme la gestion des ressources Cloud, des utilisateurs, des paramètres et des travaux de transformation, toujours selon la référence autorisée.
Sources et lectures
Documentation consultée pour préparer cet article.
- Integración para resellers — Apification
- Integrate Apification into your product — Apification
- REST API reference — Apification
- Apification Cloud — Apification
- Sharing and distribution — Apification
- Security and access control — Apification
- Landing pages — Apification
- Survey documentation — Apification
- Permissions Policy — MDN Web Docs
- iframe: HTML inline frame element — MDN Web Docs
Découvrez Apification
Articles associés
Agences et sous-comptes
Sous-comptes délégués sans exposer les clés : modèle sécurisé pour les agences
Guide pratique pour les agences qui veulent donner de l’autonomie à chaque client dans Apification sans fournir d’identifiants ni mélanger fichiers, permissions ou opérations.
Agences et sous-comptes
Flux de sélection de fichiers pour agences : recevoir, réviser et livrer sans perdre de versions
Un modèle opérationnel pour que les agences et équipes créatives reçoivent les ressources des clients, sélectionnent les actifs, coordonnent les révisions et livrent les fichiers finaux avec contrôle des versions.