Управление упакованными приложениями с помощью управления приложениями Защитник Windows

Примечание.

Некоторые возможности управления приложениями Защитник Windows (WDAC) доступны только в определенных версиях Windows. Дополнительные сведения о доступности функций WDAC.

В этой статье для ИТ-специалистов описаны основные понятия и описаны процедуры, которые помогут вам управлять упакованными приложениями с помощью Защитник Windows управления приложениями (WDAC) в рамках общей стратегии управления приложениями.

Сравнение классических приложений Windows и упакованных приложений

Самая большая проблема при внедрении управления приложениями заключается в отсутствии надежного удостоверения приложения для классических приложений Windows, также известных как приложения win32. Обычное приложение win32 состоит из нескольких компонентов, включая установщик, используемый для установки приложения, и один или несколько exe-файлов, библиотек DLL или скриптов. Приложение может состоять из сотен или даже тысяч отдельных двоичных файлов, которые совместно обеспечивают функциональность, которую пользователи понимают как приложение. Некоторые из этих кодов могут быть подписаны издателем программного обеспечения, некоторые — другими компаниями, а некоторые — вообще не подписаны. Большая часть кода может быть записана на диск общим набором установщиков, но некоторые из этих программ уже установлены, а некоторые скачаны по запросу. Некоторые двоичные файлы имеют общие метаданные заголовков ресурсов, например название продукта и версию продукта, но другие файлы не будут совместно использовать эти сведения. Таким образом, хотя вы хотите иметь возможность выражать такие правила, как "разрешить приложение Foo", это не то, что Windows по своей сути понимает для классических приложений Windows. Вместо этого может потребоваться создать много правил WDAC, чтобы разрешить все файлы, составляющие приложение.

С другой стороны, упакованные приложения, также известные как MSIX, гарантируют, что все файлы, составляющие приложение, имеют одно удостоверение и общую подпись. Таким образом, с упакованными приложениями можно управлять всем приложением с помощью одного правила WDAC.

Использование WDAC для управления упакованными приложениями

Важно.

При управлении упакованными приложениями необходимо выбирать между правилами подписывания или правилами имени семейства пакетов (PFN). Если в базовой политике WDAC или в одной из ее дополнительных политик используется какое-либо правило имени семейства пакетов (PFN), все упакованные приложения должны управляться исключительно с помощью правил PFN. Нельзя сочетать и сопоставлять правила PFN с правилами на основе сигнатур в область данной базовой политики. Это повлияет на многие системные приложения для папки "Входящие", например меню "Пуск". Для упрощения создания правила можно использовать подстановочные знаки в правилах PFN на Windows 11.

Создание правил на основе подписей для упакованных приложений

Все файлы, составляющие приложение MSIX, подписываются общей подписью каталога. Правило подписывания можно создать из файла установщика приложения MSIX (MSIX или MSIXbundle) или из файла AppxSignature.p7x, который находится в папке установки приложения в разделе %ProgramFiles%\WindowsApps\ с помощью командлета PowerShell New-CIPolicyRule . Пример:

Создание правила подписыватель из MSIX/MSIXBUNDLE

$FilePath = $env:USERPROFILE+'\Downloads\WDACWizard_2.1.0.1_x64_8wekyb3d8bbwe.MSIX'
$Rules = New-CIPolicyRule -DriverFilePath $FilePath -Level Publisher

Затем используйте командлет PowerShell Merge-CIPolicy , чтобы объединить новое правило в xml существующей политики WDAC.

Создание правила подписыватель из AppxSignature.p7x

$FilePath = $env:ProgramFiles+'\WindowsApps\Microsoft.WDAC.WDACWizard_2.1.0.1_x64__8wekyb3d8bbwe\AppxSignature.p7x'
$Rules = New-CIPolicyRule -DriverFilePath $FilePath -Level Publisher

Затем используйте командлет PowerShell Merge-CIPolicy , чтобы объединить новое правило в xml существующей политики WDAC.

Создание правил PackageFamilyName для упакованных приложений

Создание правил PFN из PowerShell

Правила PFN можно создавать непосредственно из упакованных приложений, установленных в настоящее время, с помощью командлетов PowerShell Get-AppXPackage и New-CIPolicyRule . Пример:

# Query for the packaged apps. This example looks for all packages from Microsoft.
$Packages = Get-AppXPackage -Name Microsoft.*
foreach ($Package in $Packages)
{
   $Rules += New-CIPolicyRule -Package $Package
}

Затем используйте командлет PowerShell Merge-CIPolicy , чтобы объединить новые правила в существующий XML-код политики WDAC.

Создание правил PFN с помощью мастера WDAC

Создание правила PFN из установленного приложения MSIX

Чтобы создать правило PFN WDAC для приложения, установленного в системе, выполните следующие действия.

  1. На странице Правила подписи политикмастера WDAC выберите Добавить пользовательское правило.
  2. Установите флажок Usermode Rule (Правило пользовательского режима ) в качестве области правила, если он не установлен.
  3. Выберите Разрешить или Запретить для действия правила.
  4. Выберите Упакованое приложение в поле Тип правила.
  5. В поле Имя пакета введите строковое значение для поиска. В строке поиска можно использовать ? подстановочные знаки или * . Затем выберите Поиск.
  6. В поле результатов проверка одно или несколько приложений, для которых требуется создать правила.
  7. Выберите Создать правило.
  8. Создайте другие необходимые правила, а затем завершите работу мастера.

Создание правила PFN из мастера WDAC

Создание правила PFN с помощью настраиваемой строки

Чтобы создать правило PFN с пользовательским строковым значением, выполните следующие действия.

  1. Повторите шаги 1–4 в предыдущем примере.
  2. Установите флажок Использовать пользовательское семейство пакетов. Метка кнопки Поиск изменится на Создать.
  3. В поле Имя пакета введите строковое значение для правила PFN. Для Windows 11 устройств можно использовать ? подстановочные знаки или * . Затем нажмите кнопку Создать.
  4. В поле результатов проверка одно или несколько приложений, для которых требуется создать правила.
  5. Выберите Создать правило.
  6. Создайте другие необходимые правила, а затем завершите работу мастера.

Создание правила PFN с пользовательской строкой из мастера WDAC