Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Innan du kan använda anpassade inställningar för efterlevnad med Microsoft Intune måste du skapa ett skript som identifierar anpassade efterlevnadsinställningar på enheter. Vilket skript du använder beror på plattformen:
- Windows-enheter använder ett PowerShell-skript.
- Linux -enheter kan köra skript på vilket språk som helst så länge motsvarande tolk är installerad och konfigurerad på enheten.
Identifieringsskriptet distribueras till enheter som en del av dina anpassade efterlevnadsprinciper. När efterlevnad körs på en enhet identifierar skriptet inställningarna som definierats i JSON-filen som du anger när du skapar efterlevnadsprincipen.
Alla identifieringsskript:
- Läggs till i Intune innan du skapar en efterlevnadsprincip. När du har lagt till ett skript är det tillgängligt att välja när du skapar en efterlevnadsprincip med anpassade inställningar.
- Varje identifieringsskript kan bara användas med en efterlevnadsprincip, och varje efterlevnadsprincip kan bara innehålla ett identifieringsskript.
- Du kan inte ta bort identifieringsskript som har tilldelats till en efterlevnadsprincip förrän du har tagit bort tilldelningen av skriptet från principen.
- Körs på en enhet som tar emot efterlevnadsprincipen. Skriptet utvärderar villkoren för JSON-filen som du laddar upp när du skapar en anpassad efterlevnadsprincip.
- Identifiera en eller flera inställningar, enligt definitionen i JSON, och returnera en lista över identifierade värden för dessa inställningar.
Dessutom gör PowerShell-skriptet för Windows:
Måste komprimeras för att mata ut resultat på en enda rad. Till exempel måste följande skript innehålla
return $hash | ConvertTo-Json -Compresssom sista rad:$hash = @{ Manufacturer = $WMI_ComputerSystem.Manufacturer; BiosVersion = $WMI_BIOS.SMBIOSBIOSVersion; TPMChipPresent = $TPM.TPMPresent} return $hash | ConvertTo-Json -Compress
Gränser
För att kunna returnera efterlevnadsdata till Intune måste skripten hålla sig inom följande gränser:
- Skripten får inte vara större än 1 megabyte (MB) vardera.
- Utdata som genereras av varje skript får inte vara större än 1 MB.
- Skript måste ha en begränsad körtid:
- I Linux måste skript ta fem minuter eller mindre att köra.
- I Windows måste skript ta 10 minuter eller mindre att köra.
Exempel på identifieringsskript för Windows
Följande exempel är ett PowerShell-exempelskript som du kan använda för Windows-enheter:
$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
I följande exempel visas utdata från exempelskriptet för Windows:
{"BiosVersion":"1.24","Manufacturer":"Microsoft Corporation","TPMChipPresent":true}
Exempel på identifieringsskript för Linux
Obs!
I Linux körs identifieringsskript i användarens kontext. De kan inte söka efter inställningar på systemnivå som kräver utökade rättigheter. Ett exempel på state/hash/etc/sudoers den här begränsningen är filen.
Identifieringsskript för Linux kan ringa vilken tolk som helst som uppfyller dina krav. Kontrollera att den valda tolken är korrekt installerad och konfigurerad på målenheten innan du distribuerar skriptet. Om du vill ange tolken för ett skript inkluderar du en shebang-rad överst i skriptet som anger sökvägen till tolkens binärfil.
Om skriptet till exempel ska använda Bash-gränssnittet som tolk lägger du till följande rad överst i skriptet:
#!/bin/bash
Om du vill använda Python anger du tolksökvägen. Du kan till exempel lägga till följande rad högst upp i skriptet: #!/usr/bin/python3 eller #!/usr/bin/env python3
Tips
Om du vill hantera avbrott eller annulleringssignaler implementerar du smidiga avslutningsmekanismer i skripten. När ett skript hanterar dessa signaler kan det utföra rensningsuppgifter och avslutas på ett smidigt sätt, vilket säkerställer att resurser frigörs korrekt. Du kan till exempel fånga upp signaler som SIGINT (avbrottssignal) eller SIGTERM (termineringssignal) och definiera anpassade åtgärder som ska köras när de tas emot. Dessa åtgärder kan omfatta att stänga öppna filer, frigöra förvärvade lås eller rensa tillfälliga resurser.
Mer information finns i guiden Intune Linux exempel på anpassad efterlevnad.
Lägga till ett identifieringsskript i Intune
Innan du distribuerar skriptet i produktion testar du det i en isolerad miljö för att säkerställa att syntaxen du använder fungerar som förväntat.
Obs!
Arbetsflödet för skriptuppladdning stöder inte omfångstaggar. Du måste tilldelas standardomfångstaggen för att skapa, redigera eller visa anpassade skript för identifiering av efterlevnad.
Logga in på Microsoft Intune administrationscenter och gå tillTillägg> av skript för slutpunktssäkerhet>för enhetsefterlevnad>. Välj sedan plattform.
I Grundläggande information anger du ett beskrivande namn på skriptet.
I Inställningar lägger du till skriptet i identifieringsskriptet. Läs igenom manuset noggrant. Intune verifierar inte skriptet för syntax- eller programmeringsfel.
Endast för Windows – I Inställningar konfigurerar du följande beteende för PowerShell-skriptet:
- Kör det här skriptet med de inloggade autentiseringsuppgifterna – som standard körs skriptet i systemkontexten på enheten. Ange det här värdet till Ja om du vill att det ska köras i kontexten för den inloggade användaren. Om användaren inte är inloggad återgår skriptet som standard till systemkontexten.
- Kontroll av skriptsignatur – Mer information finns i about_Signing i PowerShell-dokumentationen.
- Kör skript i 64-bitars PowerShell-värd – Som standard körs skriptet med 32-bitars PowerShell-värden. Ange det här värdet till Ja om du vill tvinga skriptet att köras med 64-bitarsvärden i stället.
Slutför processen för att skapa skriptet. Skriptet visas i fönstret Skript och är tillgängligt att välja när du konfigurerar efterlevnadsprinciper .