2015-03-19 2 views
0

Я создаю веб-приложение для управления событиями для своих клиентов на основе платформы StrongLoop API, поэтому мне нужно ограничить доступ CRUD к данным для текущего пользователя (клиента).Контроль доступа в LoopBack

Я пошел по этим учебным пособиям https://github.com/strongloop/loopback-faq-user-management, https://github.com/strongloop/loopback-example-access-control, чтобы успешно войти в систему и выйти из системы, а теперь нужно реализовать возврат правильных данных на клиенте AngularJS.

Я имею установку отношение на моей модели «событий» следующим образом:

"relations": { 
    "user": { 
    "type": "belongsTo", 
    "model": "User", 
    "foreignKey": "ownerId" 
    } 
} 

, а также на встроенном в модели пользователя:

"relations": { 
    "events": { 
    "type": "hasMany", 
    "model": "event", 
    "foreignKey": "ownerId" 
    } 
} 

Не знаете, где/как определить токен доступа после входа в систему для вызова API. Нужно ли также применять фильтр на $scope.events = Event.find(); для извлечения только записей, где ownerID: <currentUserId> или должны ли ACL достичь этого для меня?

Любая помощь очень ценится.

ответ

0

1) Доступ к токену автоматически сохраняется в localStorage/sessionStorage и внутренним угловым sdk. Поэтому он прикрепляется к заголовку authorization при каждом запросе API.

2) Да, вы должны применять фильтр, потому что ACL разрешает или запрещает доступ к удаленным методам. Кстати, другим способом запроса пользовательских событий является

User.events({id: currentUserId})

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