The GM should always roll when knowing the result of the roll would give the player information he or she should not have. For example, trap checks. This is described in the core rules:
Core Rules wrote:Remove Traps is generally rolled twice: first to detect the trap, and second to disarm it. The GM will make these rolls as the player won't know for sure if the character is successful or not until someone actually tests the trapped (or suspected) area.
Core Rules wrote:Move Silently, like Remove Traps, is always rolled by the GM. The Thief will usually believe he or she is moving silently regardless of the die roll, but those he or she is trying to avoid will hear the Thief if the roll is failed.
And so on.
But let me make another few comments regarding your post:
Stan Shinn wrote:As this isn't defined (is it?), it sometimes becomes contentious.
Players must understand that the GM's rulings are always right. It is critical, of course, that the GM try to always BE right, so as to inspire confidence in his or her rulings. But ultimately, if the players cannot accept the GM's rulings with little or no argument, they shouldn't be playing the game.
Stan Shinn wrote:For example, does the player roll a saving throw (in public), or the GM (in private)?
The player should always be allowed to make rolls for his or her character, except only when the player will receive too much information from the roll itself. So for instance, a player character walks into a trapped area, and you as the GM know that the trap (whatever it is)
will trigger when the area is entered. You tell the player to make the required saving throw, but not why; you don't reveal the results until after the roll is made (or failed). In some cases, this can have interesting results. For instance, let's say that the trapped area releases sleeping gas, and a thief is scouting it (separate from the party). If the thief's player blows his roll, you, the GM, turn away from him to the rest of the party,
without telling him what happened. He should not know if the character is dead, or asleep, or turned to stone, or whatever else his imagination might conjure, until the effect wears off or the other player characters find him.
Suspense is a beautiful thing.
Stan Shinn wrote:Similarly, when checking for traps, secret doors, etc., who should roll, the player (in public) or the GM (in private).
Well, as I've just pointed out, trap checks are always the province of the GM. I see that the core rules don't specify who rolls for secret door checks, but given what I've just explained, it should be easy to figure out... if the player rolls a 1, and you say they find no secret door, then they know there is no secret door there. The players should never be sure of this, so therefore the GM must make the roll.