認証と認可

luagate/authn-authz-intro認証と認可入門21セキュリティ

上から下へ、全 21 枚そのまま並べています。

発表モードで開く

認証と認可入門

認証と認可

あなたは誰・何ができる 〜本人確認と権限のしくみ〜

1
1

目次

今日の流れ

1. 認証と認可のちがい

2. 認証=本人確認のしくみ

3. 認可=権限の付与

4. RBACと最小権限

5. まとめと振り返り

2
2
認証と認可入門 - イントロ

今日のゴール

この時間で身につけてほしいことです。

  • 認証と認可のちがいを言葉で説明できる
  • 認証は「本人確認」だと分かる
  • 認可は「できることの許可」だと分かる
  • パスワード認証やMFAの種類を知る
  • 最小権限の原則の意味が分かる
10
3
認証と認可入門 - イントロ

認証と認可 とは

よく混同されますが、まったく別の役割を持つ2つのしくみです。

認証(Authentication)と認可(Authorization)

認証は「あなたが本人かどうか」を確かめること。認可は「その人が何をできるか」を決めること。先に認証し、そのあとで認可する順番になる。

認証 あなたは誰なのかを確認する

認可 あなたは何をできるかを決める

まず認証、次に認可の順で動く

2つはセットで安全を支える

11
4
認証と認可入門 - イントロ

社員証でたとえると

会社の入館をイメージすると、2つの違いがすっと分かります。

社員証をかざす
  • 本人だと確認される
  • これが認証にあたる
入れる部屋が決まる
  • 役職で行ける場所がちがう
  • これが認可にあたる
記録が残る
  • 誰がいつ入ったか
  • あとから追える
12
5

認証と認可入門 - 認証

2

第2部 認証のしくみ

本人だと確かめる方法

20
6
認証と認可入門 - 認証

認証の基本イメージ

ログイン画面で本人だと確かめる流れを思い浮かべましょう。

  • IDで「自分はこの人だ」と名乗る
  • パスワードなどで本人だと証明する
  • 正しければログインが通る
  • 間違っていれば拒否される
  • 認証が通ってはじめて中に入れる
21
7
認証と認可入門 - 認証

認証の3つの要素

本人確認は、大きく3種類の手がかりに分けられます。

知識(知っている)
  • パスワードや暗証番号
  • 本人だけが知る情報
所持(持っている)
  • スマホやICカード
  • 本人だけが持つ物
生体(本人そのもの)
  • 指紋や顔
  • 本人の身体的特徴
22
8
認証と認可入門 - 認証

多要素認証(MFA)

複数の手がかりを組み合わせて、なりすましを防ぐしくみです。

MFA(Multi-Factor Authentication)

パスワードに加えて、スマホへの確認コードや生体認証など、別の要素も組み合わせて本人確認する方式。1つ破られても突破されにくい。

知識と所持など複数を組み合わせる

パスワードだけより格段に安全

スマホの確認コードが代表例

乗っ取り対策の基本になっている

23
9
認証と認可入門 - 認証

認証方式の強さ(イメージ)

組み合わせを増やすほど、突破されにくくなります。あくまでイメージの比較です。

90 安全性(イメージ)725436180
30安全性(イメージ)
60安全性(イメージ)
90安全性(イメージ)
パスワードのみ
生体認証
パスワード+MFA

出典: 認証強度の傾向を示す概念図(概算)

24
10

認証と認可入門 - 認可

3

第3部 認可のしくみ

できることを決める

30
11
認証と認可入門 - 認可

ロールベースアクセス制御(RBAC)

一人ひとりではなく「役割」に権限をひも付ける考え方です。

RBAC(Role-Based Access Control)

利用者ごとに権限を設定するのではなく、管理者・編集者・閲覧者などの役割に権限をまとめ、その役割を人に割り当てる方式。管理がぐっと楽になる。

役割(ロール)に権限をまとめる

人にはロールを割り当てるだけ

異動時はロールを付け替えればよい

設定ミスや付け忘れが減る

32
12
認証と認可入門 - 認可

ロールごとの権限の例

同じシステムでも、役割によってできることが変わります。

閲覧
編集
管理

閲覧者

できる

できない

できない

編集者

できる

できる

できない

管理者

できる

できる

できる

33
13
認証と認可入門 - 認可

最小権限の原則

必要な分だけ許す、という安全の基本的な考え方です。

最小権限の原則(Least Privilege)

利用者やプログラムには、業務に必要な最小限の権限だけを与えるべきという原則。余計な権限を持たせないことで、事故や悪用の被害を小さく抑える。

必要な権限だけを与える

余分な権限は持たせない

乗っ取られても被害が小さい

定期的に権限を見直す

34
14

認証と認可入門 - 流れ

4

第4部 全体の流れ

ログインから操作まで

40
15
認証と認可入門 - 流れ

ログインから操作までの流れ

認証と認可がどう連携して働くのかを順に追ってみましょう。

1. 名乗る

IDを入力して自分を示す

2. 認証

パスワードやMFAで本人確認

3. 認可

ロールに応じてできることが決まる

4. 操作

許可された範囲だけ実行できる

41
16
認証と認可入門 - 流れ

権限チェックのイメージ

プログラムでは、操作の前にこのような確認を行います。考え方のイメージです。

javascript
// 1. まず本人かどうか(認証)
if (!user.isLoggedIn) {
  return "ログインしてください";
}

// 2. 次にできるかどうか(認可)
if (user.role !== "admin") {
  return "この操作は許可されていません";
}

// 認証も認可も通れば実行
deletePost(postId);
42
17
認証と認可入門 - まとめ
クイズ

振り返りクイズ

今日の内容を確認しましょう。

「あなたは何ができますか」を決めるのはどちら?

A
認証(本人確認)
B
認可(権限の付与)
C
暗号化
D
バックアップ
50
18
認証と認可入門 - まとめ
答え

振り返りクイズ 解答

「あなたは何ができますか」を決めるのはどちら?

A
認証(本人確認)
B
認可(権限の付与)
C
暗号化
D
バックアップ

できることを決めるのは認可です。認証は「あなたは誰か」を確かめる本人確認で、まず認証が通ってから認可で権限が決まる、という順番になります。

51
19
認証と認可入門 - まとめ

質疑・次回予告

今日のまとめと、次に学ぶテーマです。質問があればここで受け付けます。

今日のおさらい
  • 認証は本人確認、認可は権限決め
  • MFAで認証はぐっと強くなる
  • 役割で権限を管理し最小権限を守る
次回予告
  • OAuthとトークン認証を学ぶ
  • 鍵を渡さず許可するしくみ
52
20
"

認証は「あなたは誰か」、認可は「あなたは何ができるか」。この2つを分けて考えると、セキュリティの設計はぐっと見通しがよくなります。

認証と認可入門

53
21