implement User::Authentication service.