Stránka: 1 z 1
| [ Príspevkov: 7 ] | |
Autor | Správa |
---|
Registrovaný: 07.08.06 Prihlásený: 18.11.21 Príspevky: 947 Témy: 268 | 268 Bydlisko: Levice |
Chcem vyriesit takuto situaciu:
mam textovu hru, kde budu 2-3 moznosti na kliknutie pre uzivatela.
Napr. 1) Pojdes na sever 2) Pojdes na juh
Po kliknuti na 1. moznost by to malo vyzerat ako spracuj.php?akcia=5, 2.moznost napr. spracuj.php?akcia=10. Cize ten parameter urci, co sa ma po kliknuti zobrazit.
Takto keby som to dal s parametrom v URL, hocikto si to prepise. Tiez ak by som dal pomocou onclick, alebo ajaxovym callom, tam to tiez vedia prepisat firebugom alebo v konzole atd. Napr. spracuj(5);
Ako teda posunut premennu aby to nebolo take lahke zmenit (cheatovat)?
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
Údaje, ktoré prídu od klienta, môžu byť vždy zmanipulované a nijako sa tomu nedá vyhnúť.
V tomto prípade server vie, kam môže ísť používateľ, takže server si overí, či používateľ išiel tam, kam mu to dovoľovala aktuálna situácia. Dôležité je, aby klient robil len to, čo mu povie server (a teda napr. ak sa má vygenerovať náhodné číslo, tak ho vygeneruje a použije server).
|
|
Registrovaný: 24.01.08 Prihlásený: 13.09.17 Príspevky: 14572 Témy: 66 | 66 Bydlisko: Žilina |
Jednoducho, musíš aj na strane servera urobiť kontrolu, či je daná akcia pre daného užívateľa povolená alebo nie. Musíš defaultne počítať s tým, že tie hodnoty pochádzajúce od užívateľa boli upravené a robiť vždy kontrolu. To platí celkovo pre webové aplikácie, nielen hry.
_________________ C#, PHP, ... |
|
Registrovaný: 19.03.07 Prihlásený: 25.12.24 Príspevky: 7076 Témy: 85 | 85 Bydlisko: BA |
encrypt/decrypt? a mozes to mat aj v url. ?akcia=65d16sf1a6e2r6rf1ds6 si asi nikto nedomysli alebo sa nepokusi to prepisat.... miesto get pouzit post s hidden inputmi, aj ked tak ako tak si to lahko precita v kode, ak sa vyzna...
_________________ Desktop: CPU AMD R7 1700x @ 3.85GHz | Cooling be quiet! Dark Rock Pro 4 | MB ASRock X470 Taichi Ult. | RAM 4x8GB DDR4 G-SKILL TridentZ RGB 3000 CL16-16-16-36 | VGA Powercolor VEGA56 + Raijintek Morpheus II | SSD Crucial MX300 525GB | HDD Seagate Ironwolf 3TB 5900rpm | PSU CORSAIR RM750X | MONITOR AOC Q3279VWFD8 | MOUSE HyperX Pulsefire FPS + Razer eXactMat | HyperX Alloy FPS Brown | HyperX Cloud | ARCH x64 & Notebook: DELL inspiron 7537 i7 4500U, 16GB RAM, nv750, FHD IPS,Crucial M4 128GB | ARCH x64 & Surface Go 8/128 & Mobil: LG v40 ThinQ (2018) & SBC: Raspberry pi 0 | 3B+ & Headphones: Senheiser HD58X | AKG K551 + detachable cable mod | Linsoul TIN T2 | KZ SZN |
|
Registrovaný: 24.01.08 Prihlásený: 13.09.17 Príspevky: 14572 Témy: 66 | 66 Bydlisko: Žilina |
void, čo by to riešilo? tak či tak potrebuješ server-side kontrolu
_________________ C#, PHP, ... |
|
Registrovaný: 19.03.07 Prihlásený: 25.12.24 Príspevky: 7076 Témy: 85 | 85 Bydlisko: BA |
Pravda, rozmyslal som relativne k poziadavke.
_________________ Desktop: CPU AMD R7 1700x @ 3.85GHz | Cooling be quiet! Dark Rock Pro 4 | MB ASRock X470 Taichi Ult. | RAM 4x8GB DDR4 G-SKILL TridentZ RGB 3000 CL16-16-16-36 | VGA Powercolor VEGA56 + Raijintek Morpheus II | SSD Crucial MX300 525GB | HDD Seagate Ironwolf 3TB 5900rpm | PSU CORSAIR RM750X | MONITOR AOC Q3279VWFD8 | MOUSE HyperX Pulsefire FPS + Razer eXactMat | HyperX Alloy FPS Brown | HyperX Cloud | ARCH x64 & Notebook: DELL inspiron 7537 i7 4500U, 16GB RAM, nv750, FHD IPS,Crucial M4 128GB | ARCH x64 & Surface Go 8/128 & Mobil: LG v40 ThinQ (2018) & SBC: Raspberry pi 0 | 3B+ & Headphones: Senheiser HD58X | AKG K551 + detachable cable mod | Linsoul TIN T2 | KZ SZN |
|
Registrovaný: 07.08.06 Prihlásený: 18.11.21 Príspevky: 947 Témy: 268 | 268 Bydlisko: Levice |
som to vyriesil ajaxom tak, ze kazda moznost po kliknuti posiela len cislo 1,2 alebo 3. A potom to v php kontrolujem ci bolo poslane 1,2 alebo 3 a zaroven potom to porovnam v dtb, ci to sedi s ID.
Cize uzivatel nema co prepisat... moze akurat prepisat cislo 1 2 3 na xx, ale potom sa neudeje nic...
|
|
Stránka: 1 z 1
| [ Príspevkov: 7 ] | |
|