[PHP] ip-adres achterhalen bij gprs-client

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik zit met het volgende probleem:

Ik heb een aantal pagina's gemaakt welke mensen van het bedrijf waarvoor ik werk met hun mobiele telefoon kunnen opvragen. Deze informatie is echter niet voor iedereen toegankelijk.

Normaal gesproken zou je dan alleen bekende ip-adressen toegang kunnen geven, maar ik heb begrepen dat mensen met een gprs-abonnement gebruik maken van de proxy van hun provider.

Weet iemand een andere manier om te achterhalen met welke gebruiker je te maken hebt?

Acties:
  • 0 Henk 'm!

  • usr-local-dick
  • Registratie: September 2001
  • Niet online
Of je test het uit door met een GPRS ding je site te bezoeken, of je vraagt de GPRS provider welke address space hij gebruikt.

Acties:
  • 0 Henk 'm!

  • megamuch
  • Registratie: Februari 2001
  • Laatst online: 08-12-2024

megamuch

Tring Tring!

Of je laat mensen inloggen :) ff telnum + passwd ingeven is in dit geval het eenvoudigste

[ Voor 24% gewijzigd door megamuch op 21-10-2004 11:48 ]

Verstand van Voip? Ik heb een leuke baan voor je!


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
usr-local-dick schreef op 21 oktober 2004 @ 11:46:
Of je test het uit door met een GPRS ding je site te bezoeken, of je vraagt de GPRS provider welke address space hij gebruikt.
Het probleem is dat je wel een ip-adres ziet, maar dat is dus van de proxy van de gprs provider. Ik wil bijvoorbeeld toegang verlenen aan iemand met een KPN-abonnement, maar niet aan alle abonnees van de KPN.

Acties:
  • 0 Henk 'm!

  • usr-local-dick
  • Registratie: September 2001
  • Niet online
je wilt authenticatie maar dat moet je op basis van iets doen.
Aangezien IP authenticatie niet werkt moet je toevlucht zoeken tot user.passwd etc vrees ik.

Acties:
  • 0 Henk 'm!

Verwijderd

Op google getypt PHP IP behind proxy

en kijk

code:
1
2
3
4
5
6
7
8
9
10
11
12
Most proxy servers set X-forwarded-for.


Code:
if (getenv('HTTP_X_FORWARDED_FOR'))
{ 
  $ip=getenv('HTTP_X_FORWARDED_FOR'); 
} 
else
{ 
  $ip=getenv('REMOTE_ADDR'); 
}

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
usr-local-dick schreef op 21 oktober 2004 @ 13:15:
je wilt authenticatie maar dat moet je op basis van iets doen.
Aangezien IP authenticatie niet werkt moet je toevlucht zoeken tot user.passwd etc vrees ik.
dat is natuurlijk altijd een mogelijkheid, maar ik vind het nogal een gepriegel als mensen elke keer vanaf hun mobiele telefoon moeten inloggen als ze even snel snel iets willen checken. vandaar dat ik eerst naga of er betere methoden voor authenticatie bestaan.
Verwijderd schreef op 21 oktober 2004 @ 13:29:
Op google getypt PHP IP behind proxy

en kijk
helaas werd HTTP_X_FORWARDED_FOR in de gevallen die ik heb getest niet meegegeven.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
* kick *

Nog andere mensen die suggesties hebben misschien???

Acties:
  • 0 Henk 'm!

  • GambitRS
  • Registratie: Juni 2001
  • Laatst online: 13-06-2013

GambitRS

w00t

Als iemand die je niet kent en waar je niet voor werkt die pagina's zouden zien per ongeluk, heeft dat dan nadelige gevolgen?

MechWarrior || Monsters Game


Acties:
  • 0 Henk 'm!

  • Infinitive
  • Registratie: Maart 2001
  • Laatst online: 25-09-2023
Een hele simpele oplossing in mijn ogen zou zijn: geef elke gebruiken een "geheime url" om mee in te loggen. Die kunnen ze dan bijv. in hun favorieten zetten. Bijv. iets als:

inside.bedrijf.com/UniQu3

Uiteraard is dit niet de meest verstandige methode, maar het lijkt me voldoende bescherming bieden. Maar niet echt veilig:

Is namelijk 100% leesbaar en interpreteerpaar door alle proxy-servers die er tussen zitten. Komt mogelijk voor in statistieken van je websites. Staat in je favorieten en je geschiedenis, dus mogelijk dat een zoekmachine/spyware dit in hun resultaten op nemen.

Een alternatieve manier die ik ooit eens heb gezien, maar weet niet of het beschikbaar is om te gebruiken, is het installeren van een certificate aan de client-side. De client gebruikt het certificate om zichzelf te identificeren. (dus eigenlijk een beetje de omgekeerde wereld van traditionele certificates).

[ Voor 4% gewijzigd door Infinitive op 23-10-2004 17:39 ]

putStr $ map (x -> chr $ round $ 21/2 * x^3 - 92 * x^2 + 503/2 * x - 105) [1..4]


Acties:
  • 0 Henk 'm!

  • Kuhlie
  • Registratie: December 2002
  • Niet online
Of wel inloggen, maar dan een cookie opslaan zodat de volgende keer inloggen niet nodig is.

Acties:
  • 0 Henk 'm!

  • Xandrios
  • Registratie: Februari 2001
  • Laatst online: 16:24
Let erop dat ook truucjes met IP's achter de proxy niet gaan werken: Elke ISP gebruikt gewoon interne (192.168.0.x) adressen voor de client telefoons. En via standaard NAT-routing wordt het dan naar een publiek IP gepatched.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Infinitive schreef op 23 oktober 2004 @ 17:38:
Een hele simpele oplossing in mijn ogen zou zijn: geef elke gebruiken een "geheime url" om mee in te loggen. Die kunnen ze dan bijv. in hun favorieten zetten. Bijv. iets als:

inside.bedrijf.com/UniQu3

Uiteraard is dit niet de meest verstandige methode, maar het lijkt me voldoende bescherming bieden.
Op zich kan dit al een bruikbare methode zijn, zeker als ik met enige regelmaat de url wijzig (zoals je ook je wachtwoord regelmatig moet wijzigen). Bedankt! :*)
Een alternatieve manier die ik ooit eens heb gezien, maar weet niet of het beschikbaar is om te gebruiken, is het installeren van een certificate aan de client-side. De client gebruikt het certificate om zichzelf te identificeren. (dus eigenlijk een beetje de omgekeerde wereld van traditionele certificates).
Je bedoelt een soort van digitaal paspoort? Ik weet niet of zoiets op een mobiele telefoon te gebruiken is, ik zal het eens nagaan.
GambitRS schreef op 23 oktober 2004 @ 17:28:
Als iemand die je niet kent en waar je niet voor werkt die pagina's zouden zien per ongeluk, heeft dat dan nadelige gevolgen?
Het heeft geen wereldschokkende gevolgen als dat gebeurt, je kunt er alleen informatie opvragen. Maar het zijn gegevens van onze klanten, en die moeten wel beschermd blijven.
Xandrios schreef op 23 oktober 2004 @ 18:12:
Let erop dat ook truucjes met IP's achter de proxy niet gaan werken: Elke ISP gebruikt gewoon interne (192.168.0.x) adressen voor de client telefoons. En via standaard NAT-routing wordt het dan naar een publiek IP gepatched.
Nee inderdaad, vandaar dat iets als 'HTTP_X_FORWARDED_FOR' geen zin heeft.

Acties:
  • 0 Henk 'm!

  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
Verwijderd schreef op 21 oktober 2004 @ 13:29:
Op google getypt PHP IP behind proxy

en kijk

code:
1
2
3
4
5
6
7
8
9
10
11
12
Most proxy servers set X-forwarded-for.


Code:
if (getenv('HTTP_X_FORWARDED_FOR'))
{ 
  $ip=getenv('HTTP_X_FORWARDED_FOR'); 
} 
else
{ 
  $ip=getenv('REMOTE_ADDR'); 
}
Zoals al opgemerkt is werkt dit niet, (proxies hoeven dat niet correct door te geven), en, daarbovenop is dit stukje code hopeloos verouderd.

Gebruik daar nou gewoon de gegeven super globals voor.

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info

Pagina: 1