Ce document fournit un guide de démarrage rapide pour intégrer la sécurité de l'API Approov dans votre backend ASP.Net. Approov vérifie que les requêtes proviennent de versions d'applications mobiles fiables, améliorant ainsi la sécurité de votre API. Ce guide couvre la configuration de l'Approov CLI, l'enregistrement de votre domaine API, la configuration des clés (symétriques et asymétriques), l'ajout de dépendances et la mise en œuvre du middleware de jeton Approov dans votre application ASP.Net. Plus de détails et de dépannage sont liés à l'intérieur.
Approov QuickStart - Vérification des jetons ASP.Net
Approov est une solution de sécurité API utilisée pour vérifier que les demandes reçues par vos services backend proviennent de versions fiables de vos applications mobiles.
Ce référentiel implémente le code de vérification de demande côté serveur Approov pour le framework ASP.Net, qui effectue le contrôle de vérification avant d'autoriser le traitement du trafic valide par le point de terminaison de l'API.
Approuver le démarrage rapide de l’intégration
Le démarrage rapide a été testé avec les systèmes d'exploitation suivants :
Tout d’abord, configurez la CLI Approov.
Maintenant, enregistrez le domaine API pour lequel Approov émettra des jetons :
REMARQUE : Par défaut, une clé symétrique (HS256) est utilisée pour signer le jeton Approov sur une attestation valide de l'application mobile pour chaque domaine d'API ajouté avec la CLI Approov, de sorte que toutes les API partagent le même secret et que le backend doive le faire. veillez à garder ce secret en sécurité.
Une alternative plus sécurisée consiste à utiliser des clés asymétriques (RS256 ou autres) qui permettent d'utiliser un jeu de clés différent sur chaque domaine API et de vérifier le jeton Approov avec une clé publique qui peut uniquement vérifier, mais pas signer, les jetons Approov. .
Pour implémenter la clé asymétrique, vous devez passer de l'algorithme symétrique HS256 à un algorithme asymétrique, par exemple RS256, qui nécessite d'abord d'ajouter une nouvelle clé, puis de la spécifier lors de l'ajout de chaque domaine API. Veuillez visiter Gestion des ensembles de clés dans la documentation Approov pour plus de détails.
Ensuite, activez votre rôle d'administrateur Approov avec :
Pour le PowerShell Windows :
Maintenant, obtenez votre Approov Secret avec la CLI Approov :
Ensuite, ajoutez le secret Approov au fichier .env de votre projet :
Maintenant, ajoutez à votre fichier appname.csproj les dépendances :
Ensuite, dans Program.cs, chargez les secrets du fichier .env et injectez-le dans AppSettiongs :
Maintenant, ajoutons la classe pour charger les paramètres de l'application :
Ensuite, ajoutez la classe ApproovTokenMiddleware à votre projet :
REMARQUE : lorsque la validation du jeton Approov échoue, nous renvoyons un 401 avec un corps vide, car nous ne voulons pas donner d'indices à un attaquant sur la raison pour laquelle la requête a échoué, et vous pouvez aller encore plus loin en renvoyant un 400.
Pas assez de détails dans le démarrage rapide ? Ne vous inquiétez pas, consultez les démarrages rapides détaillés qui contiennent un ensemble d'instructions plus complètes, notamment comment tester l'intégration Approov.
Plus d'informations
Horloge système
Afin de vérifier correctement les délais d'expiration des jetons Approov, il est très important que le serveur backend synchronise automatiquement l'horloge système sur le réseau avec une source de temps faisant autorité. Sous Linux, cela se fait généralement avec un serveur NTP.
Problèmes
Si vous rencontrez un problème en suivant nos instructions, signalez-le simplement ici, avec les étapes pour le reproduire, et nous le réglerons et/ou vous guiderons vers le bon chemin.
Table des matières
Liens utiles
Si vous souhaitez explorer la solution Approov plus en profondeur, pourquoi ne pas essayer l'un des liens suivants comme point de départ :
Table des matières