セキュリティ・認証 / 認可
OAuthとは
Open Authorization。パスワードを渡さず、アクセス権限を委任するための仕組みです。
用語集内のカードを見るセキュリティ・認証 / 認可
Open Authorization。パスワードを渡さず、アクセス権限を委任するための仕組みです。
用語集内のカードを見るOAuthを、定義だけで終わらせず、現場で出てくる場面、確認材料、見落としやすい点、関連語とのつながりまで順に確認できます。
実務メモ
OAuthはSaaS連携、外部API利用、モバイルアプリ、CLI認証、管理自動化で効きます。scope過多、認可失敗、連携解除、token漏えい調査で確認します。
証跡にはclient ID、redirect URI、scope、state検証、PKCE有無、token期限、refresh token保管先、同意者、連携先API、取り消し手順を残します。
OAuthをログインそのものと誤解しないようにします。redirect URIのワイルドカード、state未検証、PKCEなし、scope過多、refresh tokenの平文保管は事故につながります。
OAuthは、パスワードを渡さずにアクセス権限を委任するための仕組みです。外部SaaS連携、API利用、モバイルアプリ、CLI認証、管理自動化で使われます。
実務では、認可コードフロー、PKCE、state、redirect URI、scope、access token、refresh token、client secret、同意画面、取り消し手順を確認します。
証跡には、client ID、redirect URI、scope、認可サーバー、トークン期限、refresh token保管先、同意者、取り消し手順、連携先APIを残します。
OAuthは「ログインの仕組み」と説明されがちですが、本質は権限委任です。ユーザーのパスワードを渡さず、特定scopeの範囲でAPIを使わせます。
ログイン用途で本人確認まで扱う場合はOIDCを使います。OAuthのaccess tokenだけを見て、ユーザー認証が完了したと判断しないようにします。
認可コードフローでは、redirect URIの固定、stateによるCSRF対策、PKCEによるコード横取り対策が重要です。ワイルドカードや曖昧なredirect URIは危険です。
モバイルアプリやSPAでは、client secretを安全に保管できない前提でPKCEを使います。認可コードとtoken交換のログを分けて確認します。
refresh tokenは長く効くことが多く、漏えい時の影響が大きくなります。保管場所、暗号化、ローテーション、失効、利用ログを確認します。
連携解除や退職、SaaS利用停止時にtokenを取り消せるかが運用上重要です。同意を消しても既存tokenが残る場合があります。
OAuth対応では、client、scope、redirect URI、token期限、同意者、取り消し方法、連携先APIを残します。連携先の権限変更は業務影響と漏えい影響の両方に関係します。
引き継ぎでは、認証基盤担当、API担当、SaaS管理者、関連語としてOIDC、JWT、Token、Claimを残すと確認しやすくなります。
同じ主要カテゴリの用語をまとめて確認できます。現在の用語を起点に、前後の用語へ進むと文脈を保ったまま読み進められます。