Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Voordat u aangepaste instellingen kunt gebruiken voor compatibiliteit met Microsoft Intune, moet u een script maken waarmee aangepaste nalevingsinstellingen op apparaten worden gedetecteerd. Het gebruikte script is afhankelijk van het platform:
- Windows-apparaten gebruiken een PowerShell-script.
- Op Linux-apparaten kunnen scripts in elke taal worden uitgevoerd, zolang de bijbehorende interpreter op het apparaat is geïnstalleerd en geconfigureerd.
Het detectiescript wordt geïmplementeerd op apparaten als onderdeel van uw aangepaste compliancebeleid. Wanneer compliance op een apparaat wordt uitgevoerd, detecteert het script de instellingen die zijn gedefinieerd in het JSON-bestand dat u opgeeft bij het maken van het compliancebeleid.
Alle detectiescripts:
- Worden toegevoegd aan Intune voordat u een nalevingsbeleid maakt. Nadat u een script hebt toegevoegd, is het beschikbaar om te selecteren wanneer u een compliancebeleid met aangepaste instellingen maakt.
- Elk detectiescript kan slechts met één nalevingsbeleid worden gebruikt en elk nalevingsbeleid kan slechts één detectiescript bevatten.
- U kunt discovery-scripts die zijn toegewezen aan een compliancebeleid, pas verwijderen nadat u de toewijzing van het script uit het beleid hebt verwijderd.
- Uitvoeren op een apparaat waarop het nalevingsbeleid wordt ontvangen. Het script evalueert de voorwaarden van het JSON-bestand dat u uploadt bij het maken van een aangepast nalevingsbeleid.
- Identificeer een of meer instellingen, zoals gedefinieerd in de JSON, en retourneer een lijst met gevonden waarden voor die instellingen.
Daarnaast wordt het PowerShell-script voor Windows:
Moet worden gecomprimeerd om resultaten in één regel uit te voeren. Het volgende script moet bijvoorbeeld als laatste regel bevatten
return $hash | ConvertTo-Json -Compress:$hash = @{ Manufacturer = $WMI_ComputerSystem.Manufacturer; BiosVersion = $WMI_BIOS.SMBIOSBIOSVersion; TPMChipPresent = $TPM.TPMPresent} return $hash | ConvertTo-Json -Compress
Limieten
Als u compliance-gegevens wilt retourneren aan Intune, moeten uw scripts binnen de volgende limieten blijven:
- Scripts mogen niet groter zijn dan 1 MB per stuk.
- De uitvoer die door elk script wordt gegenereerd, mag niet groter zijn dan 1 MB.
- Scripts moeten een beperkte looptijd hebben:
- Op Linux moeten scripts vijf minuten of minder in beslag nemen.
- In Windows moeten scripts 10 minuten of minder in beslag nemen.
Voorbeelddetectiescript voor Windows
Het volgende voorbeeld is een PowerShell-voorbeeldscript dat u kunt gebruiken voor Windows-apparaten:
$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
In het volgende voorbeeld ziet u de uitvoer van het voorbeeldscript voor Windows:
{"BiosVersion":"1.24","Manufacturer":"Microsoft Corporation","TPMChipPresent":true}
Voorbeelddetectiescript voor Linux
Opmerking
Op Linux worden detectiescripts uitgevoerd in de context van de gebruiker. Ze kunnen niet controleren op instellingen op systeemniveau waarvoor uitbreiding is vereist. Een voorbeeld van deze beperking is die state/hash van het /etc/sudoers bestand.
Discovery-scripts voor Linux kunnen elke tolk aanroepen die aan uw vereisten voldoet. Zorg ervoor dat de gekozen interpreter correct is geïnstalleerd en geconfigureerd op het doelapparaat voordat u het script implementeert. Als u de interpreter voor een script wilt opgeven, voegt u boven aan het script een shebang-regel toe die het pad naar het binaire interpreter aangeeft.
Als uw script bijvoorbeeld de Bash-shell als interpreter moet gebruiken, voegt u de volgende regel boven aan uw script toe:
#!/bin/bash
Als je Python wilt gebruiken, geef je het interpreter-pad op. Voeg bijvoorbeeld de volgende regel toe aan het begin van uw script: #!/usr/bin/python3 of #!/usr/bin/env python3
Tip
Om onderbrekingen of annuleringssignalen te verwerken, implementeert u nette beëindigingsmechanismen in uw scripts. Wanneer een script deze signalen verwerkt, kan het opschoontaken uitvoeren en netjes afsluiten, zodat resources correct worden vrijgegeven. U kunt bijvoorbeeld signalen zoals SIGINT (interruptsignaal) of SIGTERM (beëindigingssignaal) opvangen en aangepaste acties definiëren die moeten worden uitgevoerd wanneer ze worden ontvangen. Deze acties kunnen bestaan uit het sluiten van geopende bestanden, het vrijgeven van verworven vergrendelingen of het opschonen van tijdelijke bronnen.
Zie de handleiding met voorbeelden van aangepaste compliantievoorbeelden Intune Linux voor meer informatie.
Een detectiescript toevoegen aan Intune
Voordat u uw script in productie implementeert, test u het in een geïsoleerde omgeving om er zeker van te zijn dat de syntaxis die u gebruikt werkt zoals verwacht.
Opmerking
De werkstroom voor het uploaden van scripts ondersteunt geen bereiktags. U moet de standaardbereiktag toegewezen krijgen om aangepaste detectiescripts voor naleving te kunnen maken, bewerken of weergeven.
Meld u aan bij het Microsoft Intune-beheercentrum en ga naar Eindpuntbeveiliging>Script voor>apparaatnaleving>toevoegen. Kies vervolgens je platform.
Typ in de basisbeginselen een beschrijvende naam voor het script.
Voeg in Instellingen uw script toe aan het detectiescript. Bekijk uw script zorgvuldig. Intune valideert het script niet op syntaxis of programmeerfouten.
Alleen voor Windows: configureer in Instellingen het volgende gedrag voor het PowerShell-script:
- Voer dit script uit met de aangemelde referenties : het script wordt standaard uitgevoerd in de systeemcontext op het apparaat. Stel deze waarde in op Ja om het programma in de context van de aangemelde gebruiker uit te voeren. Als de gebruiker niet is aangemeld, wordt het script standaard teruggezet naar de systeemcontext.
- Controle van scripthandtekening afdwingen : zie about_Signing in de PowerShell-documentatie voor meer informatie.
- Voer een script uit in de 64-bits PowerShell-host : het script wordt standaard uitgevoerd met de 32-bits PowerShell-host. Stel deze waarde in op Ja om te forceren dat het script wordt uitgevoerd met de 64-bits host.
Voltooi het maken van het script. Het script wordt weergegeven in het deelvenster Scripts en kan worden geselecteerd bij het configureren van compliancebeleid.