• Модуль: webservice
  • Путь к файлу: ~/bitrix/modules/webservice/lib/stssync.php
  • Класс: BitrixWebServiceStsSync
  • Вызов: StsSync::checkAuth
static function checkAuth($userId, $ap)
{
	global $USER;

	if(Loader::includeModule('intranet'))
	{
		$appPassword = ApplicationPasswordTable::findPassword($userId, $ap);
		if($appPassword !== false)
		{
			if($appPassword["APPLICATION_ID"] === OutlookApplication::ID)
			{
				$appManager = ApplicationManager::getInstance();
				if($appManager->checkScope($appPassword["APPLICATION_ID"]) === true)
				{
					ApplicationPasswordTable::update($appPassword["ID"], array(
						'DATE_LOGIN' => new DateTime(),
						'LAST_IP' => Context::getCurrent()->getRequest()->getRemoteAddress(),
					));

					setSessionExpired(true);
					return $USER->Authorize($userId);
				}
			}
		}
	}

	return false;
}