2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【GraphAPI】Microsoft Graph アクティビティ ログ

2
Last updated at Posted at 2025-06-16

はじめに

Microsoft Graph アクティビティ ログを使用すると、Graph API の実行ログを収集することができます。Graph アクティビティ ログの利用方法についてまとめてみました。

Microsoft Graph アクティビティ ログ とは?

Graph アクティビティ ログを有効にすると、組織内で実行されたすべての Graph API のログを記録することができます。

以下のような利用方法があります。

  • Graph API によって行われた操作の監査証跡として使用する
  • Graph API の実行数が極端に増加しているなど、疑わしい使用を検知する

Graph アクティビティ ログには以下のようなアプリケーションによる Graph API の実行ログがすべて含まれます。

  • Teams や Outlook といった Microsoft のアプリケーション
  • Graph Explorer や Postman、PowerShell などのクライアントアプリケーション

(参考:Microsoft Graph アクティビティ ログにアクセスする)
https://learn.microsoft.com/ja-jp/graph/microsoft-graph-activity-logs-overview

(参考:Microsoft Graph activity logs is now generally available)
https://techcommunity.microsoft.com/blog/microsoft-entra-blog/microsoft-graph-activity-logs-is-now-generally-available/4094535

前提条件

Graph アクティビティ ログを有効化するためには、"Microsoft Entra ID P2" ライセンスが必要です。

Microsoft Entra ID ライセンスは Azure ポータルより、以下の手順で確認することができます。

  1. 検索ボックスに "Entra ID" と入力し、[Microsoft Entra ID] をクリックします
    image.png
  2. [概要] - [基本情報][ライセンス] に有効なライセンスの名前が表示されます
    image.png

(参考:Microsoft Entra ライセンス)
https://learn.microsoft.com/ja-jp/entra/fundamentals/licensing#microsoft-entra-licensing-options

Graph アクティビティ ログの利用方法

Graph アクティビティ ログを利用するためには、以下の手順で Azure ポータルから設定を行います。

  1. ログの保存先となる "Log Analytics ワークスペース" を作成します
  2. "診断ログ" を有効化して Log Analytics ワークスペースへ Graph アクティビティ ログが出力されるようにします

事前準備

1. Log Analytics ワークスペースの作成

  1. [リソースの作成] 画面で検索ボックスに "ログ分析" と入力して検索します
    image.png
  2. [ログ分析] のリソースをクリックます
    image.png
  3. 任意のリソースグループと名前を設定して、[確認と作成] ボタンからリソースを作成します
    image.png

(参考:Log Analytics ワークスペースを作成する)
https://learn.microsoft.com/ja-jp/azure/azure-monitor/logs/quick-create-workspace?tabs=azure-portal

2. 診断ログの設定

  1. 検索ボックスに "Entra ID" と入力し、[Microsoft Entra ID] をクリックします
    image.png
  2. [監視] - [診断設定] をクリックします
    image.png
  3. [+ 診断設定を追加する] をクリックします
    image.png
  4. [MicrosoftGraphActivityLogs] や 各 SignInLogs に✅を入れ、[Log Analytics ワークスペースへの送信] に✅を入れて事前準備で作成したリソースを選択します
    [保存] ボタンをクリックします
    image.png

診断ログの設定が作成されると、Graph Activity ログが Log Analytics ワークスペースへ保存されるようになります。

SignInLogs や RiskyUsers もログに含めることによって、Graph Activity ログと合わせて分析することができます。

ログの確認方法

Graph Activity ログは以下の手順で Log Analytics ワークスペースからログを検索することで確認します。公開情報 に Graph アクティビティログの検索例が記載されています。

  1. 診断ログで設定した Log Analytics ワークスペースのリソースの画面で [ログ] をクリックします
    初めに表示される画面は "×" で閉じます
    image.png
  2. 次の画面も "×" で閉じます
    image.png
  3. 右側のプルダウンで [KQL モード] を選択します
    image.png
  4. 公開情報のクエリの例を実行してみます
    a. スロットリング による制限が発生しているアプリケーションを検索するクエリ
    MicrosoftGraphActivityLogs 
    | where TimeGenerated > ago(3d) 
    | where ResponseStatusCode == 429 
    | extend path =    replace_string(replace_string(replace_regex(tostring(parse_url(RequestUri).Path), @'(\/)+','//'),'v1.0/',''),'beta/','') 
    | extend UriSegments =  extract_all(@'\/([A-z2]+|\$batch)($|\/|\(|\$)',dynamic([1]),tolower(path)) 
    | extend OperationResource = strcat_array(UriSegments,'/')| summarize RateLimitedCount=count() by AppId, OperationResource, RequestMethod 
    | sort by RateLimitedCount desc
    | limit 100
    
    クエリを入力欄に貼り付けて、[実行] ボタンを押します
    image.png
    スロットリングが発生しているアプリについて、ID や対象の Graph API の情報が表示されます
    image.png
    b. Graph API の実行回数の時系列グラフを表示するクエリ
    MicrosoftGraphActivityLogs 
    | where TimeGenerated  between (ago(3d) .. ago(1h))  
    | summarize EventCount = count() by bin(TimeGenerated, 10m) 
    | render timechart 
        with ( 
        title="Recent traffic patterns", 
        xtitle="Time", 
        ytitle="Requests", 
        legend=hidden 
        )
    
    クエリを入力欄に貼り付けて、[実行] ボタンを押すと、実行回数についての時系列グラフが表示されます
    image.png
2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?