Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > it.comp.www.php > #22337 > unrolled thread
| Started by | marcocatarsi@tiscaly.it (Catarsi) |
|---|---|
| First post | 2018-10-31 12:49 +0100 |
| Last post | 2018-10-31 13:21 +0100 |
| Articles | 3 — 2 participants |
Back to article view | Back to it.comp.www.php
Ridurre le interrogazioni al DB marcocatarsi@tiscaly.it (Catarsi) - 2018-10-31 12:49 +0100
Re: Ridurre le interrogazioni al DB Alessandro Pellizzari <shuriken@amiran.it> - 2018-10-31 12:11 +0000
Re: Ridurre le interrogazioni al DB marcocatarsi@tiscaly.it (Catarsi) - 2018-10-31 13:21 +0100
| From | marcocatarsi@tiscaly.it (Catarsi) |
|---|---|
| Date | 2018-10-31 12:49 +0100 |
| Subject | Ridurre le interrogazioni al DB |
| Message-ID | <1nxjcvi.14c66jw1pn18f0N%marcocatarsi@tiscaly.it> |
Salve a tutti,
ho delle richieste ajax piuttosto frequenti, attraverso le quali
accertarmi che l'utente - qualunque azione svolga - sia sempre loggato e
abbia un determinato id. Effettuando un login ad ogni sua mossa, è
evidente che debba interrogare in database di continuo, quindi temo un
eccessivo (e forse inutile) spreco di risorse.
La domanda è questa: ci si può fidare solo delle sessioni? Mi spiego con
i vari passaggi che avrei in mente:
- l'utente arriva, si logga con successo; in quel momento gli creo la
sessione:
$_SESSION['id']=25;
(sessione che ovviamente non esiste, se il login fallisce)
- dopodiché
$idUtente=0;
if (isset($_SESSION['id']) and is_numeric($_SESSION['id']) and
$_SESSION['id'] > 0) {
$idUtente=$_SESSION['id'];
}
- i successivi controlli avvengono in questo modo:
if ($idUtente > 0) {
// fai cosa ti pare.
}
Non so quanto il metodo sia sicuro, non ne ho la più pallida idea. Voi
che mi dite?
Mille grazie.
--
mailto: y = i
------------------------------------------------------
http://www.catarsi.it
Vivo nel terrore di non essere frainteso (Oscar Wilde)
[toc] | [next] | [standalone]
| From | Alessandro Pellizzari <shuriken@amiran.it> |
|---|---|
| Date | 2018-10-31 12:11 +0000 |
| Message-ID | <g3tkfnFqqgbU1@mid.individual.net> |
| In reply to | #22337 |
On 31/10/2018 11:49, Catarsi wrote: > ho delle richieste ajax piuttosto frequenti, attraverso le quali > accertarmi che l'utente - qualunque azione svolga - sia sempre loggato e > abbia un determinato id. Effettuando un login ad ogni sua mossa, è > evidente che debba interrogare in database di continuo, quindi temo un > eccessivo (e forse inutile) spreco di risorse. > > La domanda è questa: ci si può fidare solo delle sessioni? Sì. La sessione è salvata lato server, quindi è "sicura". Puoi vedere come crittare/firmare il session cookie, se vuoi essere sicuro che uno non si faccia rubare il cookie dal browser ed entri con una identità diversa. E puoi ridurre la durata della sessione a pochi secondi invece dei minuti/ore di default, così obblighi a ri-validare l'utente. In questo modo se vengono fatte n chiamate in poco tempo (abbastanza tipico con AJAX e API) hai l'autenticazione "cachata" sul server, ma puoi sempre revocarla e avere poco tempo di esposizione in caso di hack. Se sono chiamate AJAX significa che probabilmente hai un'API dietro, quindi tieni conto anche del fatto che quegli endpoint potrebbero essere chiamati al di fuori del browser (da Postman, per esempio, per testarli), quindi potresti non avere i cookie con l'id di sessione. Ma questo è probabilmente un passo successivo. Bye.
[toc] | [prev] | [next] | [standalone]
| From | marcocatarsi@tiscaly.it (Catarsi) |
|---|---|
| Date | 2018-10-31 13:21 +0100 |
| Message-ID | <1nxje5w.10hkvls1dp8hr0N%marcocatarsi@tiscaly.it> |
| In reply to | #22338 |
Alessandro Pellizzari <shuriken@amiran.it> wrote: > > La domanda è questa: ci si può fidare solo delle sessioni? > Sì. La sessione è salvata lato server, quindi è "sicura". Perfetto. Molto interessante anche tutto ciò che scrivi in seguito, mi sarà utile per imparare e usare nuovi procedimenti. A presto e grazie mille. -- mailto: y = i ------------------------------------------------------ http://www.catarsi.it Vivo nel terrore di non essere frainteso (Oscar Wilde)
[toc] | [prev] | [standalone]
Back to top | Article view | it.comp.www.php
csiph-web