2017-02-15 4 views
0

У меня есть приложение с Feathers.js. Мой сайт имеет маршруты, определенные следующим образом:Аутентификация маршрутов в Feathers.js

app.get('/login', function(req, res) { 
    res.render('views/login.html', {});    
});  

app.get('/about', function(req, res) { 
    res.render('views/about.html', {});    
});  

app.get('/contact', function(req, res) { 
    res.render('views/contact.html', {});    
});  

app.get('/', function(req, res) { 
    res.render('views/index.html', {});    
});  

Мне нужно, чтобы эти четыре маршрута были доступны для пользователей, не прошедших проверку подлинности. Тем не менее, у меня есть следующие маршруты:

app.get('/dashboard', function(req, res) { 
    res.render('views/dashboard/index.html', {});    
});  

app.get('/dashboard/report', function(req, res) { 
    res.render('views/dashboard/report.html', {});    
});  

app.get('/registered', function(req, res) { 
    res.render('views/registered.html', {});    
});  

Эти три маршрута требуют, чтобы пользователь проверку подлинности с мой сайт через Google Auth. Мой вопрос заключается в том, как разрешить анонимным пользователям некоторые виды на моем сайте, но для чего требуется аутентификация в других? Я просто не вижу его нигде в authentication docs. Кажется, что это все или ничего. Я что-то упускаю?

ответ

0

Ресурсы/Услуги по умолчанию не заблокированы. Для маршрутов /dashboard, которые необходимо заблокировать, вам нужно будет добавить авторизацию before крючков.

const auth = require('feathers-authentication').hooks; 

exports.before = { 
    all: [  
    auth.verifyToken(), 
    auth.populateUser(), 
    auth.restrictToAuthenticated() 
    ], 
    find: [], 
    get: [], 
    create: [], 
    update: [], 
    patch: [], 
    remove: [] 
}; 

См: https://docs.feathersjs.com/getting-started/user-management.html для примера приложение

Я рекомендовал бы читать их страницу на Authorization, а также.

0

Вы изучаете подлинность, но то, о чем вы просите, это авторизация. Feathers docs на нем, похоже, указывают, что они защищаются на основе сервиса.

Если это не сработает для вас, вы можете использовать промежуточное программное обеспечение Express для защиты определенных маршрутов.

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

  • Нет связанных вопросов^_^