Существует множество способов, которыми клиентское приложение может заполнить свое понимание свойств идентификатора пользователя LMS. Следует также помнить, что платформа D2LWS по существу оптимизирована для оперативного доверия уровня обслуживания к сервису, в то время как новая платформа Valence оптимизирована для оперативного доверия пользователей к сервису - это означает, что все вызовы Valence должны выполняться в контекст некоторая действительная аутентифицированная учетная запись пользователя LMS (в том смысле, что для совершения вызовов клиентское приложение должно сначала запросить получение пары ID пользователя/ключа для аутентифицированного пользователя).
Если ваша служба обслуживания клиентов всегда будет сослана или запрошена LMS с запуском LTI, то у вас будет достаточно мощности с этого запуска, чтобы начать (см. Это detailed topic on combining Valence calls with LTI around our Remote Plugin service). Должен существовать настоящий пользователь LMS, который каким-то образом инициировал запуск, начиная с сеанса LMS в режиме входа в систему. Поэтому после запуска LTI ваша служба может повернуть направо и позвонить LMS, чтобы запросить токены пользователя для текущего пользователя auth'd, и этот пользователь должен почти наверняка стать пользователем запуска LTI.
Как правило, для служб, с которыми можно связаться с помощью запуска LTI, а затем для использования Valence, мы рекомендуем вам установить контекст пользователя сразу после запуска и сделать whoami call: это может служить нескольким целям - оно может установить, что у вас есть надежный набор пользовательских токенов, которые вы можете использовать, чтобы делать вызовы Valence от имени запускающего пользователя, и вы можете использовать информацию, полученную в WhoAmIUser data structure, чтобы помочь заполнить контекст вашей идентификации пользователя.
Для конкретных целей структура данных WhoAmIUser содержит имя, фамилию, уникальное имя (имя пользователя) и идентификатор профиля LMS для запускающего пользователя, а также идентификатор пользователя LMS (Identifier
), который вы может использоваться в контексте других вызовов Valence, если вам нужно. Тем не менее, вы также должны серьезно подумать о переходе на подход «от пользователя к сервису»: когда все вызовы происходят в контексте конкретного пользователя, вы можете обнаружить, что ваш лучший маршрут использует все «мои» маршруты для заполнения пользовательский опыт, который вы представляете пользователю - имейте в виду, что учетные данные пользователя, которые вы используете с вашими вызовами Valence API, ограничивают доступ к функциям и данным точно так же, как этот пользователь будет ограничен в ходе его или ее нормальных взаимодействий с LMS через его веб-интерфейс.