Startseite » Exchange » Mac Adressen aus Intune beziehen

Mac Adressen aus Intune beziehen

MAC-Adressen in Microsoft Intune

Das folgende PowerShell-Skript automatisiert den Prozess des Abrufens und Formatierens dieser MAC-Adressen aus Intune, was besonders bei größeren Geräteparks Zeit spart und menschliche Fehler minimiert.

Verwendungszwecke

  • Netzwerk-Zugriffskontrollen (NAC) und MAC-Filterung
  • Asset-Management und Inventarisierung
  • Fehlersuche bei Netzwerkproblemen
  • Integration mit anderen Netzwerk-Management-Tools
# Alle Intune-Geräte abrufen
$allIntuneDevices = Get-MgDeviceManagementManagedDevice -All

# Leere Liste für Geräte mit formatierten MAC-Adressen
$devicesList = @()

foreach ($intuneDevice in $allIntuneDevices) {
    # Einzelnes Gerät erneut abrufen, um benötigte Informationen zu haben
    $singleDevice = Get-MgDeviceManagementManagedDevice -ManagedDeviceId $intuneDevice.ID | 
        Select DeviceName, EthernetMacAddress, WiFiMacAddress, OperatingSystem

    # Funktion zur MAC-Formatierung (00:11:22:33:44:55)
    function Format-MacAddress {
        param([string]$Mac)
        if ($Mac -match '^[0-9A-Fa-f]{12}$') {
            return ($Mac -replace "(.{2})(?!$)", '$1:')
        } else {
            return $Mac
        }
    }

    $formattedEthernetMac = Format-MacAddress $singleDevice.EthernetMacAddress
    $formattedWiFiMac     = Format-MacAddress $singleDevice.WiFiMacAddress

    # Objekt mit formatierten Werten erstellen
    $formattedDevice = [PSCustomObject]@{
        DeviceName         = $singleDevice.DeviceName
        OperatingSystem    = $singleDevice.OperatingSystem
        EthernetMacAddress = $formattedEthernetMac
        WiFiMacAddress     = $formattedWiFiMac
    }

    # Objekt der Liste hinzufügen
    $devicesList += $formattedDevice
}

# Alle Geräte in eine CSV-Datei exportieren
$devicesList | Export-Csv -Path "C:tempIntuneDevices.csv" -Delimiter ";" -Encoding UTF8 -NoTypeInformation

Funktionen des Skripts

Dieses PowerShell-Skript bietet folgende Hauptfunktionen:

  • Ruft alle verwalteten Geräte aus Intune ab
  • Formatiert die MAC-Adressen in ein lesbares Format (00:11:22:33:44:55)
  • Erstellt eine Liste mit Gerätename, Betriebssystem, Ethernet- und WLAN-MAC-Adressen
  • Exportiert die Daten in eine CSV-Datei

Voraussetzungen

  • Microsoft Graph PowerShell SDK muss installiert sein
  • Entsprechende Berechtigungen für Intune-Zugriff müssen vorhanden sein
  • Der Ordner C:temp muss existieren

Troubleshooting & Fehlerbehandlung

Bei der Ausführung des Skripts können folgende Probleme auftreten:

Fehler: „Get-MgDeviceManagementManagedDevice is not recognized“

Lösung: Installieren Sie das Microsoft Graph PowerShell SDK:

Install-Module Microsoft.Graph -Scope CurrentUser
Connect-MgGraph -Scopes "DeviceManagementManagedDevices.Read.All"

Fehler: „Could not find path C:temp“

Lösung: Erstellen Sie den Ordner manuell:

New-Item -ItemType Directory -Path "C:temp" -Force

Fehler: „Could not find a part of the path ‚C:tempIntuneDevices.csv'“

Dieser Fehler tritt auf, wenn der Ordner C:temp nicht existiert oder keine Schreibrechte vorhanden sind. Stellen Sie sicher, dass:

  • Der Ordner C:temp existiert (siehe Befehl oben)
  • Ihr Benutzer Schreibrechte für diesen Ordner hat
  • Keine anderen Prozesse die Datei blockieren

Nach der Installation des Moduls und der Erstellung des Ordners sollte das Skript erfolgreich ausgeführt werden können.

Foto des Autors
Autor

Nils Lappenbusch

Ich bin seit 2012 in der IT tätig. Seit 2020 bin ich Microsoft certified Trainer (MCT). Meine Schwerpunkte momentan liegen im Bereich Microsoft 365, Exchange 2016/2019. Die Begleitung der Einführung und Migration in die Cloud sind für mich spannende Aufgaben.

Schreibe einen Kommentar

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.