michalkortas
michalkortas
Zamiast stosować przewidywalne, inkrementowane identyfikatory w tabelach bazy danych zaleca się często, ze względów bezpieczeństwa, używanie tzw. #uuid, czyli unikalnych identyfikatorów tekstowych. Taki klucz w tabeli maksymalnie niweluje skuteczność ataków ☠ polegających na kolejnym odpytywaniu URL, zwiększając jedynie parametr ID o jeden.

Na przykładzie #php i #laravel zademonstruję sposób na użycie UUID.

A czy Ty używasz UUID w swoim projekcie?
  • Najlepsze
  • Wszystkie komentarze
Serghio
@michalkortas: Właściwie nie wydaje Wam się, nie macie wrażenia, że to tylko obejście pewnego problemu inną niekoniecznie słuszną drogą?

To tak jakby każda szafka w szatni na basenie była innego koloru i zamiast numeracji od 1 do 100, miały różne dziwne symbole. Natomiast Wy posiadajcie tylko jeden klucz do różowej szafki. Możecie otworzyć tylko jedną, ale próbujecie również pozostałe.

Rozumiem, że efektem stosowania UUID może być sytuacja, gdy zamiast
szczesc_borze
@Jurigag: Mając ACL rzucasz access denied niezależnie od tego, czy resource istnieje i pytający nie ma uprawnień, czy po prostu resource nie istnieje. UUID to niskopoziomowe rozwiązanie problemu wysokopoziomowego okupione problemami.