Additionally!
Using a Pre-Hook, to the Post Score Cloud Code Script, to validate incoming data. Doing the actual JoinTournament / PostTournament Score via Cloud Code Script, once again verifying data. Lastly, validating the results of the Cloud Code Script via Post-Hook, allows developer's to confirm that the incoming data results in the expected outgoing data.
If at any point validation fails, tag the user as a Cheater! If users are going through enough trouble to try and cheat, they must enjoy the apps experience. Instead of blocking the Cheater from using the app, ensure all Cheaters are playing against each other, via a Cheater leaderboards or any other means. This way the apps experience to Cheaters is unchanged, and only cheating against cheaters, but most importantly the rest of the user base does not get negatively impacted via a few rare users.
Any other ideas? Interesting Applications for Cheaters?