Microsoft Entra ID Protection y PowerShell de Microsoft Graph

Microsoft Graph es el punto de conexión de API unificada de Microsoft y donde se encuentran las API de Microsoft Entra ID Protection. En este artículo se muestra cómo usar el SDK de PowerShell de Microsoft Graph para administrar usuarios de riesgo mediante PowerShell. Las organizaciones que deseen consultar directamente las API de Microsoft Graph pueden usar el artículo Tutorial: identificar y corregir los riesgos mediante las API de Microsoft Graph para comenzar ese viaje.

Para completar correctamente este tutorial, asegúrese de cumplir estos requisitos previos:

  • El SDK de PowerShell de Microsoft Graph está instalado. Para más información, consulte el artículo Instalación del SDK de PowerShell en Microsoft Graph.

  • Microsoft Graph PowerShell con un rol de administrador de seguridad. Se requieren los permisos delegados IdentityRiskEvent.Read.All, IdentityRiskyUser.ReadWrite.All Or IdentityRiskyUser.ReadWrite.All. Para establecer los permisos en IdentityRiskEvent.Read.All e IdentityRiskyUser.ReadWrite.All, ejecute:

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

Si usa la autenticación solo de aplicación, consulte el artículo Uso de la autenticación solo de aplicación con el SDK de PowerShell de Microsoft Graph. Para registrar una aplicación con los permisos de aplicación necesarios, prepare un certificado y ejecute:

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

Enumeración de detecciones de riesgo con PowerShell

Puede recuperar las detecciones de riesgo mediante las propiedades de una detección de riesgo en Protección de id.

# 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

Enumeración de usuarios de riesgo con PowerShell

Puede recuperar los usuarios de riesgo y sus historiales de riesgo en Protección de id.

# 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

Confirmación de que los usuarios están en peligro mediante PowerShell

Puede confirmar que los usuarios están en peligro y marcarlos como usuarios de alto riesgo en Protección de id.

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

Enumeración de usuarios de riesgo con PowerShell

Puede descartar de forma masiva usuarios de riesgo en Protección de id.

# 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

Pasos siguientes