Refactoring: third-party authentication.