Поддержка PowerShell для Power Apps и Power Automate

С помощью командлетов PowerShell для создателей и администраторов Power Platform вы можете автоматизировать многие задачи мониторинга и управления. Задачи, которые сегодня можно выполнить только вручную в Power Apps, Power Automate или в центре действий Power Platform.

Командлеты

Командлеты являются функциями, написанными на языке сценариев PowerShell, которые выполняют команды в PowerShell. Выполнение эти командлеты Power Apps позволяет взаимодействовать с вашей Business Application Platform без необходимости проходить через портал администрирования в веб-браузере.

Можно объединить командлеты с другими функциями PowerShell для написания сложных скриптов, которые могут оптимизировать бизнес-процесс. Можно и дальше использовать командлеты, если вы не являетесь администратором клиента, но вы будете ограничены ресурсами, которыми вы владеете. Учетная запись администратора использует командлеты, начинающиеся с Admin.

Командлеты доступны в галерее PowerShell в виде двух отдельных модулей:

Для получения информации о модуль администрирования Power Apps, см. разделы Начало работы с модулем администрирования Power Apps и Microsoft.PowerApps.Administration.PowerShell.

Заметка

Относительно поддержки Dynamics 365 Government Community Cloud (GCC) уровня 2:

Конечной точкой по умолчанию является "prod". Если пользователь хочет запустить сценарий PowerShell, ориентированный на среду GCC, параметр -Endpoint необходимо изменить на "usgov" для GCC Moderate, на "usgovhigh" для GCC High или на "dod" для GCC DOD.

Add-PowerAppsAccount -Endpoint "usgov" 

Начало работы с PowerShell

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

Предварительные условия

В качестве PowerShell в этой статье требуется Windows PowerShell версии 5.x. Чтобы проверить версию PowerShell на вашем компьютере, выполните следующую команду:

$PSVersionTable.PSVersion

Если у вас устаревшая версия, перейдите в раздел Обновление существующей версии Windows PowerShell.

Важно

Модули, описанные в этом документе, используют .NET Framework, которая несовместима с PowerShell 6.0 и более поздних версий. Эти более поздние версии используют .NET Core.

Установка модулей

Для запуска командлетов PowerShell для создателей приложений:

  1. Запустите PowerShell с правами администратора.

    Снимок экрана, показывающий, как запустить PowerShell от имени администратора.

  2. Импортируйте необходимые модули.

    Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
    Install-Module -Name Microsoft.PowerApps.PowerShell -AllowClobber
    

    Кроме того, если у вас нет прав администратора на вашем компьютере, используйте для установки параметр -Scope CurrentUser.

    Install-Module -Name Microsoft.PowerApps.Administration.PowerShell -Scope CurrentUser
    Install-Module -Name Microsoft.PowerApps.PowerShell -AllowClobber -Scope CurrentUser
    
  3. Если будет предложено принять изменение в значении InstallationPolicy репозитория, примите вариант [A] Yes для всех модулей. Для этого введите A, затем нажмите клавишу Enter для каждого модуля.

    Снимок экрана, на котором показано, где можно принять значение InstallationPolicy в PowerShell.

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

    # Opens a prompt to collect credentials (Microsoft Entra account and password).
    Add-PowerAppsAccount
    
    # Here is how you can pass in credentials (to avoid opening a prompt).
    $pass = ConvertTo-SecureString "password" -AsPlainText -Force
    Add-PowerAppsAccount -Username user@contoso.com -Password $pass
    

Обновления модулей

Вы можете проверить версию всех ваших модулей PowerShell с помощью Get-Module.

Get-Module

И вы можете обновить все свои модули PowerShell до последней версии с помощью Update-Module.

Update-Module

Альтернативно проверьте версию модулей Power Platform, используя командлет Get-Module и параметр -Name.

Get-Module -Name "Microsoft.PowerApps.Administration.PowerShell"
Get-Module -Name "Microsoft.PowerApps.PowerShell"

Обновите модули Power Platform PowerShell, используя Update-Module и параметр -Name.

Update-Module -Name "Microsoft.PowerApps.Administration.PowerShell"
Update-Module -Name "Microsoft.PowerApps.PowerShell"

Командлеты Power Apps для создателей приложений

Предварительные условия

Пользователи с действующей лицензией Power Apps могут выполнять операции в этих командлетах. Однако у них есть доступ только к ресурсам, таким как приложения и потоки, которые созданы ими или к которым им предоставлен совместный доступ.

Список командлетов — Командлеты создателя

Заметка

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

Цель Командлет
Добавить приложение на основе холста в решение Microsoft Dataverse Set-PowerAppAsSolutionAware
Чтение и обновление сред Get-AdminPowerAppEnvironment(ранее — Get-PowerAppsEnvironment)
Get-FlowEnvironment
Restore-PowerAppEnvironment(ранее Restore-AppVersion)
Чтение, обновление и удаление приложения на основе холста Get-AdminPowerApp(ранее — Get-App)
Remove-AdminPowerApp(ранее — Remove-App)
Publish-AdminPowerApp (ранее — Publish-App)
Чтение, обновление, удаление разрешений приложения на основе холста Get-AdminPowerAppRoleAssignment(ранее — Get-AppRoleAssignment)
Remove-AdminPowerAppRoleAssignment(ранее Remove-AppRoleAssignment)
Чтение, обновление, удаление потока Get-AdminFlow
Enable-AdminFlow
Disable-AdminFlow
Remove-AdminFlow
Чтение, обновление, удаление разрешений потока Get-AdminFlowOwnerRole
Set-AdminFlowOwnerRole
Remove-AdminFlowOwnerRole
Чтение и ответ на утверждения потока Get-AdminFlowApprovalRequest
Remove-AdminFlowApprovals
Прочитайте и удаление соединений Get-AdminPowerAppConnection(ранее Get-Connection)
Remove-AdminPowerAppConnection(ранее Remove-Connection)
Чтение, обновление, удаление разрешений подключения Get-AdminPowerAppConnectionRoleAssignment(ранее Get-ConnectionRoleAssignment)
Set-AdminPowerAppConnectionRoleAssignment(ранее Set-ConnectionRoleAssignment)
Remove-AdminPowerAppConnectionRoleAssignment(ранее Remove-ConnectionRoleAssignment)
Чтение и удаление соединителей Get-AdminPowerAppConnector(ранее Get-Connector)
Remove-AdminPowerAppConnector(ранее Remove-Connector)
Добавление, чтение, обновление и удаление пользовательских разрешений соединителей Get-AdminPowerAppConnectorRoleAssignment(ранее Get-ConnectorRoleAssignment)
Set-PowerAppConnectorRoleAssignment(ранее — Set-ConnectorRoleAssignment)
Remove-PowerAppConnectorRoleAssignment(ранее — Remove-ConnectorRoleAssignment)
Чтение, добавление и удаление шаблонов URL-адресов политики Get-PowerAppPolicyUrlPatterns
New-PowerAppPolicyUrlPatterns
Remove-PowerAppPolicyUrlPatterns
Чтение, регистрация и удаление приложений для управления Get-PowerAppManagementApp
Get-PowerAppManagementApps
New-PowerAppManagementApp
Remove-PowerAppManagementApp
Чтение, создание, обновление и импорт ключей защиты Get-PowerAppRetrieveAvailableTenantProtectionKeys
Get-PowerAppGenerateProtectionKey
Get-PowerAppRetrieveTenantProtectionKey
New-PowerAppImportProtectionKey
Set-PowerAppTenantProtectionKey

Командлеты Power Apps для администраторов

Дополнительные сведения о командлетах Power Apps и Power Automate для администраторов см. в разделе Начало работы с PowerShell для администраторов Power Platform.

Советы

  • Используйте Get-Help с последующим CmdletName, чтобы получить список примеров.

    Снимок экрана, показывающий использование команды Get-Help.

  • После того как вы наберете тире -, вы можете нажать Tab, чтобы переключаться между входными тегами. Поместите этот флаг после имени командлета.

Команды для примера:

Get-Help Get-AdminPowerAppEnvironment
Get-Help Get-AdminPowerAppEnvironment -Examples
Get-Help Get-AdminPowerAppEnvironment -Detailed

Примеры для операции

Ниже приведены некоторые распространенные сценарии, которые показывают, как использовать новые и существующие командлеты Power Apps.

Команды сред

Используйте эти команды для получения подробной информации и обновления сред вашего клиента.

Отображение списка всех сред

Get-AdminPowerAppEnvironment

Возвращает список каждой среды вашего клиента с подробной информацией о каждой из них (например, имя среды (guid), отображаемое имя, местоположение, создатель и другое).

Показать детали вашей среды по умолчанию

Get-AdminPowerAppEnvironment –Default

Возвращает сведения только для среды по умолчанию клиента.

Показать сведения определенной среды

Get-AdminPowerAppEnvironment –EnvironmentName 'EnvironmentName'

Заметка

Поле EnvironmentName является уникальным идентификатором, который отличается от DisplayName (смотрите первое и второе поля в выходных данных на следующем изображении).

Get-AdminEnvironment command.

Команды Power Apps

Эти операции используются для чтения и изменения данных Power Apps в вашем клиенте.

Отображение списка всех Power Apps

Get-AdminPowerApp

Возвращает список всех Power Apps в вашем клиенте с подробной информацией о каждом из них (например, имя приложения (guid), отображаемое имя, создатель и другое).

Показать список всех Power Apps соответствующих отображаемому имени

Get-AdminPowerApp 'DisplayName'

Эта команда возвращает список всех Power Apps в вашем клиенте, которые соответствуют отображаемому имени.

Заметка

Используйте кавычки вокруг входных значений, которые содержат пробелы. Например, используйте "Имя моего приложения".

Особенность приложения

Set-AdminPowerAppAsFeatured –AppName 'AppName'

Избранные приложения сгруппированы и помещены в верхнюю часть списка мобильного проигрывателя Power Apps.

Заметка

Как и в средах, поле AppName — это уникальный идентификатор, который отличается от DisplayName. Если требуется выполнять операции на основе отображаемого имени, некоторые функции позволят вам использовать конвейер (см. следующую функцию).

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

Get-AdminPowerApp 'DisplayName' | Set-AdminPowerAppAsHero

Основное приложение появляется вверху списка в мобильном проигрывателе Power Apps. Может быть только одно основное приложение.

Конвейер | между двумя командлетами принимает выходные данные первого командлета и передает их в качестве входного значения второго командлета, предполагая, что функция была написана для использования конвейера.

Заметка

Приложение уже должно быть избранным приложением прежде чем оно меняется на основное.

Отображение количества приложений, которыми владеет каждый пользователь

Get-AdminPowerApp | Select –ExpandProperty Owner | Select –ExpandProperty displayname | Group

Можно объединить исходные функции PowerShell с командлетами Power Apps для дальнейшей обработки данных. Здесь мы используем функцию "Выбрать", чтобы изолировать атрибут Владелец (объект) от объекта Get-AdminApp. Затем мы изолируем имя объекта "владелец", перемещая эти выходные данные в другую функцию "Select". Наконец, передача выходных данных второй функции "Выбор" в функцию "Группа" возвращает удобную таблицу, в которую входит количество приложений каждого владельца.

Get-AdminPowerApp command.

Отображение количества приложений в каждой среде

Get-AdminPowerApp | Select -ExpandProperty EnvironmentName | Group | %{ New-Object -TypeName PSObject -Property @{ DisplayName = (Get-AdminPowerAppEnvironment -EnvironmentName $_.Name | Select -ExpandProperty displayName); Count = $_.Count } }

Среда Get-AdminPowerApp.

Загрузить сведения о пользователе Power Apps

Get-AdminPowerAppsUserDetails -OutputFilePath '.\adminUserDetails.txt' –UserPrincipalName 'admin@bappartners.onmicrosoft.com'

Приведенная выше команда сохраняет данные пользователя Power Apps (основные сведения об использовании входящего пользователя через его имя участника-пользователя) в указанном текстовом файле. Она создает новый файл, если файл с таким именем не существует, и перезаписывает текстовый файл, если он уже существует.

Экспортировать список назначенных пользовательских лицензий

Get-AdminPowerAppLicenses -OutputFilePath '<licenses.csv>'

Экспортирует все назначенные пользовательские лицензии (Power Apps и Power Automate) в вашем клиенте в виде таблицы .csv. Экспортированный файл содержит как внутренние пробные планы самообслуживания, так и планы, полученные от Microsoft Entra ID. Внутренние пробные планы не видны администраторам в центре администрирования Microsoft 365.

Экспорт может занять некоторое время для клиентов с большим количеством пользователей Microsoft Power Platform.

Заметка

Выходные данные командлета Get-AdminPowerAppLicenses включают только лицензии для пользователей, которые получили доступ к службам Power Platform (например, Power Apps, Power Automate, или же центр администрирования Power Platform). Для пользователей, которым были назначены лицензии в Microsoft Entra ID (обычно это делается посредством центра администрирования Microsoft 365), но которые никогда не обращались к службам Power Platform, лицензии в создаваемый выходной файл CSV не включаются. Кроме того, поскольку службы лицензирования Power Platform кэшируют лицензии, после обновления назначений лицензий в Microsoft Entra ID может пройти до семи дней, прежде чем в выходных данных отразятся изменения для пользователей, которые в последнее время не обращались к службе.

Задание вошедшего в систему пользователя как владельца приложения на основе холста

Set-AdminPowerAppOwner –AppName 'AppName' -AppOwner $Global:currentSession.userId –EnvironmentName 'EnvironmentName'

Изменяет роль владельца PowerApp на текущего пользователя и заменяет исходного владельца на тип роли «может просматривать».

Заметка

Поля AppName и EnvironmentName — это уникальные идентификаторы (guids), а не отображаемые имена.

Показать список удаленных приложений на основе холста в среде

Get-AdminDeletedPowerAppsList -EnvironmentName 'EnvironmentName'

Эта команда отображает все приложения на основе холста, которые были недавно удалены, так как возможно, что они все еще могут быть восстановлены.

Восстановить удаленное приложение на основе холста

Get-AdminRecoverDeletedPowerApp -AppName 'AppName' -EnvironmentName 'EnvironmentName'

Эта команда восстанавливает приложение на основе холста, которое можно обнаружить с помощью командлета Get-AdminDeletedPowerAppsList. Любое приложение на основе холста, которое не отображается в Get-AdminDeletedPowerAppsList, невозможно восстановить.

Назначение среды настраиваемой формы SharePoint

Следующие командлеты можно использовать для указания и проверки среды, в которой сохраняются настраиваемые формы SharePoint, а не среды по умолчанию. Когда назначенная среда для настраиваемых форм изменяется SharePoint, именно в этой среде сохраняются вновь созданные настраиваемые формы. Существующие настраиваемые формы не переносятся автоматически в другие среды при использовании этих командлетов. Для того, чтобы пользователь мог создавать настраиваемую форму в определенной среде, у этого пользователя должна быть роль создателя среды. Пользователям может быть предоставлена роль создателя среды в центре администрирования Power Platform.

Любую среду, которая не является средой по умолчанию, можно удалить. Если назначенная среда настраиваемых форм SharePoint удаляется, настраиваемые формы удаляются вместе с ней.

Get-AdminPowerAppSharepointFormEnvironment  

Эта команда возвращает EnvironmentName для среды, в настоящее время предназначенной для вновь созданных настраиваемых форм SharePoint. Если среда никогда не была назначена, возвращается среда по умолчанию.

Set-AdminPowerAppSharepointFormEnvironment –EnvironmentName 'EnvironmentName' 

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

Reset-AdminPowerAppSharepointFormEnvironment  

Это сбрасывает среду по умолчанию как назначенную среду, в которую сохраняются настраиваемые формы SharePoint.

Отображение настройки клиента для возможности делиться приложениями со Всеми

$settings = Get-TenantSettings 
$settings.PowerPlatform.PowerApps.disableShareWithEveryone 

Этот параметр определяет, могут ли пользователи с ролью безопасности "Создатель среды" обмениваться приложениями на основе холста со всеми в организации. Если для параметра установлено значение true, только пользователи с ролью администратора (администратор Dynamics 365, администратор службы Power Platform, администратор клиента Microsoft Entra) может делиться приложениями со Всеми в организации.

Независимо от настроек этого клиента, создатели ценности с правом совместного использования могут делиться приложениями с группами безопасности любого размера. Этот элемент управления только определяет, можно ли использовать сокращение Все при совместном использовании.

Изменение настройки клиента для возможности делиться приложениями со Всеми

$settings = Get-TenantSettings 
$settings.powerPlatform.powerApps.disableShareWithEveryone = $True 
Set-TenantSettings -RequestBody $settings

Отображение содержания сообщения об ошибке управления вашей организации

Если вы укажете, что содержимое сообщения об ошибке управления будет отображаться в сообщениях об ошибках, содержимое в сообщении об ошибке отображается, когда создатели заметят, что у них нет разрешения на предоставление доступа к приложениям для Всех. См. Команды содержимого сообщения об ошибке управления PowerShell.

Связывание потоков в контексте с приложением

Свяжите потоки в контексте приложения с приложением, чтобы создать зависимость между приложением и потоками. Чтобы узнать больше о потоках контекста, см. раздел Какие возможности Power Automate включены в лицензии Power Apps?

   Add-AdminFlowPowerAppContext -EnvironmentName <String> -FlowName <String> -AppName <String> [-ApiVersion <String>] [<CommonParameters>]

EnvironmentName и FlowName можно найти в URL-адресе потока:

  • Для потока без решения URL-адрес выглядит следующим образом:

    https://preview.flow.microsoft.com/manage/environments/839eace6-59ab-4243-97ec-a5b8fcc104e7/flows/6df8ec2d-3a2b-49ef-8e91-942b8be3202t/details
    

    GUID после environments/ — это EnvironmentName, а GUID после flows/ — это FlowName

  • Для потока с решением URL-адрес выглядит следующим образом:

    https://us.flow.microsoft.com/manage/environments/66495a1d-e34e-e330-9baf-0be559e6900b/solutions/fd140aaf-4df4-11dd-bd17-0019b9312238/flows/53d829c4-a5db-4f9f-8ed8-4fb49da69ee1/details
    

    GUID после environments/ — это EnvironmentName, а GUID после flows/ — это FlowName

  • Имя приложения AppName для приложения на основе холста можно найти на странице сведений о приложении на основе холста.

    Снимок экрана, на котором показано, что AppName для приложения на основе холста можно найти на странице сведений о приложении на основе холста.

  • Имя приложения AppName для приложения на основе модели можно найти в обозревателе решений.

    Снимок экрана, на котором показано, что имя приложения AppName для приложения на основе модели можно найти в обозревателе решений.

  • Чтобы просмотреть примеры, введите: get-help Add-AdminFlowPowerAppContext -examples.

  • Для получения дополнительных сведений введите: get-help Add-AdminFlowPowerAppContext -detailed.

  • Для получения технических сведений введите: get-help Add-AdminFlowPowerAppContext -full.

Удаление потоков в контексте приложения

Удалите зависимость между потоками и приложением с помощью следующей команды PowerShell. Командлет Remove-AdminFlowPowerAppContext удаляет контекст приложения из определенного потока.

    Remove-AdminFlowPowerAppContext -EnvironmentName <String> -FlowName <String> -AppName <String> [-ApiVersion <String>] [<CommonParameters>]

    - To see the examples, type: "get-help Remove-AdminFlowPowerAppContext -examples".
    - For more information, type: "get-help Remove-AdminFlowPowerAppContext -detailed".
    - For technical information, type: "get-help Remove-AdminFlowPowerAppContext -full".

Команды Power Automate

Используйте эти важные команды для администрирования, связанного с Power Automate.

Полный список командлетов Power Automate и Power Apps для администраторов см. в разделе Начало работы с PowerShell для администраторов Power Platform.

Отображать все потоки

Get-AdminFlow

Возвращает список всех потоков в клиенте.

Отображать сведения о роли владельца потока

Get-AdminFlowOwnerRole –EnvironmentName 'EnvironmentName' –FlowName 'FlowName'

Возвращает сведения о владельце указанного потока.

Заметка

Как и в случае сред и PowerApps, FlowName является уникальным идентификатором (guid), который отличается от отображаемого имени потока.

Отображать сведения о пользователя потока

Get-AdminFlowUserDetails –UserId $Global:currentSession.userId

Возвращает сведения о пользователе относительно использования потока. В этом примере мы используем ИД текущего вошедшего в систему пользователя сеанса PowerShell в качестве входных данных.

Удалить сведения о пользователя потока

Remove-AdminFlowUserDetails –UserId 'UserId'

Удаляет сведения о пользователе потока целиком из базы данных Microsoft. Все потоки, которыми владеет входящий пользователь, должны быть удалены, прежде чем сведения о пользователе потока могут быть удалены.

Заметка

Поле UserId является ИД объекта записи Microsoft Entra пользователя, который можно найти на портале Azure в разделе Microsoft Entra ID>Пользователи>Профиль>ИД объекта. Вы должны быть администратором для доступа к этим данным отсюда.

Экспортировать все потоки в файл CSV

Get-AdminFlow | Export-Csv -Path '.\FlowExport.csv'

Экспортирует все потоки вашего клиента в табличный файл .csv.

Добавление потоков в решения Dataverse

Add-AdminFlowsToSolution -EnvironmentName <String>

Переносит все потоки, не входящие в решения, в среде.

Вариации параметров можно использовать для миграции только определенных потоков, добавления в конкретное решение или миграции только заданного количества потоков за раз.

Технические сведения см. в разделе Add-AdminFlowsToSolution.

Команды подключения API

Просмотр и управление подключениями API в вашем клиенте.

Отображать все исходные подключения в вашей среде по умолчанию

Get-AdminPowerAppEnvironment -Default | Get-AdminPowerAppConnection

Отображает список всех подключений API, которые есть в среде по умолчанию. Собственные подключения будут указаны на вкладке Dataverse>Подключения в Power Apps.

Отображать все настраиваемые соединители в клиенте

Get-AdminPowerAppConnector

Возвращает список всех сведений о настраиваемом соединителе в клиенте.

Заметка

Get-AdminPowerAppConnector не перечисляет пользовательские соединители, находящиеся в решении. Это известное ограничение.

Команды политики защиты от потери данных (DLP)

Эти командлеты контролируют политики защиты от потери данных для клиента.

Создание политики защиты от потери данных

New-DlpPolicy

Создает новую политику защиты от потери данных для клиента вошедшего в систему администратора.

Извлечение списка объектов DLP

Get-DlpPolicy

Получает сущность политики для клиента вошедшего в систему администратора.

Заметка

  • При просмотре политики защиты от потери данных с помощью PowerShell отображаемое имя соединителей относятся к моменту создания политики защиты от потери данных или к моменту последнего перемещения соединителей внутри политики. Новые изменения в отображаемых именах соединителей не будут отражены.
  • При просмотре политики защиты от потери данных с помощью PowerShell новые соединители в группе по умолчанию, которые не были перемещены, не будут возвращены.

Обходной путь для обеих этих известных проблем — переместить затронутый соединитель в другую группу в рамках политики, а затем переместить его обратно в правильную группу. После этого каждый из соединителей будет отображаться с правильным именем.

Обновление политики защиты от потери данных

Set-DlpPolicy

Обновляет детали политики, такие как отображаемое имя политики.

Удаление политики

Remove-DlpPolicy

Удаляет политику защиты от потери данных.

Командлеты исключения ресурсов DLP

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

Получение существующего списка освобожденных ресурсов для политики защиты от потери данных

Get-PowerAppDlpPolicyExemptResources -TenantId -PolicyName 

Создайте новый список исключенных ресурсов для политики защиты от потери данных

New-PowerAppDlpPolicyExemptResources -TenantId -PolicyName -NewDlpPolicyExemptResources 

Обновите список исключенных ресурсов для политики защиты от потери данных

Set-PowerAppDlpPolicyExemptResources -TenantId -PolicyName -UpdatedExemptResources 

Удалите список исключенных ресурсов для политики защиты от потери данных

Remove-PowerAppDlpPolicyExemptResources -TenantId -PolicyName 

Чтобы исключить ресурс из политики защиты от потери данных, вам потребуется следующая информация:

  • Идентификатор клиента (GUID)
  • ИД политики защиты от потери данных (GUID)
  • ИД ресурса (заканчивается на GUID)
  • Тип ресурса

Вы можете получить идентификатор и тип ресурса с помощью командлетов PowerShell Get-PowerApp для приложений и Get-Flow для потоков.

Пример скрипта удаления

Чтобы освободить поток с ИД f239652e-dd38-4826-a1de-90a2aea584d9 и приложение с ИД 06002625-7154-4417-996e-21d7a60ad624, мы можем запустить следующие командлеты:

1. PS D:\> $flow = Get-Flow -FlowName f239652e-dd38-4826-a1de-90a2aea584d9 
2. PS D:\> $app = Get-PowerApp -AppName 06002625-7154-4417-996e-21d7a60ad624 
3. PS D:\> $exemptFlow = [pscustomobject]@{ 
4. >>             id = $flow.Internal.id 
5. >>             type = $flow.Internal.type 
6. >>         } 
7. PS D:\> $exemptApp = [pscustomobject]@{ 
8. >>             id = $app.Internal.id 
9. >>             type = $app.Internal.type 
10. >>         } 
11. PS D:\> $exemptResources = [pscustomobject]@{ 
12. >>             exemptResources = @($exemptFlow, $exemptApp) 
13. >>         } 
14. PS D:\> New-PowerAppDlpPolicyExemptResources -TenantId b1c07da8-2ae2-47e7-91b8-d3418892f507 -PolicyName 65da474a-70aa-4a59-9ae1-65a2bebbf98a -NewDlpPolicyExemptResources $exemptResources 
15. 
16. exemptResources 
17. --------------- 
18. {@{id=/providers/Microsoft.ProcessSimple/environments/Default-b1c07da8-2ae2-47e7-91b8-d3418892f507/flows/f239652e-dd38-4826-a1de-90a2aea584d9; type=Microsoft.ProcessSimple/environments/flows}, @{id=/providers/Microsoft.PowerApps/apps/06002625-7154-4417-996e-21d7a60ad.. 

Интерфейс исключения политики защиты от потери данных в следующих сценариях

# Сценарий Взаимодействие
1 Пользователь запускает приложение, не совместимое с DLP, но освобожденное от DLP. Запуск приложения происходит с принудительной защитой от потери данных или без нее.
2 Создатель сохраняет приложение, не совместимое с DLP, но освобожденное от DLP С исключением DLP или без него соответствие DLP не блокирует операцию сохранения приложения. Предупреждение о несоответствии DLP отображается независимо от исключения DLP.
3 Создатель сохраняет поток, не совместимый с DLP, но освобожденный от DLP С исключением DLP или без него соответствие DLP не блокирует операцию сохранения потока. Предупреждение о несоответствии DLP не появляется.

Команды содержимого сообщения об ошибке управления

Следующие командлеты могут привести ваших конечных пользователей к справочным материалам по управлению вашей организацией. Команда включает ссылку на документацию по управлению и контактное лицо по управлению, когда им будут предложены элементы управления. Например, если задано содержание сообщения об ошибке управления, оно отображается в сообщениях о принудительном выполнении политики защиты от потери данных Power Apps.

Задание содержимого сообщения об ошибке управления

New-PowerAppDlpErrorSettings -TenantId 'TenantId' -ErrorSettings @{  
  ErrorMessageDetails = @{ 
    enabled = $True  
    url = "https://contoso.org/governanceMaterial" 
  } 
  ContactDetails= @{  
    enabled = $True 
    email = "admin@contoso.com" 
  } 
} 

URL-адрес сообщения об ошибке управления и адрес электронной почты могут отображаться отдельно или вместе. Вы можете включить или отключить сообщение об ошибке управления с помощью поля enabled.

Сценарии содержимого сообщения об ошибке управления

# Сценарий Доступность
1 Пользователь запускает приложение, созданное с помощью Power Apps, несовместимое с DLP Общедоступная версия
2 Создатель делится приложением на основе холста Power Apps, но не имеет права на предоставление общего доступа Общедоступная версия
3 Создатель делится приложением Power Apps на основе холста с использованием варианта Все, но не имеет права делиться с использованием варианта Все Общедоступная версия
4 Создатель сохраняет приложение, созданное с помощью Power Apps, несовместимое с DLP Общедоступная версия
5 Создатель сохраняет поток Power Automate, несовместимый с DLP Общедоступная версия
6 Пользователь запускает приложение без участия в группе безопасности в группе безопасности, связанной со средой Dataverse Общедоступная версия

Отображение содержимого сообщения об ошибке управления

Get-PowerAppDlpErrorSettings -TenantId 'TenantId' 

Обновление содержимого сообщения об ошибке управления

Set-PowerAppDlpErrorSettings -TenantId 'TenantId' -ErrorSettings @{  
  ErrorMessageDetails = @{ 
    enabled = $True  
    url = "https://contoso.org/governanceMaterial" 
  } 
  ContactDetails= @{  
    enabled = $True 
    email = "admin@contoso.com" 
  } 
} 

Применение политики защиты от потери данных — среда

Эти командлеты позволяют применять политику защиты от потери данных для нарушающих подключений на уровне среды или клиента.

Применение политик защиты от потери данных для нарушающих подключений

Вы можете применять политики защиты от потери данных к подключениям в среде. Принудительное применение отключает существующие подключения, нарушающие какие-либо политики DLP, и включает все ранее отключенные подключения, которые больше не нарушают никаких политик DLP.

Start-DLPEnforcementOnConnectionsInEnvironment -EnvironmentName [Environment ID]
Пример сценария принудительного применения для среды
Start-DLPEnforcementOnConnectionsInEnvironment -EnvironmentName c4a07cd6-cb14-e987-b5a2-a1dd61346963 

Применение политик защиты от потери данных для нарушающих подключений — клиент

Вы можете принудительно применять политики защиты от потери данных к подключениям в клиенте. Принудительное применение отключает существующие подключения, нарушающие какие-либо политики DLP, и включает все ранее отключенные подключения, которые больше не нарушают никаких политик DLP.

Start-DLPEnforcementOnConnectionsInTenant

Блокировка команд пробных лицензий

Команды:

Remove-AllowedConsentPlans
Add-AllowedConsentPlans
Get-AllowedConsentPlans

Командлеты разрешенных планов согласия можно использовать для добавления или удаления доступа к конкретному типу плана согласия от клиента. "Внутренние" планы согласия — это либо пробные лицензии, либо планы разработчиков, на которые пользователи могут подписаться самостоятельно через Power Apps/Power Automate порталы/Power Automate для рабочего стола. Планы согласия "Специальная подписка" или "Популярные" планы согласия — это пробные лицензии, на которые пользователи могут подписаться самостоятельно через https://signup.microsoft.com. Администраторы могут назначать пользователей через Microsoft Entra ID или портал администрирования Microsoft 365.

По умолчанию все типы планов согласия разрешены в клиенте. Тем не менее, администратор Power Platform может захотеть запретить пользователям назначать себе пробные лицензии, но сохранить возможность назначать пробные лицензии от имени пользователей. Это правило может быть достигнуто путем использования команды Remove-AllowedConsentPlans -Types "Internal" и отключения параметра AllowAdHocSubscriptions в Microsoft Entra ID.

Важно

При использовании Remove-AllowedConsentPlans все существующие планы указанного типа удаляются для всех пользователей в клиенте, и восстановить их невозможно. Эта команда блокирует все будущие назначения этого типа. Если администратор Power Platform хочет повторно включить планы этого типа, он может использовать Add-AllowedConsentPlans. Если они хотят просмотреть текущее состояние разрешенных планов согласия, они могут использовать Get-AllowedConsentPlans.

Если у вас есть вопросы

Если у вас есть какие-либо комментарии, предложения или вопросы, опубликуйте их в разделе Управление панелью сообщества Power Apps.

См. также

Начало работы с модулем администрирования Power Apps.
Microsoft.PowerApps.Administration.PowerShell
Предварительная версия: Обзор возможностей программирования и расширяемости