Hello there, ('ω')ノ
OAuth(オーオース)は、ユーザーのアカウント情報を第三者に渡すことなく、限定的なアクセス権を他のアプリケーションに与えるための認可フレームワークです。
たとえばあるWebアプリケーションが、あなたのGoogleアカウントの連絡先リストにアクセスして、友達を探す機能を提供する場合、OAuthを使ってあなたの許可を得ることができます。このとき、アプリはあなたのGoogleパスワードを見ることはできません。
🧩 OAuthの基本的な仕組み
- アプリが「○○の情報にアクセスしてよいですか?」とリクエストする
- ユーザーが「許可する/拒否する」を選択
- 許可された場合、アプリは限定的な「アクセストークン」を受け取る
- このトークンを使って、アプリは指定された情報にアクセスできる
このようにOAuthは、ユーザーのログイン情報を第三者に直接渡すことなく、必要最小限の情報だけ共有する仕組みです。
🔐 認可と認証の違いに注意
- 認可(Authorization) = 「アクセスしてよいか」の許可(OAuthの本来の目的)
- 認証(Authentication) = 「誰なのか」の確認(ログイン)
OAuthは本来「認可」のためのフレームワークですが、実際には「○○でログイン」といった認証の仕組みとしても広く使われています。このときは、OAuthの上に拡張されたOpenID Connectというプロトコルが使われることが一般的です。
✅ OAuthの利用例
- サードパーティアプリがGoogleやFacebookアカウントでログイン
- スケジューラーアプリがGoogleカレンダーの予定を取得
- 招待機能が連絡先情報にアクセスして候補を表示
Best regards, (^^ゞ