Czy sesje PHP można edytować jak pliki cookie? Lub są przechowywane na serwerze?Czy sesje PHP można edytować ręcznie?
Odpowiedz
Klucz sesji jest przechowywany w przeglądarce klienta, a dane są przechowywane na serwerze.
Gdy użytkownik wysyła żądanie na serwer, klucz sesji jest wysyłany przez sieć, a wartości powiązane z kluczem są pobierane z określonego pliku sesji na serwerze i są dostępne przez $ _SESSION.
Możliwe jest przejęcie sesji innego użytkownika, jeśli klucz zostanie przechwycony, dlatego w sesji powinny znajdować się określone wartości wiążące się z połączeniem komputera z siecią (np. Adres IP).
Zazwyczaj są one przechowywane w katalogu/tmp na serwerze internetowym, jeśli host nie jest ostrożny. Można to zmienić za pomocą session_save_path(), jest to coś, co robię ze wszystkimi moimi aplikacjami PHP, które używają sesji.
Dane sesji nie mogą być edytowane przez użytkownika, ponieważ są przechowywane na serwerze. Użytkownik może jednak rozpocząć nową sesję i zrzucić wszystkie dane sesji, które poprzednio miał. Ponadto powinieneś być świadomy wartości granicznej security issues, takiej jak fiksacja sesji.
To działa jak poniżej:
- Przeglądarka żąda strony, składając swój
SID
lub ID sesji przy pomocy cookie lub z adresem URL. - Server wyszukuje pliki cookie wewnątrz
session_save_path()
i unserializes tablicę - uzyskać dostęp to informacji z PHP
Niestety, jedyną rzeczą, klient wie, to ID Sesji, ale które mogą być porwane, na przykład za pomocą kradzieży plików cookie lub innych metod Cross Site Scripting. Gdybym na przykład dostał twoją sesję SO, SO nie wiedziałaby lepiej niż ja. Chyba, że sprawdzą mój IP lub coś w tym stylu.
- 1. Czy sesje PHP ustawiają jakieś ciasteczka?
- 2. Konfiguracja PHP umożliwiająca sesje
- 3. php - zniszczyć wszystkie sesje
- 4. Sesje w PHP 7
- 5. Czy można edytować pole funkcyjne w Openerp?
- 6. Teksty TinyMCE nie można edytować
- 7. Sesje PHP w domenie krzyżowej
- 8. Nie można edytować plików xml, ale można edytować .java?
- 9. AWS Sesje DynamoDB z elastyczną siatką Sesje PHP
- 10. Czy można ręcznie zaimplementować wiązania kakao?
- 11. Czy można ręcznie przeprowadzić jedno ręczne sprawdzanie?
- 12. Czy można ręcznie zmodyfikować wyrażenie IQueryable?
- 13. Czy można bezpiecznie ręcznie usunąć plik tempdb.mdf?
- 14. Można ręcznie zainstalować socket.io?
- 15. Sesje PHP nie są zapisywane w memcache
- 16. System logowania (PHP) Pliki cookie i sesje
- 17. Sesje PHP zbyt szybko tracą czas
- 18. JAK zmienic sesje testowe w PHP?
- 19. Express: czy można ominąć sesje dla plików statycznych?
- 20. Czy wartości boolowskie można edytować w trybie wyświetlania_sekcji?
- 21. Czy można edytować i rekompilować plik binarny systemu iOS?
- 22. Czy można edytować linię już wyprodukowaną w pakiecie Windows?
- 23. Czy można edytować plik i zatwierdzić github/bitbucket z przeglądarki
- 24. PHP [OOP] - Jak ręcznie wywołać konstruktor klas?
- 25. Czy można ujawniać funkcje zakodowane ręcznie jako wspólne kroki?
- 26. Wix: Czy można ręcznie uruchomić element RemoveFolderEx z niestandardowej akcji?
- 27. Zabezpieczanie Cookies Sesje
- 28. NSTextField nie można edytować w zwyczaju NSWindow
- 29. Angular.JS: dlaczego nie można edytować danych wejściowych?
- 30. Jak można edytować komórki JavaFX TableView?
Nie chcę, aby użytkownik edytował dane. Nie może edytować danych, prawda? – FinalDestiny
nie, nie może .. –