MTADEV Tudástár
Használható MTA:SA fejlesztői dokumentáció
Gyakorlati leírások Lua, resource struktúra, SQL, biztonság, optimalizálás, moderáció és Discord/web összekötés témákban. Nem csak szöveg: ellenőrzőlisták és másolható példák is vannak.
9 cikk
9 kategória
gyakorlati példák
SQL biztonság és adatbázis tippek
SQL-es resource feltöltésnél különösen fontos, hogy a moderátor és a szerver tulajdonosa lássa, pontosan mit kell importálni.
Alapelvek
- Ne fűzz össze nyers SQL stringet felhasználói adattal.
- Használj előkészített lekérdezést, ha a használt MySQL wrapper támogatja.
- Legyen külön `install.sql` fájl.
- Legyen külön `update_1.1.sql`, ha verziófrissítéshez új oszlop kell.
- Jelszót csak hash-elve tárolj.
SQL import előtt ellenőrizd
- Tartalmaz-e `DROP DATABASE` vagy `DROP TABLE` sort?
- Ír-e át meglévő admin/user táblát?
- Van-e benne fix admin fiók vagy gyanús jelszó?
- Van-e index a gyakran keresett oszlopokon?
Példa tábla
CREATE TABLE IF NOT EXISTS player_vehicles (
id INT AUTO_INCREMENT PRIMARY KEY,
owner_id INT NOT NULL,
model INT NOT NULL,
plate VARCHAR(16) NOT NULL,
position_json TEXT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
INDEX idx_owner (owner_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;Feltöltéshez kötelező leírás
- Melyik adatbázisba kell importálni?
- Kell-e meglévő accounts/users tábla?
- Milyen resource nevet vár a kód?
- Milyen config fájlban kell megadni az SQL kapcsolatot?