Проще говоря, вам нужно знать, кто звонит. Если бы вы использовали петлевую аутентификацию по умолчанию, вы бы увидели, что в объекте req
есть свойство accessToken
, которое идентифицирует пользователя. Если вы хотите использовать JWT, вы можете использовать множество готовых модулей, например. loopback-jwt или loopback-jwt-advanced .
В общем, вам нужно применить промежуточное программное обеспечение , которое будет отвечать за авторизацию вашего пользователя (я настоятельно рекомендую вам ознакомиться с термином middleware
). Проще говоря, промежуточное ПО - это слой, через который проходят ваши запросы, и вы можете изменить его тело или отклонить запрос.
В абстрактных шагах, в вашем промежуточном программном обеспечении вам придется:
- получить токен из запроса
- проверить токен
- идентифицировать пользователя на основе токена
- создать петлевую сущность AccessToken для данного пользователя
- поместите токен в
req.accessToken
, так что теперь loopback будет знать, кто вы, и вы можете использовать ACL.
Так что это более или менее то, что делают эти расширения.