I don't know what "$this->parent" is. You can use "$this->requireLogin()" You should be extending your plugin's parent controller that extends AppController and implements the preAction method. The dispatcher throws an exception when attempting to load controllers that do not implement the preAction.