Zum Inhalt
Kaffeeundcode
Skriptbibliothek
PowerShell 06.10.2026

PowerShell

Get DeviceComplianceDetails

27_Get-DeviceComplianceDetails.ps1

<#
.SYNOPSIS
    Zeigt Details zur Compliance eines bestimmten Geräts.

.DESCRIPTION
    <!-- library-status:start -->
    Prüfstatus: Ungeprüft
    Windows- und Tenant-Abnahme ausstehend; keine pauschale Produktionsfreigabe.

    <!-- library-status:end -->

    Listet auf, welche Compliance-Policies auf das Gerät angewendet wurden und deren Status (Success/Error/NonCompliant).
    Erfordert die Berechtigung 'DeviceManagementManagedDevices.Read.All'.

.NOTES
    File Name: 27_Get-DeviceComplianceDetails.ps1
    Author: Mattia Cirillo
    Version: 1.0
#>

param (
    [Parameter(Mandatory=$true)]
    [string]$DeviceName
)

Connect-MgGraph -Scopes "DeviceManagementManagedDevices.Read.All"

$Device = Get-MgDeviceManagementManagedDevice -Filter "deviceName eq '$DeviceName'"
if (!$Device) { Write-Warning "Gerät nicht gefunden"; exit }

# Get policy states for this device
$States = Get-MgDeviceManagementManagedDeviceDeviceCompliancePolicyState -ManagedDeviceId $Device.Id

$States | Select-Object DisplayName, State, SettingCount | Format-Table -AutoSize