This is how I personally would approach it.
Pseudocode:
When player is overlapping powerup and player is pressing pickup button (optional) {
Then get reference to who picked up the powerup {
OnServer: Check if this is valid action by player
OnServer: Add powerup effect to player
OnServer: Remove powerup from world.
}
}