Microsoft Entra ID 保護と Microsoft Graph PowerShell

Microsoft Graph は Microsoft の統合 API エンドポイントであり、Microsoft Entra ID 保護 API のホームです。 この記事では、PowerShell を使用して危険なユーザーを管理するために、Microsoft Graph PowerShell SDK を使用する方法について説明します。 Microsoft Graph API に対して直接クエリを実行する組織は、チュートリアル: Microsoft Graph API を使用したリスクの特定と修復に関する記事を使用して作業を開始できます。

このチュートリアルを正常に完了するには、必須の前提条件を満たしている必要があります。

  • Microsoft Graph PowerShell SDK がインストールされている。 詳細については、記事「Microsoft Graph PowerShell SDK のインストール」を参照してください。

  • セキュリティ管理者ロールを使用する Microsoft Graph PowerShell。 IdentityRiskEvent.Read.All、IdentityRiskyUser.ReadWrite.All または IdentityRiskyUser.ReadWrite.All の委任されたアクセス許可が必要です。 IdentityRiskEvent.Read.All と IdentityRiskyUser.ReadWrite.All にアクセス許可を設定するには、次を実行します。

    Connect-MgGraph -Scopes "IdentityRiskEvent.Read.All","IdentityRiskyUser.ReadWrite.All"
    

アプリ専用認証を使用する場合は、記事「Microsoft Graph PowerShell SDK でアプリ専用認証を使用する」を参照してください。 必要なアプリケーションのアクセス許可でアプリケーションを登録するには、証明書を準備して次を実行します。

Connect-MgGraph -ClientID YOUR_APP_ID -TenantId YOUR_TENANT_ID -CertificateName YOUR_CERT_SUBJECT ## Or -CertificateThumbprint instead of -CertificateName

PowerShell を使用してリスク検出を一覧表示する

ID Protection のリスク検出のプロパティによって、リスク検出を取得できます。

# List all anonymizedIPAddress risk detections
Get-MgRiskDetection -Filter "RiskType eq 'anonymizedIPAddress'" | Format-Table UserDisplayName, RiskType, RiskLevel, DetectedDateTime

# List all high risk detections for the user 'User01'
Get-MgRiskDetection -Filter "UserDisplayName eq 'User01' and Risklevel eq 'high'" | Format-Table UserDisplayName, RiskType, RiskLevel, DetectedDateTime

PowerShell を使用して危険なユーザーを一覧表示する

ID Protection では、危険なユーザーとその危険な履歴を取得できます。

# List all high risk users
Get-MgRiskyUser -Filter "RiskLevel eq 'high'" | Format-Table UserDisplayName, RiskDetail, RiskLevel, RiskLastUpdatedDateTime

#  List history of a specific user with detailed risk detection
Get-MgRiskyUserHistory -RiskyUserId 375844b0-2026-4265-b9f1-ee1708491e05| Format-Table RiskDetail, RiskLastUpdatedDateTime, @{N="RiskDetection";E={($_). Activity.RiskEventTypes}}, RiskState, UserDisplayName

PowerShell を使用してユーザーが侵害されていることを確認する

ユーザーが侵害されていることを確認し、ID Protection でリスクの高いユーザーとしてフラグを設定できます。

# Confirm Compromised on two users
Confirm-MgRiskyUserCompromised -UserIds "577e09c1-5f26-4870-81ab-6d18194cbb51","bf8ba085-af24-418a-b5b2-3fc71f969bf3"

PowerShell を使用して危険なユーザーを無視する

ID Protection では、危険なユーザーを一括で無視できます。

# Get a list of high risky users which are more than 90 days old
$riskyUsers= Get-MgRiskyUser -Filter "RiskLevel eq 'high'" | where RiskLastUpdatedDateTime -LT (Get-Date).AddDays(-90)
# bulk dismiss the risky users
Invoke-MgDismissRiskyUser -UserIds $riskyUsers.Id

次のステップ