Intégrer la page dans iFrame avec des clés d'intégration (méthode 1)
Vous avez vu dans la vidéo que vous pouvez ajouter un type de page et définir des clés. Ces clés ont pour objectif de transmettre de manière sécurisée les données de l'utilisateur actuel d'InSite ou d'OutSite à un partenaire.
Dans Profit, vous pouvez créer une clé publique et une clé secrète ; les deux parties doivent connaître ces clés (client AFAS et partenaire AFAS). La combinaison de ces clés étant connue seulement de ces parties, on peut supposer qu'elles se connaissent.
L'exemple ci-dessous utilise un site InSite sur lequel un utilisateur est connecté. Dès que l'utilisateur ouvre une page d'intégration, l'échange de données démarre entre l'utilisateur et le partenaire.
Etape 1 : Utilisateur ouvre la page d'intégration
L'utilisateur ouvre la page d'intégration.
Etape 2 : Vérification des clés
La page InSite vérifie qu'une clé publique et une clé secrète sont disponibles
Etape 3 : Génération d'un jeton
Si la page comporte une clé publique et une clé secrète, un token est généré avec les données de l'utilisateur actuel. Un token est un objet regroupant les données d'un utilisateur.
Etape 4 : Enregistrement du token
Le token est enregistré dans Profit (et n'est pas envoyé au partenaire).
Etape 5 : Construction de la page InSite et renvoi à l'utilisateur
La page InSite est construite et renvoyée à l'utilisateur. Le HTML de cette page contient également un frame destiné à la page du partenaire.
Etape 6 : Demande du contenu du frame auprès du partenaire
Le navigateur de l'utilisateur reçoit la page InSite et effectuera une demande auprès du partenaire pour le contenu du frame.
Les paramètres suivants sont ajoutés par InSite à l'URL du frame :
partner.nl/pagina.html?
tokenurl=insite.nl/gettoken
code=T001
publickey=publ123
sessionid=YYYYY
Explication :
- tokenurl
L'URL permettant au partenaire de demander le token.
- code
Ce code permet de savoir quel token le partenaire souhaite avoir.
- publickey
La clé publique qui est définie dans Profit est indiquée au niveau du type de page.
- sessionid
L'id. permet de valider ultérieurement si le token est encore valide pour l'utilisateur actuel. Cette id. change dès que l'utilisateur se déconnecte, change d'organisation ou (dés)active le mode admin.
Etape 7 : Demande de clé secrète
La clé publique permet au partenaire de rechercher la clé secrète dans sa propre administration.
Etape 8 : Création d'un message POST
Les informations reçues et recherchées permettent au partenaire de créer un message POST. Ce message contient la clé secrète et le code unique qui permet d'identifier le token. Le message doit être envoyé à l'URL du token.
HTTP POST insite.nl/gettoken
secret= scr@
code= T001
Etape 9 : Vérification du token et des clés
Sur la base du message reçu, InSite recherche le token et vérifie notamment si la clé secrète correspond au token demandé.
Dès que le token est trouvé, il est supprimé de la base de données Profit. Le token ne peut donc être demandé qu'une seule fois. En outre, le token doit être demandé dans les 5 minutes car il sera supprimé ensuite.
Etape 10 : Envoi du token au partenaire
Une fois le token trouvé et validé, InSite envoie le token au format JSON au partenaire.
Le partenaire peut ensuite enregistrer le token afin que celui-ci reste disponible pour la session actuelle. Pour chaque demande de la page d'intégration, le partenaire doit vérifier si le token est encore valide pour la session actuelle de l'utilisateur d'InSite.
Le fait d'intégrer l'URL de la feuille de style et du javascript dans la page offre une expérience véritablement intégrée à l'utilisateur.
Aller directement à
|