При использовании обнаружения сценария PowerShell SCCM для типа развертывания приложения - можно ли зашифровать сценарий / скрыть так, чтобы он не читался для пользователей консоли SCCM?
Я пытаюсь решить проблему, вызванную слишком большим количеством пользователей консоли SCCM, которые видят правила / значения обнаружения приложений, а затем взламывают свои рабочие станции, чтобы избежать обязательного развертывания.
Это можно сделать с помощью параметра -EncodedCommand. Вы должны экспортировать сценарий в файл с кодировкой base64, а затем вызвать другой exe-файл PowerShell для его запуска. Вот очень простой пример:
$string = 'If (Get-Process) {$true}'
$encodedcommand = [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($string))
$encodedcommand | Out-File c:\temp\Encoded.txt
$encodedcommand = Get-Content c:\temp\Encoded.txt
powershell.exe -EncodedCommand $encodedcommand
Сценарий обнаружения будет последними двумя строками. Ссылка: PowerTip: кодирование строки и выполнение с помощью PowerShell