Regola script
Le regole script consentono la creazione di regole personalizzate utilizzando PowerShell o VBScript per soddisfare requisiti complessi. Le applicazioni possono essere consentite, bloccate o elevate dinamicamente in base a una vasta gamma di condizioni script, fornendo un controllo potente e flessibile sul comportamento delle applicazioni.
Le regole script possono sfruttare qualsiasi interfaccia accessibile tramite PowerShell o VBScript, come COM (Component Object Model) e ogni script viene valutato nelle seguenti circostanze:
-
Quando viene distribuita una nuova configurazione sul computer
-
Quando un utente si registra
Configura regola script
È possibile impostare le regole script quando si impostano le regole di Application Control nella pagina Quando viene assegnata questa opzione?. Per configurare le regole script, attenersi alla seguente procedura:
-
Nella pagina Quando viene assegnata questa opzione?, selezionare l'opzione Script dall'elenco a discesa Seleziona un'origine.
Viene visualizzata la scheda Script. -
Specificare un nome per lo script.
-
Nell'elenco a discesa Lingua script, selezionare le opzioni PowerShell o VBScript in base alle proprie esigenze.
Per maggiori informazioni sull'utilizzo degli script, fare riferimento alle seguenti sezioni.
Script PowerShell
Se lo script ritorna (esce) con un valore di 0, lo script sarà ritenuto valido e le regole verranno applicate. Se viene restituito un valore diverso da zero, lo script non verrà ritenuto valido e le regole non si applicheranno.
Ogni script PowerShell viene eseguito in un'istanza di PowerShell.exe e, come tale, Application Control non applica né aggiunge alcuna sintassi specifica - tutti i PowerShell correttamente formati funzioneranno.
PowerShell deve essere installato su qualsiasi endpoint che utilizzerà lo script.
VBScripts
Ogni script viene eseguito all'interno di un motore di script ospitato, consentendo un maggiore controllo sull'esecuzione dello script, fornendo al contempo un elevato grado di controllo di input e output.
-
Nessun file VBS utilizzato.
-
Non viene generato alcun processo separato.
Uno script deve essere scritto come una funzione e può contenere molte funzioni, ma deve essere specificata una funzione di avvio principale. La funzione di avvio viene eseguita dall'agente Application Control e può essere utilizzata per chiamare altre funzioni.
L'oggetto COM AMScriptRule è integrato nel motore di scripting e fornisce accesso ai seguenti metodi:
-
strUsername = AMScriptRule.UserName
-
strUserdomain = AMScriptRule.UserDomain
-
strSessionid = AMScriptRule.SessionID
-
strStationname = AMScriptRule.WinStation
Lo standard Microsoft in questa istanza significa che WinStation restituisce il valore del nome della sessione Terminal Services, che è determinato dal tipo di sessione, con valori tipici 'Console' o 'RDP-Tcp#34', invece del nome Window Station, che è tipicamente WinSta0.
L'oggetto COM AMScriptRule include anche i seguenti metodi:
-
strLog = AMScriptRule.Log "Dichiarazione registro personale"
Consente di inviare stringhe di registrazione al file di registro agente per l'uso con le regole script di debug.
-
strEnvironmentvar = AMScriptRule.ExpandEnvironment ("%MyEnvironmentVariables%")
Espande le variabili di ambiente dell'utente che esegue lo script.
Utilizzo di WScript. shell per espandere le variabili di ambiente, restituisce solo le variabili SYSTEM.
-
-
Nell'elenco a discesa Funzione di inserimento, selezionare ScriptedRule.
L'opzione Funzione di inserimento è disponibile solo per VBScript.
-
Nel campo Script, aggiungere un PowerShell o VBScript.
-
Accedere alla scheda Opzioni per configurare le esecuzioni e il timeout degli script.
-
Nella scheda Opzioni, selezionare il metodo di esecuzione dello script dall'elenco a discesa Tipo di esecuzione come segue:
-
Per sessione come utente: specifica che lo script viene eseguito per ogni utente che effettua l'accesso. Le impostazioni vengono applicate solo per la durata della sessione utente. Si noti che lo script verrà eseguito anche se il desktop è sbloccato.
-
Per sessione come sistema: consente di specificare che lo script viene eseguito con le autorizzazioni account di sistema una volta per ogni utente che accede. Le impostazioni vengono applicate solo per la durata della sessione utente.
-
Per computer come sistema: specifica che lo script viene eseguito con l'autorizzazione dell'account di sistema una volta all'avvio del computer. Le impostazioni vengono applicate a tutte le sessioni utente fino al riavvio del computer, al riavvio dell'agente Application Control o alla modifica della configurazione.
-
-
Abilitare le opzioni Non eseguire script fino a quando l'accesso utente non è completo per impedire l'esecuzione dello script fino al completamento dell'accesso utente.
-
Specificare un tempo nei Secondi di attesa o un timeout script per consentire a uno script di continuare l'esecuzione prima della scadenza dello script. Un'impostazione di zero (0) secondi impedisce il timeout dello script. Se si verifica un timeout, il risultato è negativo e le impostazioni non possono essere applicate.
-
Fare clic su Aggiungi.