Sdílet prostřednictvím


Vlastní skripty pro zjišťování dodržování předpisů pro Microsoft Intune

Než budete moct použít vlastní nastavení pro dodržování předpisů v Microsoft Intune, musíte definovat skript, který dokáže zjistit vlastní nastavení dodržování předpisů, která jsou k dispozici na zařízeních. Skript, který použijete, závisí na platformě:

  • Zařízení s Windows používají skript PowerShellu.
  • Zařízení s Linuxem můžou spouštět skripty v libovolném jazyce, pokud je na zařízení nainstalovaný a nakonfigurovaný odpovídající interpret.

Skript zjišťování se nasadí do zařízení jako součást vlastních zásad dodržování předpisů. Když se na zařízení spustí dodržování předpisů, skript zjistí nastavení definovaná souborem JSON, který také poskytnete prostřednictvím vlastních zásad dodržování předpisů.

Všechny skripty zjišťování:

  • Jsou přidané do Intune před vytvořením zásady dodržování předpisů. Po přidání jsou k dispozici skripty, které můžete vybrat při vytváření zásad dodržování předpisů s vlastním nastavením.
    • Každý skript zjišťování je možné použít pouze s jednou zásadou dodržování předpisů a každá zásada dodržování předpisů může obsahovat pouze jeden skript zjišťování.
    • Skripty zjišťování, které jsou přiřazené k zásadám dodržování předpisů, se nedají odstranit, dokud se skript neodeřadí ze zásad.
  • Spusťte na zařízení, které obdrží zásady dodržování předpisů. Skript vyhodnotí podmínky souboru JSON, který nahrajete při vytváření vlastních zásad dodržování předpisů.
  • Identifikujte jedno nebo více nastavení definovaných ve formátu JSON a vraťte seznam zjištěných hodnot pro tato nastavení. Ke každé zásadě je možné přiřadit jeden skript a podporuje zjišťování více nastavení.

Kromě toho skript PowerShellu pro Windows:

  • Musí se zkomprimovat do výstupních výsledků na jednom řádku.
  • Například: $hash = @{ Manufacturer = $WMI_ComputerSystem.Manufacturer; BiosVersion = $WMI_BIOS.SMBIOSBIOSVersion; TPMChipPresent = $TPM.TPMPresent} Musí obsahovat následující řádek na konci skriptu: return $hash | ConvertTo-Json -Compress

Hranice

Skripty, které napíšete, musí být v následujících mezích, aby se data dodržování předpisů úspěšně vrátila do Intune:

  • Skripty nesmí být větší než 1 megabajt (MB).
  • Výstup vygenerovaný jednotlivými skripty nesmí být větší než 1 MB.
  • Skripty musí mít omezenou dobu spuštění:
    • V Linuxu musí spuštění skriptů trvat pět minut nebo méně.
    • Ve Windows musí spuštění skriptů trvat 10 minut nebo méně.

Ukázkový skript zjišťování pro Windows

Následující příklad je ukázkový skript PowerShellu, který byste mohli použít pro zařízení s Windows:

$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

Následuje příklad výstupu ukázkového skriptu pro Windows:

{"BiosVersion":"1.24","Manufacturer":"Microsoft Corporation","TPMChipPresent":true}

Ukázkový skript zjišťování pro Linux

Poznámka

Skripty zjišťování v Linuxu se spouštějí v kontextu uživatele a proto nemůžou zkontrolovat nastavení na úrovni systému, která vyžadují zvýšení oprávnění. Příkladem je state/hash/etc/sudoers soubor.

Skripty zjišťování pro Linux můžou volat jakýkoli interpret, který splňuje vaše požadavky. Před nasazením skriptu se ujistěte, že je vybraný interpret na cílovém zařízení správně nainstalovaný a nakonfigurovaný. Pokud chcete určit interpret pro skript, zahrňte do horní části skriptu řádek shebang, který označuje cestu k binárnímu souboru interpreta.

Pokud by například váš skript měl jako interpret používat prostředí Bash, přidejte do horní části skriptu následující řádek:

[ !/bin/bash ]

Pokud chcete pro skript použít Python, uveďte, kde je interpret nainstalovaný. Do horní části skriptu přidejte například následující: [ !/usr/bin/python3 ] nebo [ !/usr/bin/env python ]

Doporučený osvědčený postup: Pokud chcete skriptům umožnit zpracování scénářů, jako jsou signály přerušení nebo zrušení, implementujte řádné mechanismy ukončení. Když skript správně ukládá tyto signály do mezipaměti a zpracovává je, může provádět úlohy čištění a řádně existovat a zajistit tak správné uvolnění prostředků. Můžete například zachytit konkrétní signály, jako je SIGINT (signál přerušení) nebo SIGTERM (ukončovací signál) a definovat vlastní akce, které se mají spustit při přijetí těchto signálů. Mezi tyto akce patří zavření otevřených souborů, uvolnění získaných zámků nebo vyčištění dočasných prostředků. Správné zpracování signálů pomáhá zachovat integritu skriptu a zlepšit celkové uživatelské prostředí.

Další informace najdete v průvodci ukázkami vlastního dodržování předpisů v Linuxu v Intune .

Přidání skriptu zjišťování do Intune

Před nasazením skriptu v produkčním prostředí ho otestujte v izolovaném prostředí, abyste se ujistili, že se použitá syntaxe chová podle očekávání.

  1. Přihlaste se do Centra pro správu Microsoft Intune a přejděte do části Zabezpečení> koncového bodu Dodržovánípředpisů> zařízenímSkripty>Přidat>(zvolte platformu).

  2. V části Základy zadejte Název.

  3. V Nastavení přidejte skript do skriptu detekce. Pečlivě zkontrolujte skript. Intune ve skriptu neověřuje syntaxi nebo programové chyby.

  4. Jenom pro Windows – V nastavení nakonfigurujte pro skript PowerShellu následující chování:

    • Spusťte tento skript pomocí přihlášených přihlašovacích údajů – ve výchozím nastavení se skript spustí v kontextu systému na zařízení. Nastavte tuto hodnotu na Ano, aby se spustila v kontextu přihlášeného uživatele. Pokud uživatel není přihlášený, skript se ve výchozím nastavení vrátí zpět do kontextu systému.
    • Vynucení kontroly podpisu skriptu – další informace najdete v tématu about_Signing v dokumentaci k PowerShellu.
    • Spuštění skriptu v 64bitovém hostiteli PowerShellu – Ve výchozím nastavení se skript spouští pomocí 32bitového hostitele PowerShellu. Pokud chcete vynutit spuštění skriptu pomocí 64bitového hostitele, nastavte tuto hodnotu na Ano .
  5. Dokončete proces vytvoření skriptu. Skript je teď viditelný v podokně Skripty v Centru pro správu Microsoft Intune a můžete ho vybrat při konfiguraci zásad dodržování předpisů.

Vzhledem k tomu, že pracovní postup pro nahrání těchto skriptů do Centra pro správu Microsoft Intune nepodporuje značky oboru, musíte mít přiřazenou výchozí značku oboru, abyste mohli vytvářet, upravovat nebo zobrazovat vlastní skripty pro zjišťování dodržování předpisů.

Další kroky