Cum să autentificați în mod corespunzător la php

Googling, m-am uitat la sursele Yii, Symphony și PHPixie pentru a afla cum se face autentificarea la oamenii inteligenți

Nu uitați că în cadre acest lucru este făcut cu un singur calcul - pentru a acoperi 95% din posibilele uszeysov. Și în legătură cu această implementare este ceva mai complicat. De asemenea, nu uitați că toate acestea ar trebui să funcționeze pe php5.4 +, dar, de exemplu, parola api a apărut numai în 5.5, iar parola hash este o știință întreagă.







Să descompunem problema în următoarele sarcini:

Trebuie să verificăm datele introduse de utilizator. Poate fi o pereche de identificatori + o cheie secretă (e-mail + parola dacă e mai ușor) sau poate este doar o cheie secretă (token) sau un jken JWT. o mulțime de opțiuni aici foarte mult, dar avem încă nevoie de o pereche de vechi vechi e-mail + parola.

Pentru aceasta, PHP are un program foarte ușor de utilizat pentru a lucra cu parole: parola api. Utilizați-l numai (sau ceva care o folosește sub capotă), deoarece acesta este cel mai sigur și mai fiabil mod de a lucra cu parole în PHP. Asigurați-vă că ați citit această secțiune a documentației.







Într-un caz foarte simplu (majoritatea acestora), trebuie să vă conectați doar la password_hash și să obțineți o linie nouă pe ieșire, care este scrisă în baza de date. La conectare, luăm utilizatorul cu e-mailul specificat și verificăm parola introdusă prin intermediul funcției password_verify.

După ce am fost convinși că utilizatorul nu se impersonează pe celălalt, putem crea o sesiune. În cel mai simplu caz, vom crea doar o sesiune cu ID-ul utilizatorului și. de fapt totul. ID-ul sesiunii va fi scris în cookie http-only și totul este bine. Adevărat când lucrați cu sesiuni în PHP, trebuie să vă amintiți despre atacurile CSRF, de care trebuie să vă apărați (ceea ce aproape toate cadrele din cutie sunt capabile să facă).

P.S. deoarece această problemă este foarte sensibilă și pentru a face totul "sigur" necesită ordinea experienței, vă recomand să vă ocupați de cadre sau biblioteci populare gata făcute.







Articole similare

Trimiteți-le prietenilor: