Aller au contenu principal

Valider les Références

Validation du Trafic de Référence

Rokt fournit un mécanisme permettant aux annonceurs de valider l'authenticité du trafic de référence délivré via sa plateforme.

L'implémentation actuelle utilise un JSON Web Token (JWT) signé avec l'algorithme ECDSA-256. Les clés publiques nécessaires pour la vérification peuvent être récupérées depuis les endpoints suivants :

Domaine par défaut : https://public-api.rokt.com/.well-known/jwks.json

Domaines personnalisés : https://[custom-domain]/.well-known/jwks.json

Nous recommandons de télécharger et de mettre en cache ces clés publiques pour la vérification. La durée de cache suggérée est d'une semaine. En cas de rotation de clé, Rokt vous contactera de manière proactive avec des conseils pour assurer une transition en douceur.

Mettez à jour l'URL de votre campagne pour prendre en charge le passage de jetons signés

Pour générer le jeton signé unique, assurez-vous que l'URL de destination de votre création inclut ce qui suit en tant que paramètre d'URL : jwt={rokt.jwt|}. En savoir plus sur la création de créations.

rokt-jwt-token

Dans l'URL de destination, vous devrez ajouter & ou ? avant jwt={rokt.jwt|}. Cela est déterminé par le lien de trafic original. Si le lien de trafic original contient un ?, ajoutez un & avant le jwt. rok Exemple : www.landingpage.com/?hello=world&jwt={rokt.jwt|}

Si le lien de trafic original ne contient pas de ?, ajoutez un ? avant le jwt

Exemple : www.landingpage.com/?jwt={rokt.jwt|}

Utilisation de JWT dans les URLs de Trafic de Campagne

Lors de la spécification d'une URL de trafic de campagne, vous pouvez inclure la macro rokt.jwt. À l'exécution, Rokt remplacera cette macro par un JWT signé numériquement. En validant ce jeton avec la clé publique, vous pouvez extraire les revendications suivantes :

  • cid – ID de la campagne
  • crid – ID de la création
  • rclid – ID de clic Rokt. En savoir plus sur Rokt Click ID
  • iat – Horodatage d'émission
  • exp – Horodatage d'expiration (défini à 24 heures après l'émission)
  • iss – Émetteur (défini à "Rokt")
  • aud – Audience (défini à chaîne vide)

Ces champs permettent aux annonceurs d'identifier et d'attribuer de manière sécurisée le trafic de campagne avec confiance.

Remarque : La validation de l'expiration du jeton est optionnelle et peut être configurée par les annonceurs en fonction de leurs exigences de sécurité. Certains annonceurs peuvent choisir de valider strictement les temps d'expiration, tandis que d'autres peuvent mettre en œuvre des politiques de validation plus flexibles.

Tolérance de Décalage Horaire

Lors de la mise en œuvre de la validation JWT, nous recommandons de définir une tolérance de décalage horaire d'une minute pour tenir compte des différences de temps potentielles entre les serveurs. Une synchronisation parfaite du temps entre les serveurs n'est pas toujours possible dans les systèmes distribués, et cette période de grâce aide à garantir une validation fiable des jetons dans les environnements de production.

Les exemples ci-dessous démontrent comment mettre en œuvre cette tolérance de décalage horaire dans différents langages de programmation et bibliothèques JWT.

Jeton de Test

Pour tester les exemples ci-dessous, vous pouvez utiliser ce jeton JWT (JSON Web Token) d'exemple :

eyJhbGciOiJFUzI1NiIsImtpZCI6InJva3Qtc2lnbmluZy1rZXkiLCJ0eXAiOiJKV1QifQ.eyJjaWQiOiIzNDM2MDg1MzY4NjkyNDA4MzI0IiwiY3JpZCI6IjM0Mzc3MzI3NTQ5MzU5MDYzMDgiLCJyY2xpZCI6IjdkYjk1OGRiZDIzMjI0N2E0YTgyODVhMzRkMjJmZTBmNGU5YWZmYTQ2M2JmNWVlNTRlMjY3MjFhYjBkZjBlMjMiLCJuYmYiOjE3NTU2NjY2MDEsImV4cCI6MTc1NTY3MDIwMSwiaWF0IjoxNzU1NjY2NjAxfQ.D2_5RnmIgWucUx-7JG5b-Av9PM0V59w6Pmumqv0_zHgkD1136dPhKSMv2i-fP4Z0maANJcAwY6jSTXzp6Gc7gA

Remarque : Ce jeton est uniquement destiné à des fins de test et a un temps d'expiration. Copiez ce jeton pour l'utiliser avec les exemples ci-dessous.

Exemples

Veuillez consulter la liste des exemples de code ci-dessous :

  • Exemple Java - Validation JWT en utilisant Java avec la bibliothèque JJWT
  • Exemple Python - Validation JWT en utilisant Python avec PyJWT et cryptography
  • Exemple Node.js - Validation JWT en utilisant Node.js avec la bibliothèque jose
  • Exemple Go - Validation JWT en utilisant Go avec golang-jwt
  • Exemple C# - Validation JWT en utilisant C# avec Microsoft.IdentityModel
Cet article vous a-t-il été utile ?