Я бы пошел на before remote
хук:
Project.beforeRemote( 'find', function( ctx, next) {
// here you can modify your query by adding a role based filter to your query
next();
});
Или даже лучше access
операционный хук:
Project.observe('access', function( ctx, next) {
// here you can modify your query by adding a role based filter to your query
next();
});
Там вы можете запустить дополнительные запросы, чтобы проверить, является ли данныйпользователь имеет доступ к данному экземпляру проекта.