Sto lavorando a un'applicazione che consente a un moderatore di modificare le informazioni dell'utente. Quindi, al momento, ho URL come
http://www.example.com/user/1/edit
http://www.example.com/user/2/edit
Sono un po 'preoccupato qui, perché sto esponendo direttamente la chiave primaria (ID) della tabella utenti dal database. Ho semplicemente prendere l'ID da URL (es: 1 e 2 dall'alto URL)., Interrogare il database con l'ID e ottenere le informazioni utente (ovviamente sto igienizzante l'ingresso - ID da URL)
Tieni presente che sto convalidando ogni richiesta per verificare se il moderatore ha accesso per modificare quell'utente .
È quello che sto facendo al sicuro? In caso contrario, come dovrei farlo?
Posso pensare ad un'alternativa, cioè avere una colonna separata per la tabella utenti con 25 caratteri chiave e utilizzare le chiavi in URL e database di query con quelle chiavi.
Tuttavia,
- Che differenza fa? (Poiché la chiave è ora esposta)
- Interrogazione di i rendimenti delle chiavi primarie risultano più veloci rispetto alle altre colonne