ShinnosukeSuzuki / techtrain-mission-ca-tech-dojo-golang

オンライン版 CA Tech Dojo サーバサイド (Go)編
0 stars 0 forks source link

認証ミドルウェアでアクセス時間・ユーザーID・リクエストパスをログ出力する #17

Closed ShinnosukeSuzuki closed 2 months ago

ShinnosukeSuzuki commented 2 months ago

実装

x-tokenによる認証ミドルウェアでリクエストの時刻、リクエストのパス、ステータスコード、メッセージ、認証に成功した場合はユーザーのIDをjsonで出力するようにした。

検証

認証に成功した場合

{"timestamp":"2024-09-13 21:32:14.208039 +0900 JST","user_id":"a7abf496-3f37-488d-a74e-49b2b555c987","path":"/character/list","status":200,"message":"Authorized"}

x-tokenが一致するユーザーが存在せず認証に失敗した場合

{"timestamp":"2024-09-13 21:32:36.916163 +0900 JST","path":"/character/list","status":401,"message":"Unauthorized"}

x-tokenが空で認証に失敗した場合

{"timestamp":"2024-09-13 21:32:54.374093 +0900 JST","path":"/character/list","status":401,"message":"X-Token is required"}

Issues

close #5