0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

個人的備忘録:Cognito のログイン API を利用して JWT を取得する方法を体系的に整理してみた

Last updated at Posted at 2025-02-28

はじめに

JWT(JSON Web Token)は、認証の際にAPIリクエストを安全に行うための仕組みです。

最近、認証付きAPIを利用する機会が増えたため、JWTの取得方法について整理することにしました。

本記事では、さまざまな方法で JWT を取得する手順を紹介します。

JWT (JSON Web Token) の取得方法

YOUR_JWT_TOKEN_HERE とは?

API へのリクエストで認証を行うには、JWT(JSON Web Token) が必要です。JWT は、通常以下の方法で取得できます。

1. ログイン API を使って取得

多くのアプリケーションでは、ログイン時に JWT を発行する API が用意されています。

例えば、以下のようなリクエストでログインし、JWT を取得できます。

curl -X POST "http://localhost:1323/api/login" \
     -H "Content-Type: application/json" \
     -d '{"username": "your_username", "password": "your_password"}'

レスポンスの例:

{
  "token": "eyJhbGciOiJIUzI1NiIsInR..."
}

この token の値が YOUR_JWT_TOKEN_HERE に該当します。

2. 開発環境で .env や設定ファイルに記載されている場合

開発用の JWT トークンが .envconfig.json などに保存されている場合があります。
例えば、.env ファイルに以下のように記載されていることがあります。

JWT_SECRET=your_secret_key
JWT_TOKEN=eyJhbGciOiJIUzI1NiIsInR...

その場合、JWT_TOKEN の値を YOUR_JWT_TOKEN_HERE に入れてください。

3. サーバー側のコードを確認

サーバー(バックエンド)のコードで、JWT をどのように発行しているかを確認できます。
例えば、Echo(Go言語のフレームワーク)を使っている場合、JWT の発行コードは以下のようになっているかもしれません。

token := jwt.NewWithClaims(jwt.SigningMethodHS256, jwt.MapClaims{
    "user_id": 123,
    "exp":     time.Now().Add(time.Hour * 24).Unix(),
})

tokenString, err := token.SignedString([]byte("your_secret_key"))
if err != nil {
    return err
}

この tokenString が JWT なので、これを取得して使います。

4. ブラウザの開発者ツールやネットワークログで確認

もし JWT がブラウザで発行・使用されている場合、開発者ツール(DevTools) の「ネットワーク」タブでリクエストを確認すると、Authorization: Bearer ... のヘッダーに JWT が含まれている場合があります。

5. すでにログイン済みなら Cookie や LocalStorage に保存されている可能性

一部のアプリでは、JWT をブラウザの LocalStorageCookie に保存していることがあります。

LocalStorage の場合

  1. 開発者ツールを開く(Chrome: F12 または Ctrl + Shift + I
  2. Application タブ → LocalStoragehttp://localhost:1323
  3. jwttoken などのキーを探す

Cookie の場合

  1. Application タブ → Cookieshttp://localhost:1323
  2. jwt_token などのキーを探す

6. ダミーの JWT を生成する

もし JWT を手元でテストするだけなら、jwt.io で適当なトークンを作成することもできます。

まとめ

方法 説明
ログイン API を使って取得 一般的な方法。認証サーバーにログインしてトークンを取得する
.env や設定ファイルを確認 開発環境の設定ファイルにトークンがあるか確認
サーバーの JWT 発行コードをチェック バックエンドのコードを見て、JWT の発行方法を確認
ブラウザの開発者ツールで確認 Network タブで API リクエストを確認し、JWT を探す
LocalStorage や Cookie で確認 ブラウザに保存された JWT を探す
テスト用に jwt.io で生成 簡単なテスト用にダミーの JWT を作成

まずは、ログイン API を試すのが一番確実な方法 です!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?