Would like all the possible ways to authenticate and authorize. What would be the best way for custom authenticate?