async fn do_auth<T>( req: &mut Request<T>, user_provider: Option<UserProviderRef>, ) -> Result<(), Status>