Shikata Ga Nai

Private? There is no such things.

OAuthとは?

Hello there, ('ω')ノ

OAuth(オーオース)は、ユーザーのアカウント情報を第三者に渡すことなく、限定的なアクセス権を他のアプリケーションに与えるための認可フレームワークです。

たとえばあるWebアプリケーションが、あなたのGoogleアカウントの連絡先リストにアクセスして、友達を探す機能を提供する場合、OAuthを使ってあなたの許可を得ることができます。このとき、アプリはあなたのGoogleパスワードを見ることはできません。


🧩 OAuthの基本的な仕組み

  1. アプリが「○○の情報にアクセスしてよいですか?」とリクエストする
  2. ユーザーが「許可する/拒否する」を選択
  3. 許可された場合、アプリは限定的な「アクセストークン」を受け取る
  4. このトークンを使って、アプリは指定された情報にアクセスできる

このようにOAuthは、ユーザーのログイン情報を第三者に直接渡すことなく、必要最小限の情報だけ共有する仕組みです。


🔐 認可と認証の違いに注意

  • 認可(Authorization) = 「アクセスしてよいか」の許可(OAuthの本来の目的)
  • 認証(Authentication) = 「誰なのか」の確認(ログイン)

OAuthは本来「認可」のためのフレームワークですが、実際には「○○でログイン」といった認証の仕組みとしても広く使われています。このときは、OAuthの上に拡張されたOpenID Connectというプロトコルが使われることが一般的です。


✅ OAuthの利用例

  • サードパーティアプリがGoogleやFacebookアカウントでログイン
  • スケジューラーアプリがGoogleカレンダーの予定を取得
  • 招待機能が連絡先情報にアクセスして候補を表示

Best regards, (^^ゞ