JWT 署名ツールとは?
JWT 署名ツールは、ヘッダーとペイロードをシリアライズし、シークレットまたは秘密鍵で署名することで、コンパクトな JSON Web Token を作成します。結果は、多くの API、OAuth、セッションシステムで使われる 3 部構成の header.payload.signature トークンです。
このツールを使う場面
- API 開発、ステージング環境、デモ向けのローカルテストトークンを作成する。
- さまざまなアルゴリズムによってトークンヘッダーと署名がどう変わるかを比較する。
- 使い捨てスクリプトを書かずに、
sub、iss、aud、exp、iat、scope、またはカスタムアプリケーションフィールドなどのクレームを追加する。 - HMAC 共有シークレット、または PKCS#8 PEM 形式や JWK 形式の RSA/ECDSA 秘密鍵を使ってトークンを生成する。
署名済みトークンを使う前に確認すること
- キーの種類にアルゴリズムを合わせる:
HS*は共有シークレット、RS*とPS*は RSA 秘密鍵、ES*は EC 秘密鍵を使用します。 - 受信側サービスが要求する場合は、有効期限とオーディエンスのクレームを追加します。
- 本番環境の秘密鍵を共有ブラウザーや共有マシンに置かないでください。このツールはローカルで動作しますが、すでに侵害されたデバイスから鍵を保護することはできません。
- 署名は暗号化ではないことを忘れないでください。トークンを受け取った人は誰でもヘッダーとペイロードをデコードできます。