0
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?

More than 1 year has passed since last update.

Azure Identity Protectionのログ収集

Last updated at Posted at 2023-03-31

はじめに

Identity Protectionに対してAPIアクセスしてログを取得するために必要なAPI設定を以下の手順を記述します。

利用できるAPIは、以下の通り。 Azureユーザアカウントがリスクにさらされた時にログが生成される。
1~3は、ログ収集GETコマンド。Microsoftサポートによると4は、侵害されたユーザーを確認する。5危険なユーザーを無視するというPOSTコマンドで要求が成功した場合は、"204 No Content" として応答されるだけとのこと。

今回は1~3について記載します。

  1. https://graph.microsoft.com/v1.0/identityProtection/riskDetections
  2. https://graph.microsoft.com/v1.0/identityProtection/riskyUsers/{riskyUserId}/history
  3. https://graph.microsoft.com/v1.0/identityProtection/riskyUsers
  4. https://graph.microsoft.com/v1.0/identityProtection/riskyUsers/confirmCompromised
  5. https://graph.microsoft.com/v1.0/identityProtection/riskyUsers/dismiss

また、Identity Protectionで取得できる情報には、サービス プリンシパルの場合は “servicePrincipalRiskDetection" と "riskyServicePrincipals" もあります。https://learn.microsoft.com/ja-jp/graph/api/resources/identityprotection-overview?view=graph-rest-1.0#for-service-principals

マイクロソフトによると2023/3月時点では、syslog等で外部出力する方法はないとのことです。

Graph API準備

Azure Active Directoryを開きアプリケーション->アプリの登録をクリックします。

1.png

新規作成を押し、任意の名前を入力して登録します。
2.png

左のメニューから証明書とシークレットをクリックします。
注意:有効期限は最大の24か月。このタイミングでAPIトークンを作成するためのクレデンシャルが無効になります。
追加します。

3.png

シークレットの値をコピーして自身のノートパット等に記録しておきます。あとで利用します。

4.png

APIアクセス許可をクリックして画面のように4つの権限を与えます。
アクセス許可の追加->Microsoft Graph->アプリケーションの許可とクリックして対象の権限を選択します。

5.png

xxxに管理者の同意を与えますを押します。状態がxxに付与されましたになることを確認します。

6.png

アプリケーション(クライアント)ID、ディレクトリ(テナント)IDをコピーしてノートパット等に貼り付けます。

7.png

API 実行

Token取得API Request

curl --location --request POST 'https://login.microsoftonline.com/{上記で取得したディレクトリ(テナント)ID値}/oauth2/v2.0/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'client_secret={上記で取得した値}' \
--data-urlencode 'client_id={上記で取得した値}' \
--data-urlencode 'scope=https://graph.microsoft.com/.default'

Token 取得 Response

access_token部分をコピーして後続のRequestコマンドで利用します。

{
    "token_type": "Bearer",
    "expires_in": 3599,
    "ext_expires_in": 3599,
    "access_token": "{Tokenが表示される}"
}

APIによるデータ取得(riskDetections)

Authorization: Bearer 以下に上記で取得したtokenを設定します。

curl --location --request GET 'https://graph.microsoft.com/v1.0/identityProtection/riskDetections' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {Token}'

riskDetections Response

Torブラウザを利用してAzureログインしたらこのようなログが生成されました

"{
    ""@odata.context"": ""https://graph.microsoft.com/v1.0/$metadata#identityProtection/riskDetections"",
    ""value"": [
        {
            ""id"": ""34952612d88c80936f3dfc64b9e2573e1a887dcbd9e7fa44395076dddb72e312"",
            ""requestId"": ""be63b488-0121-42f7-96d7-240a56da7600"",
            ""correlationId"": ""eb2af637-c2ed-4529-9681-0aea1e7f62c8"",
            ""riskEventType"": ""anonymizedIPAddress"",
            ""riskState"": ""atRisk"",
            ""riskLevel"": ""medium"",
            ""riskDetail"": ""none"",
            ""source"": ""IdentityProtection"",
            ""detectionTimingType"": ""realtime"",
            ""activity"": ""signin"",
            ""tokenIssuerType"": ""AzureAD"",
            ""ipAddress"": ""185.220.101.175"",
            ""activityDateTime"": ""2023-03-01T06:46:00.1181587Z"",
            ""detectedDateTime"": ""2023-03-01T06:46:00.1181587Z"",
            ""lastUpdatedDateTime"": ""2023-03-01T06:48:19.1017986Z"",
            ""userId"": ""b9fd1244-50e1-4221-835d-f53111b29ac8"",
            ""userDisplayName"": ""test"",
            ""userPrincipalName"": ""test0301@test02131.onmicrosoft.com"",
            ""additionalInfo"": ""[{\""Key\"":\""userAgent\"",\""Value\"":\""Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101 Firefox/102.0\""}]"",
            ""location"": {
                ""city"": ""Schoenwalde-Glien"",
                ""state"": ""Brandenburg"",
                ""countryOrRegion"": ""DE"",
                ""geoCoordinates"": {
                    ""latitude"": 52.61983,
                    ""longitude"": 13.12743
                }
            }
        },
        {
            ""id"": ""c356cfc985b2b2c4c1c7e24675595cc1149cef760d3655f651c9eabb556f5ffc"",
            ""requestId"": ""baa66880-8bb7-4354-803b-d12224a96f00"",
            ""correlationId"": ""eb2af637-c2ed-4529-9681-0aea1e7f62c8"",
            ""riskEventType"": ""anonymizedIPAddress"",
            ""riskState"": ""atRisk"",
            ""riskLevel"": ""medium"",
            ""riskDetail"": ""none"",
            ""source"": ""IdentityProtection"",
            ""detectionTimingType"": ""realtime"",
            ""activity"": ""signin"",
            ""tokenIssuerType"": ""AzureAD"",
            ""ipAddress"": ""185.220.101.175"",
            ""activityDateTime"": ""2023-03-01T06:48:39.9072409Z"",
            ""detectedDateTime"": ""2023-03-01T06:48:39.9072409Z"",
            ""lastUpdatedDateTime"": ""2023-03-01T06:49:41.410552Z"",
            ""userId"": ""b9fd1244-50e1-4221-835d-f53111b29ac8"",
            ""userDisplayName"": ""test"",
            ""userPrincipalName"": ""test0301@test02131.onmicrosoft.com"",
            ""additionalInfo"": ""[{\""Key\"":\""userAgent\"",\""Value\"":\""Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101 Firefox/102.0\""}]"",
            ""location"": {
                ""city"": ""Schoenwalde-Glien"",
                ""state"": ""Brandenburg"",
                ""countryOrRegion"": ""DE"",
                ""geoCoordinates"": {
                    ""latitude"": 52.61983,
                    ""longitude"": 13.12743
                }
            }
        }
    ]
}"

APIによるデータ取得(riskUsers)

"curl --location 'https://graph.microsoft.com/v1.0/identityProtection/riskyUsers' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {Token}''"

riskUsers Response

Torブラウザを利用してAzureログインしたらこのようなログが生成されました

"{
    ""@odata.context"": ""https://graph.microsoft.com/v1.0/$metadata#identityProtection/riskyUsers"",
    ""value"": [
        {
            ""id"": ""b9fd1244-50e1-4221-835d-f53111b29ac8"",
            ""isDeleted"": false,
            ""isProcessing"": false,
            ""riskLevel"": ""medium"",
            ""riskState"": ""atRisk"",
            ""riskDetail"": ""none"",
            ""riskLastUpdatedDateTime"": ""2023-03-01T06:53:19.4682155Z"",
            ""userDisplayName"": ""test"",
            ""userPrincipalName"": ""test0301@test02131.onmicrosoft.com""
        }
    ]
}"

APIによるデータ取得(User history)

"curl --location 'https://graph.microsoft.com/v1.0/identityProtection/riskyUsers/b9fd1244-50e1-4221-835d-f53111b29ac8/history' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {Token}'"

riskUsers History Response

Torブラウザを利用してAzureログインしたらこのようなログが生成されました

"{
    ""@odata.context"": ""https://graph.microsoft.com/v1.0/$metadata#identityProtection/riskyUsers('b9fd1244-50e1-4221-835d-f53111b29ac8')/history"",
    ""value"": [
        {
            ""id"": ""b9fd1244-50e1-4221-835d-f53111b29ac8"",
            ""isDeleted"": false,
            ""isProcessing"": false,
            ""riskLevel"": ""medium"",
            ""riskState"": ""atRisk"",
            ""riskDetail"": ""none"",
            ""riskLastUpdatedDateTime"": ""2023-03-01T06:53:19.4682155Z"",
            ""userDisplayName"": ""test"",
            ""userPrincipalName"": ""test0301@test02131.onmicrosoft.com"",
            ""userId"": ""b9fd1244-50e1-4221-835d-f53111b29ac8"",
            ""initiatedBy"": null,
            ""activity"": {
                ""riskEventTypes"": [
                    ""anonymizedIPAddress""
                ],
                ""detail"": null
            }
        }
    ]
}"

参考資料

0
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
0
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?