I had a similar issue and noticed I had my Editor set to Net Mode: Play As Standalone. Change this to Play As Listen Server and see if that fixes your issue.
I believe when you use Standalone all of the clients are simulated on the server which makes HasAuthority() always return true.