Improvements, Command execution, Permissions, Teleportation#1
Improvements, Command execution, Permissions, Teleportation#1Reiss-Cashmore wants to merge 8 commits into
Conversation
… management and command execution
…e, and their respective entries to structure permissions data. Updated HttpRequestRouter to include new server permissions endpoints for managing groups and user permissions. PlayerExtendedHandler modified to utilize the new permissions structure for granting and revoking permissions, including cross-world teleportation logic.
…for HTTP routing and mods folder checking
…ler for password verification
… async command dispatching and enhanced logging
… ensuring proper player movement between worlds
leonardoxr
left a comment
There was a problem hiding this comment.
Thanks for opening this. There are useful ideas here, but I do not think this should be merged as-is.
Blocking concerns:
AuthHandlerlogs both the submitted secret and stored password hash on failed auth. That is a hard security blocker and should be removed before merge.AuthHandlernow importsorg.mindrot.jbcrypt.BCrypt, butbuild.gradledoes not add a jBCrypt dependency. Unless the server jar happens to bundle it, this will not compile.- The PR is not currently mergeable against
master; it conflicts inApiResponses.java,HttpRequestRouter.java,VersionHandler.java, andApiPermissions.java. PermissionsHandlertreats a failed/corruptpermissions.jsonread as empty data. A later write can then overwrite the real permissions file, which risks destructive permission loss.AdminHandler.executeCommandUncheckedreturnssuccess: truefor command exceptions/timeouts, so clients can receive a successful response even when command execution failed.PlayerExtendedHandlerreturns teleport success immediately for asynchronous cross-world teleports without waiting for or propagating failure.
I was not able to fully verify compilation in my local environment because Java and the expected local HytaleServer.jar were unavailable, but the source-level issues above are enough to block the merge. I would recommend rebasing this onto current master, removing the credential logging immediately, adding/confirming dependencies, and splitting the permissions, auth, command execution, and teleport changes into smaller PRs if possible.
|
I have also added you as a contributor, if you'd like to be one. It's been a long time since I tried this project, it's probably outdated. I lost the interest for it at the time, but you're welcome to work on it. I will assist in what I can |
Really like the start to this, I think it's a good base for a Hytale REST API. I've been working with it for a couple of weeks and thought I would open a PR showing some of my additions. If you want me to open separate PRs segmented by feature I can do that but thought I would just get this open to discuss.
Details: