JWT トークンをデコードして出力する
JWT トークンの内容を素早く確認します
目次
コマンドラインから JWT トークンを直接デコードして印刷するための効果的な方法をいくつか紹介します:JWT トークンのデコードと印刷
このガイドは、開発者ツール:現代の開発ワークフロー完全ガイド クラスターの一部です。

1. jq の使用
jq ツールを使用すると、JWT トークンをデコードして美しく整形して表示できます:
-
コマンド:
echo "" | jq -R 'split(".") | .[0:2] | map(@base64d) | map(fromjson)'このコマンドは JWT をその構成要素(ヘッダーとペイロード)に分割し、Base64 からデコードして JSON 形式で整形します。Base64 操作の詳細については、Windows、Linux、Mac での Base64 エンコーディングとデコーディング を参照してください。
-
例:
echo "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c" \ | jq -R 'split(".") | .[0:2] | map(@base64d) | map(fromjson)'
2. Bash スクリプト
base64 と jq を使用して JWT トークンをデコードするカスタム Bash スクリプトを作成できます:
-
スクリプト:
#!/usr/bin/env bash function decode_jwt() { IFS='.' read -ra PARTS " -
このスクリプトをファイル(例:
decode_jwt.sh)に保存し、実行可能にする(chmod +x decode_jwt.sh)と、トークンを引数として指定して実行できます。
3. Zsh 関数
.zshrc ファイルに以下の関数を追加することで、素早くアクセスできるようになります:
- 関数:
function jwt() { for part in 1 2; do b64="$(cut -f$part -d. "
この関数は OpenSSL を使用してヘッダーとペイロードをデコードし、Python の json.tool で整形します。
4. jwt-cli の使用
jwt-cli ツールをインストールして、簡単に JWT をデコードできます:
-
インストール:
brew tap sgaunet/homebrew-tools brew install sgaunet/tools/jwt-cli -
コマンド:
jwt-cli decode
このツールは、JWT のエンコーディングと署名もサポートしています [2]。
5. OpenSSL を使った最小限のワンライナー
追加のツールなしで素早く解決したい場合:
- コマンド:
echo "" | awk -F'.' '{print $1, $2}' | tr ' ' '\n' | base64 -d | python -mjson.tool
これは awk でトークンを分割し、base64 でデコードし、Python で 出力を整形 します。