Making user auth configurable and modular