compatibility: userauth("", options) and improve ctx.session not exists case