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.