Exemplo n.º 1
0
    /**
     * Main execution method
     * 
     * @param \Framework\core\HttpRequest $request
     * @param \Framework\core\HttpResponse $response
     * @return Framework\Core
     */
    public function _before(&$request, &$response)
    {
        if (!$request->isCli()) {
            $previousIpAddress = $request->getPreviousIpAddress();
            $previousUserAgent = $request->getPreviousUserAgent();
            if ($previousIpAddress !== null && $previousIpAddress != $request->getIpAddress() && $previousUserAgent !== null && $previousUserAgent != $request->getUserAgent()) {
                $this->getComponent('session')->destroyAll();
                $this->getComponent('message')->set('It seems that your session has been stolen, we destroyed it for security reasons. 
						Check your environment security.', 'warning');
                $this->getResponse()->redirect($this->getConfig('siteUrl'), 301, true);
            }
        }
    }