問題タブ [json-web-token]
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.
javascript - Javascript で JWT を作成する方法
私はJWTを初めて使用します.javascriptで単純なJWTを作成し、(web-apiを使用して)コントローラに送信し、SQLデータベースでチェックしようとしています. ネットをグーグルで検索すると、次のような例が見つかりました: //HEAD
//請求
//そして署名。
Javascript で最初の JWT を作成したいのですが、何かが足りないと感じています..完全な構造は何ですか? 頭だけから始めるのは論理的ではないようです(上記の例のように..)完全な例または説明、または完全な例へのリンクが必要です。ありがとうございました
node.js - jsonwebtoken の有効期限はありません
node.js に jsonwebtoken パッケージを使用しています。
そのようなトークンを作成します:
そのように確認します:
ただし、トークンが期限切れになることはありません(「リクエスト」の間に数分待ちました)。
node.js - JWT でトークンを取り消し/無効化する
トークン処理用のノードで JWT (jsonwebtoken) パッケージを使用しています。
トークンを「ログアウト」/取り消し/無効にする方法はありますか?
node.js - Ember と Node/Express および json Web トークンを使用した RESTful 認証で、ユーザーのメールアドレスを確認するにはどうすればよいですか?
私のワークフローは次のとおりです。
- 新しいユーザーのサインアップに対する Ember のアクションは、Express にユーザー データを送信することです。
- 次に、Express は Web トークンを作成し、コンテンツを暗号化し、Nodemailer で送信する電子メールにリンクを挿入します。
- メールは正常に送信されました。
- ユーザーは自分の電子メールに移動し、リンクをクリックします。
- リンクをクリックすると、Express はクエリ パラメータからトークンを取得し、トークンを復号化してデコードし、新しいユーザーを作成します。
上記のすべては正常に機能しますが、ここで行き詰まっています。ユーザーが Ember フロントエンドにリダイレクトされ、自動的にログインされるようにしたいと思います。これは私が行き詰まっているビットです。サーバーコードは次のとおりです。
正常にリダイレクトすることはできますが、ember コードで json データをキャプチャすることができず、特定のシナリオでログイン アクションを呼び出すことができる場所や方法がわかりません。
私のアプローチが間違っているかもしれないと感じていますか?電子メールの確認は一般的なものだからです。また、ユーザーにフォーム情報を複数回入力させる必要はありません。
javascript - JsonWebToken 認証ヘッダーを使用して画像を取得する
画像をアップロードするために有効な json Web トークンが必要な API があります。
たとえば、写真をアップロードするために (この URL への Authorization ヘッダーを使用して) 投稿を作成します。
http://localhost:3000/api/account/events/54f9b55254fb9f32306a26dd/sponsors/54fdb4212f67981b1f6a8665/logo
画像を取得したい場合は、同じ URL に対して GET リクエストを実行しますが、画像を取得するときに Authorization ヘッダーを送信できないため、JWT を使用する場合は機能しません。
解決策はありますか?ユーザーが承認するまで、画像を公開することはできません。
authentication - JWTSecurityTokenHandler.ValidateToken() が実際に有効なのはいつですか?
署名に基づいて JWT トークンが有効である場合に true を返すトークン検証メソッドを作成しようとしています。トークンのすべてを本当に検証する必要はないと思いますが、ValidateToken() を呼び出した後にトークンが有効であることを実際に意味するものは何ですか? 原則の存在?外部参照トークンに特定の値が含まれていますか? このメソッドからいつ true を返すかわかりません。
asp.net-web-api - JwtAuthForWebAPI の SignatureVerificationFailedException
JwtAuthForWebAPI nuget プロジェクトを接続しましたが、生成されたトークンを検証できません。最終的に500エラーが発生します。トークン生成と JwtAuthenticationMessageHandler の構成時に、まったく同じキー値を使用しています。
これは、トークンを生成するコードです。
これは、認証ハンドラーを登録するコードです。
これは私が得るエラーです:
これは JSON トークンの例です。
興味深いことに、 http://jwt.ioを使用して自分のキーでトークンを検証できます。System.Identity JWTライブラリが生成しているものとは異なるものを見ているJwtAuthForWebAPIライブラリと関係があるのではないかと思いますか?
authentication - tymondesigns/jwt-auth でトークン更新を使用するには?
Laravel5の場合。
「トークンの有効期限が切れています」というヒントを受け取ったときに、更新して新しいトークンを取得するにはどうすればよいですか?
使用してきJWTAuth::refresh($oldToken)
ましたが、うまくいきません。
最善の方法は何ですか?
session - クライアント セッションがあるときに JWT が必要なのはなぜですか?
JWT は、クライアントのクレームに関する署名付きの情報を格納し、Authorization HTTP ヘッダーを介してサーバーに渡されるステートレス トークンであることを理解しています。
私の質問は、クライアント セッション ( https://github.com/mozilla/node-client-sessions )が既にあるのに、なぜ JWT が必要なのですか? クライアント セッションは、概念的には同じです。それらは、署名された情報を含む Cookie であり、検証されると、Cookie が調整されていないことを意味します。また、クライアント セッションは Cookie に保存され、Cookie HTTP ヘッダーを介して渡されます。言葉が違うだけで同じことです。私が間違っている?
では、なぜ JWT が存在するのでしょうか。認証トークンの動作方法を標準化することがポイントであることは理解できましたが、セッション ID ベースの標準がなくてもうまくいきました (各実装は独自の方法で処理を行いました)。また、JWT が Cookie を転送手段として使用しないのはなぜですか。Cookie を使用すると、リクエストごとに正しいヘッダーを明示的に送信する必要がなくなります (Ajax リクエストが簡素化されます)。
何か不足していますか?