![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 607 Pomógł: 23 Dołączył: 8.09.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam problem, mianowicie stworzyłem mechanizm sesji oparty na adresie IP. Wszystko działa pięknie i zgrabnie, dopóki z jednego ip nie pojawia się wielu uzytkowników. Chciałem, żeby z kazdej maszyny(komputera) adres ip był różny (chodzi mi o wewnętrzne przypisanie ip). Sprawa wygląda tak, pobieram ip, które jest takie:
84.27.248.138 i to jest ip routera sieci, a ja chcę wygenerować z tego ip osobne dla każdego z komputerów, jak to zrobić? Trochę nakręciłem, ale mam nadzieję, że skumacie o co chodzi. A i jeszcze jedno ![]() $_SERVER['HTTP_X_FORWARDED_FOR'] zwraca mi często pusty string. Nie chcę używać mechanizmu opartego tylko na cookies, bo wiadomo, że nie wszyscy mają je włączone. Pozdrawiam Ten post edytował Spirit86 8.02.2007, 00:16:55 -------------------- Audio: Metallica, Soil, RHCP, OffSpring, Green Day, "Retro", Gorillaz, Disturbed, Coma
DB: MySQL 4.1 | php: 4.4.3 Pomogłem Ci? Wciśnij przycisk POMÓGŁ. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 398 Pomógł: 0 Dołączył: 13.07.2005 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Chyba tak nie da sie zrobić
![]() -------------------- "Państwo to ja" Ludwik XIV
"Wróg zaatakuje to co kochasz" Ojciec Chrzestny "Wszystko powinno być proste jak to tylko możliwe, ale nie prostsze..." A. Einstein "Wyobraźnia jest ważniejsza niż wiedza" Albert Einstein "Nieprawda powtarzana wielokrotnie staje się prawdą" |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 607 Pomógł: 23 Dołączył: 8.09.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
hmm, w takim razie jak się tworzy mechanizmy sesji, to o co się je opiera? Przecież niemożliwością jest dołączenie do każdego linku na stronie ID sesji...
-------------------- Audio: Metallica, Soil, RHCP, OffSpring, Green Day, "Retro", Gorillaz, Disturbed, Coma
DB: MySQL 4.1 | php: 4.4.3 Pomogłem Ci? Wciśnij przycisk POMÓGŁ. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 398 Pomógł: 0 Dołączył: 13.07.2005 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Sesja polega na tym, że otwierasz przeglądarke i masz unikatową nazwe sesji, zamykasz i otwierasz i masz inną nazwę sesji. Sesje możesz połączyć z ciasteczkami i bazą danych. Możesz np. zapisywać sesje do ciastka i bazy danych, do bazy jeszcze adres publiczny IP i np. przeglądarke (nazwa i jezyk przegladarki). Na tej podstawie możesz sprawdzić czy jest to ta sama osoba... Zależy do czego chcesz to zastosowac...
-------------------- "Państwo to ja" Ludwik XIV
"Wróg zaatakuje to co kochasz" Ojciec Chrzestny "Wszystko powinno być proste jak to tylko możliwe, ale nie prostsze..." A. Einstein "Wyobraźnia jest ważniejsza niż wiedza" Albert Einstein "Nieprawda powtarzana wielokrotnie staje się prawdą" |
|
|
![]()
Post
#5
|
|
![]() Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
Ja dodam że $_SERVER['HTTP_X_FORWARDED_FOR'] nie jest obowiązkową zmienną którą serwery muszą wysłać, rzadko się spotykam z sytuacją kiedy ta zmienna zawiera wewnętrzny adres IP.
Pozdrawiam. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 607 Pomógł: 23 Dołączył: 8.09.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Napisałem już prawie cały CMS, który jest oparty o klasę sesji, którą napisałem dawno, dawno temu, niemniej jednak, klasa przetrzymuje w bazie danych informacje związane z sesją użytkownika, każda sesja ma swoje własne ID, które jest generowane tak:
Sesje są ponadto oparte na ciastkach, gdzie na wszelki wypadek zapisuje jeszcze raz SID. Wszystko działa(ło) bez zarzutów, na localu czy innym serwie, dopóki nie olśniło mnie, że ktoś, kto ma taki sam IP od razu jest zalogowany na moje konto i na odwrót, ja jestem zalogoawny na czyjeś konto. Mogę generować unikatowe ID, ale jeżeli ktoś będzie miał wyłączone cookies, a to ostatnio, nie wiedzieć czemu stało się "trendy", pewnie znów jakiś dziennikarz z czasopisma pokroju fakt napisał, że to jest sposób, aby zabezpieczyć się przed czymśtam... Wracając do tematu, jeżeli ktoś będzie miał wyłączone cookies, a id będzie generowane losowo za pierwszym zainicjowaniem sesji, to po odświeżeniu nie zostanie rozpoznany przez klasę sesji (nie ma cookie, nie identyfikujemy po ip, klasa losuje nowy ID). Pomysł z przeglądarką też mi się nasunął, ale wcale nie jest on a ) bezpieczny b ) użyteczny - nikt nie mówi, że z jednego ip nie może korzystać wiele osób na takiej samej przeglądarce. Dodawanie SID do każdego linku jest prawie niemożliwe, szczególnie przy danych z bazy danych, wyrażenia regularne dodające do linków ID zaorały by tylko niepotrzebnie stronę. Ma ktoś jakiś pomysł na ten "mat"? Zastanawiam się tu jak zidentyfikować unikatowo użytkownika. Czytałem, że adres MAC też odpada... Zamykanie strony dla osób z wyłączonymi cookies wydaja mi się pomysłem amatorskim... Pozdrawiam Ten post edytował Spirit86 8.02.2007, 09:58:59 -------------------- Audio: Metallica, Soil, RHCP, OffSpring, Green Day, "Retro", Gorillaz, Disturbed, Coma
DB: MySQL 4.1 | php: 4.4.3 Pomogłem Ci? Wciśnij przycisk POMÓGŁ. |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 398 Pomógł: 0 Dołączył: 13.07.2005 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
webdicepl - lepiej nie zakładaj tak, bo w dalszym ciągu jest dużo ludzi w sieciach osiedlowych...
-------------------- "Państwo to ja" Ludwik XIV
"Wróg zaatakuje to co kochasz" Ojciec Chrzestny "Wszystko powinno być proste jak to tylko możliwe, ale nie prostsze..." A. Einstein "Wyobraźnia jest ważniejsza niż wiedza" Albert Einstein "Nieprawda powtarzana wielokrotnie staje się prawdą" |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 190 Pomógł: 1 Dołączył: 20.05.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Te kombinacje z adresem IP i ew. innymi parametrami sa do kitu. Zawsze moze sie zdarzyc dwoch uzytkownikow, ktorych zidentyfikjesz jako jednego.
A co do tego: Cytat Zamykanie strony dla osób z wyłączonymi cookies wydaja mi się pomysłem amatorskim... Osoba, ktora jest tak nawiedzona ze wylacza cookies, musi sie liczyc z tym, ze nie bedzie sie w stanie zalogowac na prawie zadna strone. A jesli chce sie gdzies zalogowac, to musi ustawic wyjatek dla danej domeny i juz moze korzystac do woli. Ciasteczka sa wymagane do normalnego funkcjonowania wielu szeroko stosowanych mechanizmow, a jesli ktos swiadomie ogranicza funkcjonalnosc swojej przegladarki, to ja bym sie tym nie przejmowal... |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 749 Pomógł: 37 Dołączył: 3.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Dziś większość logowań działa na sesji...
-------------------- |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 25.01.2007 Skąd: AGH Ostrzeżenie: (0%) ![]() ![]() |
Cytat(marcini82) Osoba, ktora jest tak nawiedzona ze wylacza cookies, musi sie liczyc z tym, ze nie bedzie sie w stanie zalogowac na prawie zadna strone. A jesli chce sie gdzies zalogowac, to musi ustawic wyjatek dla danej domeny i juz moze korzystac do woli. Ciasteczka sa wymagane do normalnego funkcjonowania wielu szeroko stosowanych mechanizmow, a jesli ktos swiadomie ogranicza funkcjonalnosc swojej przegladarki, to ja bym sie tym nie przejmowal... Swoja drogą też tego nie rozumie. Skoro są ciastka to czemu z nich nie korzystać albo traktować je jako samo zło. Pozatym w przegladarce można ustawić np. żeby wszystkie sie kasowały po wyłączeniu przeglądarki.. albo przed dodaniem ciastka żeby wyświetlał sie monit (dodajesz tylko te które chcesz..)... sa imho lepsze metody zabezpieczenia sie niż blokada ciastek.Cytat(1010) Dziś większość logowań działa na sesji... Które de facto również korzystają z ciastek ![]() Ten post edytował Secator 8.02.2007, 23:14:12 |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 749 Pomógł: 37 Dołączył: 3.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Cytat CYTAT(1010) Dziś większość logowań działa na sesji... Które de facto również korzystają z ciastek tongue.gif (no dobra, chyba ze w adresie przekazujesz SID ;P) wlasnie dlatego uważam iż blokowanie ciastek to głupota -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 7.07.2025 - 23:14 |