整理接口，实现passport