問題タブ [express-gateway]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
296 参照

jwt-auth - Express Gateway - リモート認証サーバーの JWT 検証ポリシー checkCredentialExistence

次の設定で API Gateway ミドルウェアとして Express Gateway を使用しています。

  1. Express ゲートウェイはゲートウェイとしてのみ機能します。
  2. 私の認証(ユーザーデータベース)サーバーは別の場所にあり、jwtを取得するためにすべてのログイン要求を認証サーバーにルーティングしています。
  3. 複数のリソース サーバーがエクスプレス ゲートウェイの背後にあります。リクエストを承認または認証しません。すべての受信リクエストは認証済みとして扱われます

JWTを検証し、正しいJWTを持つリクエストのみを渡すようにEG構成をセットアップしました。checkCredentialExistenceゲートウェイ自体の承認のためです。

問題

ユーザーがログアウト要求を送信すると、認証サーバーからアクセス トークンとリフレッシュ トークンの両方が取り消されます。しかし、取り消されたJWT トークンはまだ有効なトークンです。そして、ゲートウェイは取り消されたjwtで着信リクエストを渡し続けます。

Express ゲートウェイで JWT がまだ有効かどうかをリモート API で確認する方法はありますか?

0 投票する
1 に答える
516 参照

express-gateway - Express Gateway: Request-Transformer ポリシーでパラメーターを追加しますが、条件付きです

私のノード システムには、Express Gateway を介してアクセスできる API を公開しているサーバーがあります。req.body私のAPIを使用しているアプリに応じて、にいくつかのパラメータを強制的に追加したいと思います。

これを行うために、私はパーソナライズされscopeた価値を使用します。たとえば、API を使用して App1 と App2 (資格情報を含む) があります。したがって、たとえば credentialsapp1では、 App1 資格情報とapp2App2 資格情報のスコープにスコープを追加します。

gateway.config.ymlファイルに次のように記述します。

しかし、私はこのエラーが発生します:

============

実際にJSON変換を見てみると、 のactionwas not 属性でしrequest-transformerた。インデントが悪い。