Your IP : 52.15.174.103


Current Path : /var/www/axolotl/data/www/arhangelsk.axolotls.ru/a537b/
Upload File :
Current File : /var/www/axolotl/data/www/arhangelsk.axolotls.ru/a537b/engine.tar

filter/authorization.php000066400000001416147736372210011462 0ustar00<?php

namespace Bitrix\Ml\Engine\Filter;

use Bitrix\Main\Context;
use Bitrix\Main\Error;
use Bitrix\Main\Event;

use Bitrix\Main\EventResult;
use Bitrix\Ml\Client;

class Authorization extends \Bitrix\Main\Engine\ActionFilter\Base
{
	public function onBeforeAction(Event $event)
	{
		$request = Context::getCurrent()->getRequest()->toArray();
		$serverSignature = $request["BX_HASH"];
		unset($request["BX_HASH"]);
		$signature = Client::signRequest(
			$request,
			Client::getPortalType() === Client::TYPE_BITRIX24 ? Client::getLicenseCode() : ""
		);

		if(!$serverSignature || $serverSignature !== $signature)
		{
			$this->errorCollection[] = new Error("Request verification failed");
			return new EventResult(EventResult::ERROR, null, null, $this);
		}

		return null;
	}
}