Possess character, server side? client side?

use the RPC call( event set to RunOnServer in replication. )
check wiki on blueprint respawn, it also has possession part, should be the same principle for you.