Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Websockety i bezpieczne przekazywanie danych sesji
denis94
post
Post #1





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 8.08.2010
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Witam.
Zaczynam zabawę z websocketami których będę musiał użyć w swoim projekcie. Aktualnie zacząłem naukę od prostego chatu w czasie rzeczywistym. Z samymi websocketami sobie poradziłem, zarówno klient jak i serwer działają prawidłowo, nawiązuje się połączenie a wiadomości na czacie wyświetlają się pozostałym użytkownikom błyskawicznie.
Mam jednak problem a w zasadzie brak pomysłu na to w jaki sposób mogę weryfikować użytkowników. Każdy użytkownik loguje się na stronie swoim loginem i hasłem i tworzona jest przez php zwykła sesja.
Mam więc kilka pytań.

W jaki sposób zrealizować po stronie serwera weryfikację czy wiadomość która dotarła od użytkownika XXX na pewno pochodzi od użytkownika zalogowanego?
W jaki sposób weryfikować jego sesję utworzoną przez zwykłe $_SESSION['login'] ?
W jaki sposób zablokować możliwość łączenia się z serwerem websocketów z domen innych niż moja i uniemożliwić podszywanie się pod zalogowanych użytkowników?

Nie pytałbym gdybym wcześniej nie szukał. Z góry dziekuję.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
denis94
post
Post #2





Grupa: Zarejestrowani
Postów: 68
Pomógł: 0
Dołączył: 8.08.2010
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


by_ikar - czy dobrze Cię rozumiem?
Zamiast generować sesję w php za pomocą $_SESSION['login'] mam generować sobie podczas logowania np. jakiś klucz sesji składający się z losowego ciągu i przetrzymywać go w cookie oraz np. w bazie mysql razem z kontami użytkowników.
Następnie gdy użytkownik wejdzie na czat wysyłać websocketem do serwera klucz sesji, a następnie serwer powinien sprawdzić czy przesłany klucz sesji istnieje w bazie i na tej podstawie stwierdzać czy dany użytkownik jest zalogowany?
Czy takie wysyłanie klucza plaintextem do serwera nie jest zbytnio niebezpieczne?

Comandeer - dzięki, zapoznam się ale raczej na początku szukam sposobu na rozwiązanie problemu bez dodatkowych bibliotek i mało cudzych linijek kodu.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.12.2025 - 22:33