概要
認証と認可は、セキュリティや業務システムでよく出てくる言葉です。
似ていますが、役割は違います。認証は「誰なのか」を確認すること。認可は「何をしてよいのか」を決めることです。
この2つを混ぜると、ログインできる人なら何でもできる、という危ない設計になりやすくなります。
認証は、誰なのかを確認すること
認証は、利用者が本人であることを確認する処理です。
IDとパスワード、メール認証、多要素認証、SSO、パスキーなどは認証の文脈で使われます。
ログインに成功するということは、システムが「この人は本人らしい」と判断した状態です。
ログインできることと権限があることは違う
よくある誤解は、ログインできるなら何でも見てよい、という考え方です。
実務では、ログイン後にも権限チェックが必要です。部署、役割、契約状態、担当範囲によって、見せるデータや操作できる範囲は変わります。
特に業務データでは、認証より認可設計の方が難しいこともあります。
まとめ
認証は、誰なのかを確認することです。認可は、何を許可するかを決めることです。
ログインできることと、全データを見られることは同じではありません。
業務システムやAPIでは、本人確認と権限管理を分けて設計することが大切です。
