2015-09-21 3 views
3

Мы разрабатываем услугу REST, но у нас уже есть инфраструктура для управления пользователями. Но мы хотим использовать механизм аутентификации и авторизации Loopback. Требование заключается вLoopback - Внедрение пользовательской аутентификации

  • Добавить удаленный метод и получить учетные данные пользователя
  • вручную проверить учетные данные через хранимые процедуры вызова
  • Сформировать маркер доступа через Loopback
  • Забегая вперед использовать Loopback механизмы авторизации, такие как роли в заявке

Должен ли я внедрять пользовательский поставщик услуг входа, используя Loopback's third party login support? Я не мог найти очень хороший ресурс в этой области. Любые указатели будут высоко оценены.

ответ

0

Моего пример с использованием стартового скрипта в экспрессе, но вы могли бы легко изменить это в удаленный метод.

module.exports = function(app) { 
    //get User model from the express app 
    var UserModel = app.models.User; 

    app.post('/login', function(req, res) { 

     console.log(req.body); 
     //parse user credentials from request body 
     const userCredentials = { 
      "username": req.body.username, 
      "password": req.body.password 
     } 

     UserModel.findOne({ 
      "where": { 
       "username": userCredentials.username 
      } 
     }, function(err, user) { 

      // Custom Login - Put the stored procedure call here 

      if (err) { 
       //custom logger 
       console.error(err); 
       res.status(401).json({ 
        "error": "login failed" 
       }); 
       return; 
      } 

      // Create the accesstoken and return the Token 
      user.createAccessToken(5000, function(err, token) { 
       console.log(token) 
       res.json({ 
        "token": result.id, 
        "ttl": result.ttl 
       }); 
      }) 
     }) 
    }); 
} 

Теперь вы можете использовать этот механизм авторизации Token for Loopbacks.

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