OAuth Scopeとは? API権限をどこまで許可するか

プログラミング・Web開発カテゴリを表すパンダのイラスト プログラミング・Web開発

この記事について

この記事は、生成AIを活用した自動生成フローで作成しています。

OAuthでアプリへ許可するアクセス範囲を表す指定です。必要最小限のscopeを選ぶことが重要です。

情報確認基準日:2026-09-19

まず結論

OAuthでアプリへ許可するアクセス範囲を表す指定です。必要最小限のscopeを選ぶことが重要です。

用語実務で確認すること
Identity人かワークロードか
Credential何を秘密として扱うか
Scope / Role何を許可するか
Token有効期限と保存方法
flowchart LR
 Principal[ユーザー / Workload] --> Auth[認証]
 Auth --> Credential[資格情報]
 Credential --> API[Google API]
 Scope[Scope / Role] --> API

実務でのポイント

認証と認可を分け、ユーザーOAuthとService Accountも用途を分けます。API Keyだけでユーザーの非公開データへアクセスできる、といった誤解を避けます。

セキュリティ

Access Token、Refresh Token、API Key、client secret、Service Account鍵を公開GitHubへ保存しません。可能な限り短命な資格情報と最小権限を利用します。

公式情報

次に何をすればよい?

利用するAPIの公式認証ガイドで推奨方式を確認し、必要なscope/roleだけを設定します。

個別一次情報の深掘り

OAuth scopeはappがユーザーdataへ要求するaccess範囲です。Googleは必要最小限のscopeを選ぶことを推奨し、sensitive/restricted scopeではverification等が必要になる場合があります。API methodごとの必要scopeを確認します。

Google公式一次情報

Papanda TRY:scope最小化チェッカー

架空のAPI methodと必要scope一覧JSONを読み、選択scopeが必要以上に広い場合に警告するブラウザ教材を作ります。実tokenは不要で、「read-onlyで足りるのにwriteを要求していないか」を目で確認できます。

結局どういうサービス?

OAuthでアプリへ許可するアクセス範囲を表す指定です。必要最小限のscopeを選ぶことが重要です。

補強監査メモ

認証・ID・API基盤の記事では、人間のユーザー認可ワークロードの認証を混同しないことを最優先にします。OAuth 2.0、API key、Service Account、Access/Refresh Token、ADCは同じ「鍵」の別名ではなく、目的・主体・寿命・保管方法が異なります。

実務チェック

  • 誰がPrincipalか(人・サービス・外部ID)を先に決める。

  • 必要最小限のscope / role / permissionを選ぶ。

  • 長期秘密鍵をコードや公開GitHubへ置かない。

  • tokenをログへ出さない。

  • 本番では公式の推奨認証方式とローテーション/失効手順を確認する。

  • 401/403は「認証できない」と「権限が足りない」を分けて切り分ける。

Microsoft経験者への読み替え

Microsoft Entra IDのアプリ登録、OAuth/OIDC、managed identity、RBAC等の経験は概念理解に役立ちますが、Google側のPrincipal、Service Account、IAM Role、ADC、scopeは対応関係を個別に確認します。

文書情報

記事タイトル
OAuth Scopeとは? API権限をどこまで許可するか
作成日
更新日
Source URL
https://papanda925.com/?p=16824

ライセンス: 本記事のうち、当サイトが権利を有する本文・自作図表は、特記なき限り CC BY 4.0 で利用できます。生成AIを活用して作成・編集した内容を含みます。コードについて、別途ライセンス表示またはリンク先GitHubリポジトリのライセンスがある場合は、その条件を優先します。引用・第三者資料・画像・商標等は本ライセンスの対象外です。 利用ポリシー

タイトルとURLをコピーしました