Mysql
 sql >> Base de données >  >> RDS >> Mysql

Système de connexion utilisateur avec base de données mySQL avec Angular JS ?

Vous ne devez pas vous connecter sur une page angulaire car toutes les données liées sont gérées par javascript qui peut facilement être arrêté, débogué et analysé.

Le mieux serait :

  1. Créez un index.php normal qui présente un formulaire de connexion à l'utilisateur.
  2. Lors de l'envoi, vérifiez la validité avec votre base de données.
  3. Si l'utilisateur est valide, démarrez une session et header sur la page réelle de l'application angulaire.
  4. Le seul moyen de vérifier s'il s'agit d'une php session valide est dans votre REST appels via angular http service aux scripts PHP liés à votre base de données.
  5. Ainsi, chaque accès en lecture/écriture à votre REST api devrait vérifier, si cet utilisateur est vraiment autorisé à faire cette opération db dans le script php.
  6. Si la vérification échoue, header retour à la page de connexion ou certains "Got you!" page.

De cette façon, l'attaquant peut être en mesure de voir le code js de l'application angulaire (s'il obtient d'une manière ou d'une autre l'adresse réelle) mais cela lui est complètement inutile, car il ne peut jamais voir les données réelles tant qu'il n'a pas commencé une php session valide . Et ce sont les données que vous voulez protéger, pas le script de l'application.

En un mot :mélangez la validation PHP standard ET Angular. Autorisez les haxors à accéder à votre page, mais ne leur montrez jamais aucune de vos données sous-jacentes. Dès que quelqu'un essaie de jouer avec vos données, expulsez-le.

C'est presque la même réponse que j'ai donnée ici

Recherchez les mots-clés marqués dans les sites PHP et Angular pour saisir l'idée derrière cela.