解説
401と403は何が違う?ログインの確認とアクセス権限を分けて考えよう
ページが開けず、401や403という番号が出た。どちらもアクセスできない場面で見かけるけれど、意味は同じではないよ。

ページが開けず、401や403という番号が出た。どちらもアクセスできない場面で見かけるけれど、意味は同じではないよ。
このページでは、HTTPの応答番号と、認証・権限の違いを知る。実際のログインやサーバー設定を変える練習はしない。自分が開く権限のあるサイトで、症状を整理するところから始めよう。
誰かの確認と、何を許すか
認証は、利用者が誰かなどを確認すること。認可は、その利用者へどの操作や情報を許すかを決めることだよ。
たとえば、社員としてログインできても、経理専用の資料まで開けるとは限らない。ログインが通ったことと、すべての権限を持つことは別なんだ。
| 番号 | 基本的な意味 |
|---|---|
| 401 Unauthorized | 有効な認証情報が足りない要求 |
| 403 Forbidden | サーバーが要求を理解したが、処理を拒否する |
名前は紛らわしいけれど、401は認証に関わる応答。標準のHTTP認証の仕組みでは、認証方法を示すWWW-Authenticateヘッダーと合わせて扱うよ。
403なら必ずログイン済み、ではない
403はアクセスを拒否したことを示す。権限不足のほか、IP制限やサーバーの制御などでも使われることがある。番号だけで、どのアカウントか確認済みだったと断定しないようにしよう。
また、すべてのアプリが同じ画面や応答を返すわけではない。存在を明かさないため404を使う場合などもあり、実際のサービスの仕様を確かめる必要があるよ。
利用者が確認できること
- 開こうとしたURLに入力ミスがないか見る。
- 正しいアカウントでログインしているか確認する。
- 共有リンクの対象者に自分が含まれるか、管理者へ確認する。
- 発生時刻・番号・操作を控え、必要なら問い合わせる。
何度もログインを試したり、制限を回避しようと別経路へ進んだりしない。問い合わせにパスワードや認証コードを添える必要もないよ。
管理者側は経路を分ける
アプリ、プロキシ、WAFなど、どこが応答を返したかをログと照合する。画面の文字だけを変えても、実際の権限や応答番号の問題が直るとは限らない。

みんなのコメント 0
感想や、試してみたことを聞かせてね。コメント・返信は承認後に公開されます。
最初のコメントをどうぞ。