# Webのセキュリティ（全体像）— 端末以外をまとめて守る

> レベル: 初級 ／ 対象: 大人
> 出典: Kotowary — https://kotowary.com/learn/units/web-security-overview?level=beginner&audience=adult
サービスと利用者を、**悪い人や事故から守る**——その全体像がWebのセキュリティです。図の🔒の囲いは「**あなたの手元（端末）以外を、まとめて守る**」ことを表しています。

## なぜ「端末以外」を守る？

あなたのブラウザ（手元）は、あなたのもの。でも、**サーバ側から見ると手元は信用できません**（中身が見え、書き換えられる）。だから大事な守りは、サーバ側でまとめて行います。

お店の防犯にたとえると、守りは1つではなく重なっています。

- 入口の警備（あやしい人を止める）
- 本人確認（会員かどうか）
- 権限（バックヤードに入れるのは店員だけ）
- 金庫（大事なものは鍵をかける）
- 裏口の戸締まり（変なものを入れない）

## 守りの5つの柱

1. **認証** — そもそも「誰か」を確かめる（ログイン）
2. **認可** — その人が「何をしてよいか」を決める（権限）
3. **通信の保護** — 盗み見・改ざんを防ぐ（HTTPSで暗号化）
4. **入力のチェック** — あやしいお願いを弾く（WAF・入力の検証）
5. **秘密の管理** — 鍵やパスワードを、見えない場所に隠す

**登場人物メモ**:

- **認証と認可** — 「誰か」と「何してよいか」。似ているが別物
- **HTTPS** — 通信を暗号化する仕組み（鍵マークの正体）

## 大事な考え方「多層防御」

守りは1枚では破られます。だから**何層も重ねる**——入口で弾き、本人を確かめ、権限で絞り、暗号で隠す。1つ破られても、次の層で止める。これが多層防御です。

::diagram{name="security-layers"}

そして根っこにあるのは「**手元（クライアント）は信用しない**」。フロントでのチェックは親切機能で、本当の守りはサーバ側でやり直します。

## ⚠️ 守りが破れると

- **情報漏洩** — 見えてはいけないデータが外に出る
- **なりすまし** — 他人になりきってログインされる
- **改ざん** — データを勝手に書き換えられる
- **権限昇格** — 一般利用者が管理者の操作をしてしまう

「どの柱の穴か」を考えると、原因と対策の見当がつきます。
