Graph API経由で検出されたアプリを操作する (プレビュー)

Microsoft Defender for Cloud Appsでは、検出されたクラウド アプリの操作、Microsoft Defender ポータルでの検出されたアプリ ページ機能のカスタマイズと自動化に使用できる Microsoft Graph APIがサポートされています。

この記事では、一般的な目的で uploadedStreams API を使用する手順の例を示します。

前提条件

Graph APIの使用を開始する前に、必ずアプリを作成し、API を呼び出すアクセス トークンを取得してください。 次に、アクセス トークンを使用して、Defender for Cloud Apps API にアクセスします。

  • アプリに Defender for Cloud Apps へのアクセス許可を付与するため、CloudApp-Discovery.Read.All のアクセス許可と管理者による承認を行ってください。

  • アプリ シークレットを書き留め、その値をコピーして、後でスクリプトで使用します。

  • Microsoft Defender for Cloud Apps にストリーミングされるクラウド アプリのデータが必要があります。

詳細については、以下を参照してください:

検出されたアプリに関するデータを取得する

利用可能なアップロードされたすべてのストリームを一覧表示し、 発見されたアプリ ページ上のデータの高水準な要約を得るには、以下のGETコマンドを実行してください。 回答には、次のクエリに必要なストリームIDが含まれています:

GET https://graph.microsoft.com/beta/security/dataDiscovery/cloudAppDiscovery/uploadedStreams

前回のGETリクエストで返された特定のストリームのデータにドリルダウンするには:

  1. GET .../uploadedStreamsレスポンスから関連する<streamID>値(アップロードされたストリームのidプロパティ)をコピーします。

  2. 次のGETコマンドを実行し、前の応答の id 値に<streamId>を置き換えます:

    GET https://graph.microsoft.com/beta/security/dataDiscovery/cloudAppDiscovery/uploadedStreams/<streamId>/aggregatedAppsDetails(period=duration'P90D')
    

特定の期間とリスク スコアをフィルター処理する

$select$filterを使用して API コマンドをフィルター処理して、特定の期間とリスク スコアのデータを取得します。 たとえば、過去 30 日間に検出されたすべてのアプリの名前を、リスク スコアが 4 以下で表示するには、次のように実行します。

GET https://graph.microsoft.com/beta/security/dataDiscovery/cloudAppDiscovery/uploadedStreams/<streamId>/aggregatedAppsDetails (period=duration'P30D')?$filter=riskRating  le 4 &$select=displayName

特定のアプリを使用して、すべてのユーザー、デバイス、または IP アドレスの userIdentifier を取得する

aggregatedAppsDetails応答からアプリ<id>を取得した後、以下のいずれかのコマンドを実行し、現在そのアプリを使用しているユーザー、デバイス、またはIPアドレスを特定します。

  • ユーザーを返すには:

    GET  https://graph.microsoft.com/beta/security/dataDiscovery/cloudAppDiscovery/uploadedStreams/<streamId>/aggregatedAppsDetails (period=duration'P30D')/ <id>/users  
    
  • IP アドレスを返すには:

    GET  https://graph.microsoft.com/beta/security/dataDiscovery/cloudAppDiscovery/uploadedStreams/<streamId>/aggregatedAppsDetails (period=duration'P30D')/ <id>/ipAddress  
    
  • デバイスを返すには (期間中に指定されたアプリにアクセスしたデバイス名を一覧表示します)。

    GET  https://graph.microsoft.com/beta/security/dataDiscovery/cloudAppDiscovery/uploadedStreams/<streamId>/aggregatedAppsDetails (period=duration'P30D')/ <id>/name  
    

フィルターを使用してカテゴリ別にアプリを表示する

フィルターを使用して、 マーケティングとして分類され、HIPPA に準拠していないアプリなど、特定のカテゴリのアプリを表示します。 例えば、以下のリクエストは指定されたストリームからHIPAA準拠でないとマークされたマーケティングカテゴリアプリを返します。

GET  https://graph.microsoft.com/beta/security/dataDiscovery/cloudAppDiscovery/uploadedStreams/<MDEstreamId>/aggregatedAppsDetails (period=duration 'P30D')?$filter= (appInfo/Hippa eq 'false') and category eq 'Marketing'  

詳細については、「検出されたアプリの操作」と「Microsoft Graph API リファレンス」を参照してください