rework to eliminate the use of auth_checker