Az előző post-ban bemutattam hogyan lehet GPO segítségével begyűjteni a kliensekről a HWID-kat egy központi tárolóra. Ez szép és jó, de jön a kérdés utána, hogy hogyan tudom feltölteni a begyűjtött azonosítókat az Intune-ba tömegesen.
A webes felületen az Import gomb használatával nincs lehetőségünk megadni a GroupTag-et, így ha sikerül is felölteni a fileokat manuálisan kell beírogatni a GroupTag-et. Graph API-val ez megoldható, de nézzük én milyen megoldást találtam erre.
Első lépés, hogy a begyűjtött .csv fileokat helyezzük el egy mappában. (Ha azure storage-re gyűjtötted be a fileokat akkor Azure Storage Explorer segítségével tudod letölteni őket. Download link)
A következő PowerShell script segítségével:
– készítsünk 1db .csv file-t ami tartalmazza az összes gép HWID adatait.
– telepítsük a WindowsAutopilotIntune modult.
– paraméterezzük be a scriptet,például hogy milyen GroupTag-et szerenénk a gépekhez rendelni, és hogy hol vannak a fileok amikkel dolgozni szeretnénk.
– csatlakozzunk az MsGraph-hoz a szükséges jogosultságokkal. (Ha nem történt még Consent adás az MsGraph app használatához, akkor ezt szükséges megtenni, érdemes a belépésnél olyan admin felhasználót használni akinek van erre joga.)
– töltsük fel a combined.csv-t.
Script:
# CSV fájlok összevonása
$combinedPath = "C:\HWID\combined.csv"
if (Test-Path $combinedPath) {
Remove-Item $combinedPath -Force
}
$allRows = @()
Get-ChildItem -Path "C:\HWID\*.csv" | ForEach-Object {
$csv = Import-Csv $_.FullName
$allRows += $csv
}
$allRows | Export-Csv -Path $combinedPath -NoTypeInformation
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
Install-Module -Name WindowsAutopilotIntune -Scope CurrentUser -Force
# Paraméterek
$csvPath = "C:\HWID\combined.csv" # A CSV fájl elérési útja
$groupTag = "FastRing" # Itt add meg a kívánt GroupTag-et
# Szükséges modul betöltése
Import-Module WindowsAutopilotIntune -ErrorAction Stop
# Bejelentkezés az Intune-ba
Connect-MgGraph -Scopes "DeviceManagementServiceConfig.ReadWrite.All",
"DeviceManagementManagedDevices.ReadWrite.All",
"Device.ReadWrite.All"
# CSV fájl beolvasása
$devices = Import-Csv -Path $csvPath
# Eszközök feltöltése
foreach ($device in $devices) {
try {
Add-AutopilotImportedDevice -serialNumber $device.'Device Serial Number' `
-hardwareIdentifier $device.'Hardware Hash' `
-groupTag $groupTag
Write-Host "Feltöltve: $($device.'Device Serial Number')" -ForegroundColor Green
} catch {
Write-Host "Hiba: $($_.Exception.Message)" -ForegroundColor Red
}
Start-Sleep -Seconds 1 # 1 másodperces várakozás minden feltöltés után
}
Abban az esetben ha nem futna a script, érdemes a tördeléseket átnézni!
Fontos, hogy a script nem ellenőrzi, hogy az adott HWID feltöltése befejeződött-e, illetve nem jelzi vissza, hogy a GroupTag hozzá is lett rendelve a géphez! Ezt az Intune portálon tudod ellenőrizni. Feltöltés után érdemes várni pár órát, hogy minden gép látható legyen az Intune AutoPilot eszközök listájában.
Remélem tudtam segíteni! 🙂
Leave a comment