Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
Zitat
The topic of security is a tough one because arguments can be made either way for 2 vs. 3-tiers. In my experience, the 3-tier architecture has the potential for better security, but if great care isn’t taken during development it frequently ends up less secure. With a 2-tier approach, the application authenticates to and communicates directly to the database, which simplifies the attack surface area and is one less boundary to be concerned about. Depending on the details of the application server, there could be, for example, many complex REST APIs that could each have their own attack weaknesses. This one topic could be covered in a book, so I’m simply calling this one in favor of 2-tier even though direct access to the data sounds unsafe.
Treue Seele
Wohnort: Düsseldorf
Beruf: Manager of Developer Relations at Hazelcast, Inc. & Consultant for Scaleable Gameserver Systems
Treue Seele
Wohnort: Düsseldorf
Beruf: Manager of Developer Relations at Hazelcast, Inc. & Consultant for Scaleable Gameserver Systems
Dazu reicht dann allerdings kein Apache + PHP mehr, sondern du baust einen kompletten Java-Server, der auch nur bedingt über HTTP kommuniziert. Alles schon etwas high-leveliger wenn er sich gerade noch fragt wie sein Client in die DB schreibt Aber ja, generell wäre es genau der richtige Weg.So ist es.
Clients schreiben niemals selbst in die DB, sondern machen das über deine Anwendungslogik.
Mit Hibernate kannst du die Datenbankanbindung realisieren (simples OR Mapping).
Das sieht dann so aus:
Dein Client hat ein DTO bekommen, dass er verändert und an den Server zurückschickt.
Der Server validiert die Daten und schaut ob der angemeldete Nutzer die Rechte dafür hat.
Das DTO wird z.B. mittels Hibernate persistiert (OR-Mapping)
Administrator
Werbeanzeige