Mysql
 sql >> Database >  >> RDS >> Mysql

Sistema di accesso utente con database MySQL con Angular JS?

Non dovresti eseguire un accesso su una pagina angolare poiché tutti i dati relativi sono gestiti da javascript che può essere facilmente interrotto, sottoposto a debug e analizzato.

Il modo migliore sarebbe:

  1. Crea un normale index.php che presenta un modulo di accesso all'utente.
  2. Al momento dell'invio, verifica la validità con il tuo database.
  3. Se l'utente è valido avvia una sessione e header alla pagina dell'app angolare effettiva.
  4. L'unico modo per verificare se questa è una php session valida è nel tuo REST chiamate tramite http angolare servizio agli script php relativi al database.
  5. Quindi ogni accesso in lettura/scrittura alla tua REST api dovrebbe controllare se questo utente è veramente autorizzato a fare questa operazione db nello script php.
  6. Se il controllo fallisce, header torna alla pagina di accesso o ad alcuni "Got you!" pagina.

In questo modo l'attaccante potrebbe essere in grado di vedere il codice js dell'app angular (se ottiene in qualche modo l'indirizzo effettivo) ma è completamente inutile per lui, perché non può mai vedere i dati effettivi finché non ha iniziato una php session valida . E i dati sono ciò che vuoi proteggere, non lo script dell'app.

In poche parole:mescola la convalida PHP standard E Angular. Consenti agli haxor di accedere alla tua pagina, ma non mostrare mai loro nessuno dei tuoi dati sottostanti. Non appena qualcuno tenta di incasinare i tuoi dati, buttalo fuori.

Questa è quasi la stessa risposta che ho dato a qui

Cerca le parole chiave contrassegnate in entrambi i siti PHP e Angular per cogliere l'idea alla base di questo.