Au cours des dernières années, la tendance pour les applications côté client (navigateur) a vraiment pris son envol.
Pour mon dernier projet, j'ai décidé d'essayer de me déplacer avec le temps et d'écrire une application côté client.
Une partie de cette application implique l'envoi d'e-mails de transaction aux utilisateurs (par exemple, valider l'inscription, les e-mails de réinitialisation de mot de passe, etc.). J'utilise une API tierce pour envoyer les courriels.
Normalement, mon application serait exécutée sur un serveur. J'appellerais l'API tierce à partir du code de mon serveur.
L'exécution d'une application côté client signifie que cela doit maintenant se produire sur le navigateur de l'utilisateur. L'API tierce fournit les fichiers JavaScript nécessaires pour y parvenir.
Le premier problème criant que je vois est que je dois utiliser une clé API. Cela devrait normalement être stocké en toute sécurité sur mon serveur, mais je suppose que je devrai maintenant fournir cette clé au navigateur client.
En supposant que je puisse résoudre ce problème, le prochain problème est ce qui empêche un utilisateur féru de technologie de charger l'outil de développement JavaScript dans un navigateur et d'utiliser l'API de messagerie de toute façon qu'il préfère, plutôt que de se conformer aux règles que j'ai définies dans l'application. .
Je suppose que ma question générale est la suivante: comment pouvons-nous empêcher l’utilisation malveillante d’une application côté client?