Как правильно добавить стратегию пользовательской аутентификации в приложение Feathers? - PullRequest
2 голосов
/ 28 января 2020

Приложение My Feathers должно иметь две стратегии аутентификации JWT. Для услуги users мне нужно иметь, например, all: [authenticate('carrier')] вместо all: [authenticate('jwt')] в моих хуках. Для остальных служб необходимо authenticate['jwt'].

. Для этого я зарегистрировал пользовательскую стратегию аутентификации. js под названием CarrierStrategy следующим образом:

module.exports = function auth(app) {
  const authentication = new AuthenticationService(app)

  // register all of the strategies with authentication service
  authentication.register('carrier', new CarrierStrategy())
  authentication.register('jwt', new JWTStrategy())

  // register the authentication service with your app
  app.use('/api/authentication', authentication)
}

В config / default. json я также зарегистрировал эту стратегию следующим образом:

authStrategies: ["carrier", "jwt"]

CarrierStrategy должна немного по-другому обрабатывать входящий заголовок авторизации с некоторыми пользовательскими логами c.

Когда я использую Postman для отправки запросов на эту услугу, то есть localhost:3030/users с токеном JWT в заголовке, я получаю следующую ошибку:

Invalid authentication information (strategy not allowed in authStrategies)'

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

...