Microsoft GraphのClient Credentials Flow ― 無人処理で使うapp-only認証の基本

Microsoft 365・Azureカテゴリを表すパンダのイラスト Microsoft 365・Azure

この記事について
この記事は、生成AIを活用した自動生成フローで作成しています。Microsoft Graphのapp-only認証公式資料を確認し、旧記事の内部メタ情報、未計測のトークン取得時間、資格情報の扱いに関する説明を整理しました。

検証ステータス:✅ Microsoft公式認証仕様確認済み

バックグラウンド処理や定期バッチからMicrosoft Graphを呼ぶ場合、ユーザーのサインインを必要としないClient Credentials Flowを使えます。Microsoft Graphではapp-only accessとして説明されています。

必要な構成

  • Microsoft Entra IDのアプリ登録
  • アプリケーションIDとテナントID
  • 必要なMicrosoft Graph Application permission
  • 管理者同意
  • 安全に保管されたアプリ資格情報

.defaultの意味

Microsoft Graphのapp-only認証では、トークン要求時のscopeにhttps://graph.microsoft.com/.defaultを指定します。これは、アプリに事前設定され、管理者同意されたアプリケーション権限を使う指定です。

権限は最小限にする

Client Credentials Flowでは、サインイン中のユーザー権限ではなく、アプリへ付与されたApplication permissionで動作します。読み取りだけでよい処理へ書き込み権限を付けないなど、APIごとに必要最小限へ絞ります。

資格情報をスクリプトへ埋め込まない

資格情報をコードやGitリポジトリへ直接保存しないことが重要です。Azure上で実行するならManaged Identity、その他の環境では証明書や組織の秘密情報管理基盤などを比較します。

運用で確認すること

  • アプリへ付与した権限一覧を定期確認する。
  • 不要になった資格情報を失効する。
  • トークン取得失敗とAPI呼び出し失敗を別ログにする。
  • 長時間処理ではアクセストークンの期限切れを前提に再取得する。

公式情報

この記事の更新履歴

  • 2026-09-14 追加:.default、Application permission、管理者同意の関係を追加。
  • 2026-09-14 変更:資格情報の文字列処理中心から、権限設計と安全な保管中心へ再構成。
  • 2026-09-14 削除:内部メタ情報、本文H1、200〜500msという未計測性能値を削除。

文書情報

記事タイトル
Microsoft GraphのClient Credentials Flow ― 無人処理で使うapp-only認証の基本
作成日
更新日
Source URL
https://papanda925.com/?p=5759

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

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