JSONウェブトークンのデバッグ方法
3739 ワード
クライアント側とサーバー側の両方の多くの現代的なWebアプリケーションは、優れたアプローチである認証のためのJSONウェブトークン(JWTS)を使用します.しかし、物事が動作しない場合は、それがなぜ仕事をトリッキーすることができます.
このポストは、あなたにJWTSで問題を理解して、修正するために、若干の戦術を与えることを目指します.あなたがちょうど始めているならば、チェックしてくださいdocumentation on working with JWTs and our APIs ファースト.
あなたのJSONウェブトークンは、もっともらしく見えますか?
時には問題は、あなたも正しい場所に適切な値を渡したかどうかを知るように簡単ですが、“に接続されているか?”質問.
それで、あなたのコードに少しのデバッグを加えて、あなたのエラーログまたはコンソールのようなJWTを見ることができます.
それから次のようにしてください.
+
and /
とともに=
ドットで区切られたパディングに使用されます.JWTのJSONウェブトークンをチェックしてください。io
秀逸があるJWT debugging tool (ありがとう、Auth 0 !)それは、物事が我々が目指していたものでないとき、我々が理解するのを助けることができます.
左側のペインにJWTを貼り付け、解析した場合は、3つのセクションの詳細が右側に表示されます.
最初のセクションはヘッダーで、使用されるタイプとアルゴリズムを示します.Vonage API呼び出しに署名するために、通常、これはそうです
typ
of JWT
and alg
of RS256
<高橋潤子>Messages API signed webhooks are HS256
).中央部は実際のデータのほとんどを含んでいます.ここでは、JWTSによるVonage API呼び出し用のフィールドがいくつかあります.
iat
"発行時"を表し、Unixタイムスタンプでなければなりませんexp
は"満了時間"であり、Unixタイムスタンプでもあるjti
"JWT id "を表し、ユニークな識別子(指定されていない形式)でなければなりませんapplication_id
Vonage API呼び出しに必要です、そして、それはトークンに署名するのに使用される秘密鍵にマッチしなければなりません.sub
フィールド(クライアントSDKはこれを使用します)または何かnbf
このトークンが“前ではない”タイムスタンプであり、トークンがその瞬間まで有効でないことを意味します.JWTの3番目と最後のセクション.ioデバッガが署名です.JWTSはペイロードの一部ではない秘密鍵で作成されます.
秘密鍵は本質的にあなたとVonageの間の共有秘密です.このセクションのWebインターフェイスに秘密キーを追加することで、署名がチェックアウトされることを確認できます.
JWTの再生
時々、我々が考える問題は、トークンが完全に異なる何かです!ここではいくつかの戦術を試してみるときに最初の2つの手順を支援しています.
新しいアプリケーションを試してください
新しいアプリケーションを作成し、新しいキーを生成し、正しいファイルを
private key
—これらは本当に違いを作るべきではないすべてのステップですが、時々必要なすべてです.それはJWTの問題の私の“1つの奇妙なトリック”であり、おそらくそれはあまりにもあなたを助けるでしょうか?別のJSONウェブトークンを生成する
トークンを生成し、アプリケーションで使用するか、お好みのHTTPクライアントから生のAPI呼び出しで使用します.
からのJWTを生成することができますNexmo CLI tool , アプリケーションIDと秘密キーを使用します.
nexmo jwt:generate path/to/private.key application\_id=asdasdas-asdd-2344-2344-asdasdasd345
代わりに、JWTを生成するために使用できる開発者ポータルにWebベースのヘルパーがあります.https://developer.nexmo.com/jwt .デバッグはスキル
障害発見は、それ自身のすべてのセットされたスキルであり、うまくいけば、何か素晴らしいものを構築すると前進するのに役立つこのポストに何かがあった.あなたが共有するより多くのヒントを持っているなら、私たちに知らせてください!はい.
郵便How To Debug JSON Web Tokens (JWTs) 最初に現れたVonage Developer Blog .
Reference
この問題について(JSONウェブトークンのデバッグ方法), 我々は、より多くの情報をここで見つけました https://dev.to/vonagedev/how-to-debug-json-web-tokens-jwts-44o7テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol