Rework the authentication