Może to przesadzam.Zabezpieczanie interfejsu API przed wywołaniem poza przeglądarką
Mam trochę prostej gry javascript działającej w przeglądarce (zagadki itp.), A kiedy użytkownik wygrywa, punkty są wysyłane do backendu laravel w zależności od tego, jak szybko to zrobią.
Gdy użytkownik się loguje, tworzona jest typowa sesja, a gdy punkty są wysyłane za pomocą żądania POST, tak samo jest z csrf i JWT.
Czy jest możliwe, aby użytkownik otworzył chrome dev console i uzyskał URL, a następnie skopiował crsf, cookie lub JWT i wysłał punkty do backendu bez faktycznego grania w grę?
Apis wywoływany poza przeglądarką nie respektuje zasad Access Control-Allow-Origin.
Czy ktoś może wyjaśnić, co powstrzymuje użytkowników przed zrobieniem tego lub jak zapobiec temu działaniu i upewnić się, że użytkownicy rzeczywiście grają w grę, aby zdobywać punkty?
Może, możesz sprawdzić, czy nagłówek User-Agent jest ustawiony jako dodatek. Ale to również można dodać bez potrzeby przeglądarki internetowej. – Bora