- Модуль: rest
- Путь к файлу: ~/bitrix/modules/rest/classes/general/rest_util.php
- Класс: CRestUtil
- Вызов: CRestUtil::getAuth
static function getAuth($appId, $appSecret, $scope, $additionalParams, $user_id = 0)
{
global $USER;
if(CModule::IncludeModule('oauth'))
{
if(is_array($scope))
{
$scope = implode(',', $scope);
}
$oauth = new BitrixOAuthClientApplication();
$authParams = $oauth->getAuthorizeParamsInternal($appId, COAuthConstants::AUTH_RESPONSE_TYPE_AUTH_CODE, '', '', $scope, array(), $user_id > 0 ? $user_id : $USER->GetID());
if(is_array($authParams) && isset($authParams[COAuthConstants::AUTH_RESPONSE_TYPE_AUTH_CODE]))
{
$res = $oauth->grantAccessTokenInternal($appId, COAuthConstants::GRANT_TYPE_AUTH_CODE, '', $authParams[COAuthConstants::AUTH_RESPONSE_TYPE_AUTH_CODE], $scope, $appSecret, '', $additionalParams, $user_id > 0 ? $user_id : $USER->GetID());
return $res;
}
}
return false;
}