Refactor authorization strategies