script beveiligen

Status
Niet open voor verdere reacties.

pkmartijn

Gebruiker
Lid geworden
18 aug 2011
Berichten
163
ik ben met een spel bezig en heb als iemand de url:
localhost:80/game/index.php?user3242 bijv.
maar hoe moet ik dat beveiligen want als iemand anders die url in typt kan hij op zijn spel hoe moet ik dat beveiligen?
 
Wachtwoord? sessienr? Zolang je een centrale pagina gebruikt zijn er tal van mogelijkheden?
 
Heel simpel, start de sessie bovenaan de php-pagina met session_start() en maak vervolgens een sessie-variabele aan $_SESSION['test'].
 
hoe maak je dan zoon ding aan?
dat snap ik niet
en hoe controleer je of hij het nog doet?
 
Ik zal eerst op jouw eerste vraag een mogelijk antwoord formuleren.

Jij hebt een URL bijvoorbeeld: localhost:80/game/index.php?user3242. Ik veronderstel dat dat je dan ook meerdere users hebt zoals user5689, user2457, etc.

Zoals Wampier zegt kan je als je die URL opent eerst een wachtwoord vragen. Wampier stelde ook voor om met een sessienummer te werken maar sessies gaan maar een bepaalde tijd mee (standaard 60 minuten (correct me if wrong)). Dus als dat spelletje constant gebruikt kan worden is dit geen optie.

Je zou ook user3242 kunnen encrypteren zodat je een langere link krijgt die dus eigenlijk niet te raden valt zonder dat je hem weet, en ik denk dat dit de makkelijkste oplossing is.


Hoe moet ik dan een sessie id aan?

Een sessie id wordt automatisch aangemaakt wanneer je een start.

PHP:
session_start(); //bovenaan de pagina!

Om vervolgens de sessie id te verkrijgen gebeurt op de volgende manier.

PHP:
session_start();

echo session_id();

Maar normaal gebruik je dus sessies om variabelen in aan te maken die je over de hele webapplicatie voor een bepaalde gebruiker kan gebruiken.

PHP:
$_SESSION['loginID'] = 5;
echo 'Jouw login id is: ' . $_SESSION['loginID'];

Hopelijk beantwoord dit jouw vraag?
 
Zoiets dergelijks zou je kunnen gebruiken om te checken of iemand is ingelogd of niet, maar er komt nog wel iets meer bij kijken. Het duurt niet heel lang als je gewoon een simpele login maakt.

Zie deze tutorial:
Hier kun je zelfs de source gewoon downloaden :)

http://tutorialzine.com/2009/10/cool-login-system-php-jquery/

Mooie tutorial, maar men encrpyteerd het wachtwoord gewoon met het belachelijke MD5 encryptieprotocol. Dit is de dag van vandaag veel te snel gekraakt. Je vindt op het internet genoeg decrypters hiervoor.

Regel: gebruik fatsoenlijke eenrichtings-encryptiemethodes (zoals Bcrypt en check de crypt klasse van php die hier speciaal is voor ontworpen).

Een beetje meegaan met de tijd :D
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan