2013-12-17 3 views
3

Я хотел бы знать, есть ли способ узнать в APEX, когда конкретный пользователь входит в систему напрямую или через функцию «Вход в систему» ​​из списка пользователей организации. Класс UserInfo, похоже, не предоставляет каких-либо методов для этой цели, и мне нужно знать это в моем коде вершины.Salesforce UserInfo тип сеанса в APEX

заранее спасибо

+0

В чем ваше дело? Зачем вам нужно знать такую ​​информацию? –

+0

Я разрабатываю стороннее приложение, используемое в SFDC, и это приложение вызывает наши веб-службы в контексте текущего пользователя. Я хочу, чтобы администратор системы (или тот, кому разрешено входить в систему как кто-то другой), вызывал наш веб-сервис при регистрации таким образом. Это проблема безопасности для нашего веб-сервиса. – PeterB

+0

У Sysadmin может быть законная необходимость протестировать его, отладить проблемы с подключением по запросу пользователя. «Войти как» записи записываются в Setup Audit Trail, но я сомневаюсь, что вы можете получить к нему доступ ... Запросить поддержку SF для помощи? Возможно, вам не следует хранить учетные данные, а затем заставлять пользователей проходить аутентификацию против вашей службы каждый раз. – eyescream

ответ

0

Насколько я знаю, что это не возможно с отделом продаж.

1

Что-то отслеживает, что ваш сеанс ранее принадлежал другому пользователю, так что сообщение «Записано как XYZ ([email protected])» может отображаться в пользовательском интерфейсе Salesforce.

Я подозреваю, что это было бы основано на печенье. Если это так, вы можете попытаться изолировать его, отслеживая изменения файлов cookie при входе в систему как другой пользователь. Если вы можете его найти, вы можете проверить наличие этого файла cookie в Apex, используя

Cookie counter = ApexPages.currentPage().getCookies().get('loginAsCookieHere'); 
+0

Спасибо, я попробую. – PeterB

Смежные вопросы