Egyéni megfelelőségi felderítési szkriptek a Microsoft Intune-hoz
Ahhoz, hogy egyéni beállításokat használjon a Microsoft Intune-nak való megfelelőséghez , meg kell határoznia egy szkriptet, amely képes felderíteni az eszközökön elérhető egyéni megfelelőségi beállításokat. A használt szkript a platformtól függ:
- A Windows-eszközök PowerShell-szkriptet használnak.
- A Linux-eszközök bármilyen nyelven futtathatnak szkripteket, ha a megfelelő értelmező telepítve és konfigurálva van az eszközön.
A felderítési szkript az egyéni megfelelőségi szabályzatok részeként telepítheti az eszközöket. Amikor a megfelelőség egy eszközön fut, a szkript felderíti az egyéni megfelelőségi szabályzaton keresztül is megadott JSON-fájl által meghatározott beállításokat.
Minden felderítési szkript:
- A rendszer a megfelelőségi szabályzat létrehozása előtt hozzáadja az Intune-hoz. A hozzáadás után a szkriptek kiválaszthatók, amikor egyéni beállításokkal hoz létre megfelelőségi szabályzatot.
- Minden felderítési szkript csak egy megfelelőségi szabályzattal használható, és minden megfelelőségi szabályzat csak egy felderítési szkriptet tartalmazhat.
- A megfelelőségi szabályzathoz rendelt felderítési parancsfájlok nem törölhetők, amíg a szkript nincs hozzárendelve a szabályzathoz.
- Futtassa a parancsot egy olyan eszközön, amely megkapja a megfelelőségi szabályzatot. A szkript kiértékeli az egyéni megfelelőségi szabályzat létrehozásakor feltöltött JSON-fájl feltételeit.
- Azonosítsa a JSON-ban meghatározott egy vagy több beállítást, és adja vissza a beállítások felderített értékeinek listáját. Minden szabályzathoz egyetlen szkript rendelhető, és több beállítás felderítését is támogatja.
Emellett a Windowshoz készült PowerShell-szkript:
- Egyetlen sorba kell tömöríteni a kimeneti eredményekhez.
- Például:
$hash = @{ Manufacturer = $WMI_ComputerSystem.Manufacturer; BiosVersion = $WMI_BIOS.SMBIOSBIOSVersion; TPMChipPresent = $TPM.TPMPresent}
tartalmaznia kell a következő sort a szkript végén:return $hash | ConvertTo-Json -Compress
Határok
A megírt szkripteknek a következő korlátokon belül kell lenniük ahhoz, hogy sikeresen vissza lehessen adni a megfelelőségi adatokat az Intune-nak:
- A szkriptek legfeljebb 1 megabájt (MB) méretűek lehetnek.
- Az egyes szkriptek által létrehozott kimenet nem lehet nagyobb 1 MB-nál.
- A szkripteknek korlátozott futási idővel kell rendelkezniük:
- Linux rendszeren a szkriptek futtatásának legalább öt percet kell igénybe vennie.
- Windows rendszeren a szkriptek futtatásának legalább 10 percet kell igénybe vennie.
Windowshoz készült felderítési példaszkript
Az alábbi példa egy Windows-eszközökhöz használható PowerShell-példaszkript:
$WMI_ComputerSystem = Get-WMIObject -class Win32_ComputerSystem
$WMI_BIOS = Get-WMIObject -class Win32_BIOS
$TPM = Get-Tpm
$hash = @{ Manufacturer = $WMI_ComputerSystem.Manufacturer; BiosVersion = $WMI_BIOS.SMBIOSBIOSVersion; TPMChipPresent = $TPM.TPMPresent}
return $hash | ConvertTo-Json -Compress
Az alábbiakban egy példa látható a windowsos példaszkript kimenetére:
{"BiosVersion":"1.24","Manufacturer":"Microsoft Corporation","TPMChipPresent":true}
Linuxhoz készült felderítési példaszkript
Megjegyzés:
A linuxos felderítési szkriptek a felhasználó környezetében futnak, így nem tudják ellenőrizni a jogosultságszint-emelést igénylő rendszerszintű beállításokat. Erre példa a state/hash
/etc/sudoers
fájl.
A Linux felderítési szkriptjei bármilyen, a követelményeknek megfelelő értelmezőt meghívhatnak. Győződjön meg arról, hogy a választott értelmező megfelelően van telepítve és konfigurálva a megcélzott eszközön a szkript üzembe helyezése előtt. A szkript értelmezőjének megadásához a szkript tetején adjon meg egy shebang vonalat, amely az értelmező bináris fájljának elérési útját jelzi.
Ha például a szkriptnek a Bash-felületet kell használnia értelmezőként, adja hozzá a következő sort a szkript elejéhez:
[ !/bin/bash ]
Ha a Pythont szeretné használni a szkripthez, adja meg, hogy az értelmező hol van telepítve. Adja hozzá például a következőt a szkript elejéhez: [ !/usr/bin/python3 ]
vagy [ !/usr/bin/env python ]
Ajánlott eljárás: Ha engedélyezni szeretné, hogy a szkriptek kezelni tudják az olyan forgatókönyveket, mint a megszakítások vagy a megszakítási jelek, alkalmazzon szabályos lezárási mechanizmusokat. Ha egy szkript megfelelően gyorsítótárazza és kezeli ezeket a jeleket, a szkript karbantartási feladatokat hajthat végre, és szabályosan létezhet, biztosítva az erőforrások megfelelő felszabadítását. Elkaphat például bizonyos jeleket, például a SIGINT (megszakításjel) vagy a SIGTERM (lezárási jel) jeleket, és meghatározhat egyéni műveleteket, amelyeket a jelek fogadásakor kell futtatnia. Ilyen művelet lehet például a megnyitott fájlok bezárása, a megszerzett zárolások feloldása vagy az ideiglenes erőforrások törlése. A jelek megfelelő kezelése segít fenntartani a szkript integritását, és javítja az általános felhasználói élményt.
További információ: Egyéni Linux-megfelelőségi minták az Intune-ban .
Felderítési szkript hozzáadása az Intune-hoz
Mielőtt éles környezetben helyezené üzembe a szkriptet, tesztelje azt egy elkülönített környezetben, hogy a használt szintaxis a várt módon viselkedjen.
Jelentkezzen be a Microsoft Intune Felügyeleti központba, és lépjen a Végpontbiztonság>Eszközmegfelelési>szkriptek>Hozzáadása>(válassza ki a platformot) lehetőséget.
Az Alapszintű beállítások területen adjon meg egy nevet.
A Beállítások lapon adja hozzá a szkriptet az Észlelési szkripthez. Alaposan tekintse át a szkriptet. Az Intune nem ellenőrzi a szkriptet szintaktikai vagy programozott hibák esetén.
Csak Windows esetén – A Beállítások lapon konfigurálja a következő viselkedést a PowerShell-szkripthez:
- Futtassa ezt a szkriptet a bejelentkezett hitelesítő adatokkal – Alapértelmezés szerint a szkript a rendszerkörnyezetben fut az eszközön. Állítsa ezt az értéket Igen értékre, hogy a bejelentkezett felhasználó környezetében fusson. Ha a felhasználó nincs bejelentkezve, a szkript alapértelmezés szerint a rendszerkörnyezetbe kerül vissza.
- Parancsfájl-aláírás ellenőrzésének kényszerítése – További információt a PowerShell dokumentációjának about_Signing című témakörben talál.
- Szkript futtatása 64 bites PowerShell-gazdagépen – Alapértelmezés szerint a szkript a 32 bites PowerShell-gazdagép használatával fut. Állítsa ezt az értéket Igen értékre, hogy a szkript a 64 bites gazdagép használatával fusson.
Fejezze be a szkriptlétrehozás folyamatát. A szkript most már látható a Microsoft Intune Felügyeleti központ Parancsfájlok paneljén, és a megfelelőségi szabályzatok konfigurálásakor választható ki.
Mivel a parancsfájlok Microsoft Intune Felügyeleti központba való feltöltésének munkafolyamata nem támogatja a hatókörcímkéket, az egyéni megfelelőségi felderítési szkriptek létrehozásához, szerkesztéséhez vagy megtekintéséhez hozzá kell rendelnie az alapértelmezett hatókörcímkét.