Я могу ошибаться, но я очень сомневаюсь, что вы могли бы получить идентификатор пользователя из маркера доступа (в основном, обратный маркер) только расчетным путем, так как это crytographically generated маркер.
Если ваша цель ограничить доступ к определенному ресурсу определенному пользователю, необходимо установить связь между моделью и userModel, например UserModel
hasMany
ForumPosts
Таким образом, вы можете знать, является ли конкретный ForumPosts
экземпляр принадлежит определенному экземпляру UserModel
(= конкретный пользователь).
Затем вы устанавливаете контроль доступа:
- отрицает все для всех
- GRANT $ владельца специфического метода
ForumPosts
Вы можете назвать отдых конечной точку, как DELETE api/UserModel/{userId}/ForumPosts/{modelId}?access_token=UksV2aTVyKfUAzBm8cQKRO9NkCIKUHZCXXr4gZNrCj9zXBiUX8kXVE97RDQl1PcC
Однако этого недостаточно. аутентифицированный пользователь с ID = 1 может вызывать конечную точку с id = 5, и запрос будет проходить.
Таким образом, вам необходимо убедиться, что userId, предоставленный в конечной точке, соответствует токену JSON. Лучший способ - использовать operation hook, например before delete
, и проверить там, что генерация токена из предоставленного конечной точки пользователя соответствует совпадающему маркеру.
Надеется, что это помогает
'идентификатор' атрибуту совместно в ответ авторизации ("ID": "UksV2aTVyKfUAzBm8cQKRO9NkCIKUHZCXXr4gZNrCj9zXBiUX8kXVE97RDQl1PcC") на самом деле 'идентификатор' в маркере доступ объекта. Отношения встроены в петлевую структуру. Я чувствую, что только один токен должен быть разделен в ответе на входе, и идентификатор пользователя может быть извлечен из объекта accessToken (если API 'GET/accessTokens/{id}' получает права доступа $ Owner) –
'id 'возвращается после POST логин - это, несомненно, сам токен доступа. См. Здесь в конце, если вы не уверены, https://docs.strongloop.com/display/public/LB/Introduction+to+User+model+authentication – Overdrivr
Однако вы можете получить userId из API AccessToken REST, однако , потому что существует отношение 'accessToken'' принадлежит To'' User'defined здесь https://github.com/strongloop/loopback/blob/master/common/models/access-token.json Таким образом, это возможно, m не уверен, какой идентификатор вы должны использовать, сам токен доступа или его идентификатор внутри базы данных. Извините, если я не могу помочь вам дальше, но мои знания о петлевых тестах заканчиваются здесь – Overdrivr