0

ユーザーがエンドポイントに送信し、このエンドポイントで jwt が生成される認証システムを探しています。これを実装する方法がわかりません。クライアント側のアプリケーションは電子メール アドレスや保存された情報を使用しません。実際にはdApp。提供されたシードフレーズとパスワードから値を計算するエンドポイントが必要です.これらの値の処理がうまくいけば(誰かがエンドポイントにジャンクを送らない限り、ほとんどの場合うまくいきます)、jwtが発行されます..これまでのところフェザーcliのすぐに使用できる機能は、ローカル戦略を使用する必要があり、電子メールアドレスが必要であることを意味します.これに関するデモが見つかりません..誰かポインタを持っていますか? これまでのところ、私の認証はかなりデフォルトです

const authentication = require('@feathersjs/authentication');
const jwt = require('@feathersjs/authentication-jwt');
const local = require('@feathersjs/authentication-local');


module.exports = function (app) {
  const config = app.get('authentication');

  // Set up authentication with the secret
  app.configure(authentication(config));
  app.configure(jwt());
  app.configure(local());

  // The `authentication` service is used to create a JWT.
  // The before `create` hook registers strategies that can be used
  // to create a new valid JWT (e.g. local or oauth2)
  app.service('authentication').hooks({
    before: {
      create: [
        authentication.hooks.authenticate(config.strategies)
      ],
      remove: [
        authentication.hooks.authenticate('jwt')
      ]
    }
  });
};

そして、私のサービスは次のとおりです。

// Initializes the `aerAuth` service on path `/userauthendpoint`
const createService = require('feathers-memory');
const hooks = require('./userauthendpoint.hooks');

module.exports = function (app) {

  const paginate = app.get('paginate');

  const options = {
    name: 'userauthendpoint',
    paginate
  };

  // Initialize our service with any options it requires
  app.use('/userauthendpoint', createService(options) );

  // Get our initialized service so that we can register hooks and filters
  const service = app.service('userauthendpoint');

  service.hooks(hooks);
};

私はフェザーには比較的慣れていませんが、認証システムを構築するのは初めてです(PHPで)

4

1 に答える 1