Bitrix-D7
23.9
Загрузка...
Поиск...
Не найдено
authorization.php
1
<?php
2
3
namespace
Bitrix\Main\Service\MicroService\Filter
;
4
5
use
Bitrix\Main\Context
;
6
use
Bitrix\Main\Error
;
7
use
Bitrix\Main\Event
;
8
9
use
Bitrix\Main\EventResult
;
10
use
Bitrix\Main\Service\MicroService\Client
;
11
12
class
Authorization
extends
\Bitrix\Main\Engine\ActionFilter\Base
13
{
14
public
function
onBeforeAction
(
Event
$event)
15
{
16
$request =
Context::getCurrent
()->getRequest()->toArray();
17
$serverSignature = $request[
"BX_HASH"
];
18
unset($request[
"BX_HASH"
]);
19
$signature =
Client::signRequest
(
20
$request,
21
Client::getPortalType
() ===
Client::TYPE_BITRIX24
?
Client::getLicenseCode
() :
""
22
);
23
24
if
(!$serverSignature || $serverSignature !== $signature)
25
{
26
$this->errorCollection[] =
new
Error
(
"Request verification failed"
);
27
return
new
EventResult
(EventResult::ERROR,
null
,
null
, $this);
28
}
29
30
return
null
;
31
}
32
}
Bitrix\Main\Context\getCurrent
static getCurrent()
Definition
context.php:241
Bitrix\Main\Engine\ActionFilter\Base
Definition
base.php:15
Bitrix\Main\Error
Definition
error.php:14
Bitrix\Main\Event
Definition
event.php:5
Bitrix\Main\EventResult
Definition
eventresult.php:5
Bitrix\Main\Service\MicroService\Client
Definition
client.php:10
Bitrix\Main\Service\MicroService\Client\getPortalType
static getPortalType()
Definition
client.php:14
Bitrix\Main\Service\MicroService\Client\TYPE_BITRIX24
const TYPE_BITRIX24
Definition
client.php:11
Bitrix\Main\Service\MicroService\Client\signRequest
static signRequest(array $parameters, string $suffix="")
Definition
client.php:63
Bitrix\Main\Service\MicroService\Client\getLicenseCode
static getLicenseCode()
Definition
client.php:31
Bitrix\Main\Service\MicroService\Filter\Authorization
Definition
authorization.php:13
Bitrix\Main\Service\MicroService\Filter\Authorization\onBeforeAction
onBeforeAction(Event $event)
Definition
authorization.php:14
Bitrix\Main\Context
Definition
culture.php:9
Bitrix\Main\Service\MicroService\Filter
Definition
authorization.php:3
modules
main
lib
service
microservice
filter
authorization.php
Создано системой
1.10.0