1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【セキュリティ】認証(Authentication)と 認可(Authorization)の違い

Last updated at Posted at 2025-06-19

はじめに

個人開発する中でよく出てくる「認証(Authentication)」と「認可(Authorization)」。
二つの単語の違いを認識していなかったので、調べてまとめました。

認証(Authentication)とは?

目的:その人が「誰か」を確認すること

具体例

  • ユーザー名とパスワードでログイン
  • 指紋認証や顔認証
  • GoogleやGitHubなどのOAuthログイン

イメージ

「あなたは本当にAさんですか?」を確認するプロセス。

認可(Authorization)とは?

目的:その人が「何をしてよいか」を制御すること

具体例

  • 一般ユーザーは自分のプロフィールしか編集できない
  • 管理者はすべてのデータにアクセス可能
  • フリープランでは一部機能が制限される

イメージ

「Aさんはこの操作をしていいのか?」を確認するプロセス。

認証と認可の関係

フェーズ 処理内容 具体的な意味
1️⃣ 認証 誰かを確認 Aさんであることを確認する
2️⃣ 認可 権限を確認 Aさんに管理画面のアクセス権があるか確認する

よくある混同

  • 「認証した=すべての操作ができる」は誤解

認証されても、認可されていなければアクセスできない機能があり得る。

補足:認証・認可の技術例

項目 一般的な技術・手法
認証 JWT, OAuth, Firebase Auth, Supabase Auth など
認可 RBAC(ロールベースアクセス制御), ABAC(属性ベース)など

まとめ

用語 目的
認証 本人確認 ログイン処理など
認可 権限確認 機能やデータへのアクセス制御

少しでも理解の助けになれば嬉しいです!
よければ「いいね」や「ストック」もよろしくお願いします 🙌

1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?