Partilhar via


Suporte PowerShell para Power Apps e Power Automate

Com cmdlets do PowerShell para criadores e administradores do Power Platform, pode automatizar várias das tarefas de monitorização e gestão. Tarefas que só são possíveis manualmente hoje em Power Apps, Power Automate, ou no centro de administração Power Platform.

Cmdlets

Cmdlets são funções escritas na linguagem de script PowerShell que executam comandos em PowerShell. Executar estes cmdlets do Power Apps permite-lhe interagir com a sua Plataforma de Aplicações Empresariais sem ter de passar pelo portal de administração num navegador web.

Pode combinar cmdlets com outras funções do PowerShell para escrever scripts complexos que podem otimizar o fluxo de trabalho. Ainda poderá continuar a utilizar os cmdlets se não for um administrador no inquilino, mas estará limitado nos recursos de que é proprietário. A conta de utilizador administrativo utiliza cmdlets que começam por Admin.

Os cmdlets estão disponíveis na Galeria do PowerShell como dois módulos separados:

Para informações sobre o módulo de administração Power Apps, consulte Comece a usar o módulo de administração Power Apps e Microsoft.PowerApps.Administration.PowerShell.

Começar a trabalhar com o PowerShell

Se for a primeira vez que utiliza o PowerShell e precisar de ajuda para o encontrar e iniciar, aceda a Introdução ao PowerShell. Se precisar de ajuda para utilizar o PowerShell ou os cmdlets, aceda ao Sistema de Ajuda do PowerShell.

Pré-requisitos para o PowerShell

O PowerShell neste artigo requer Windows PowerShell versão 5.x. Para verificar a versão do PowerShell em execução na sua máquina, executa o seguinte comando:

$PSVersionTable.PSVersion

Se tiver uma versão desatualizada, vá a Atualizar o Windows PowerShell existente.

Importante

Os módulos descritos neste documento utilizam o .NET Framework, que é incompatível com o PowerShell 6.0 e versões posteriores. Estas versões posteriores utilizam o .NET Core.

Instalação do módulo e login

Para executar cmdlets do PowerShell para criadores de aplicações:

  1. Executar PowerShell como administrador.

    Captura de ecrã que mostra como executar o PowerShell como administrador.

  2. Importe os módulos necessários.

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

    Alternativamente, se não tiver direitos de administrador no seu computador, utilize o seguinte parâmetro -Scope CurrentUser para instalação.

    Install-Module -Name Microsoft.PowerApps.Administration.PowerShell -Scope CurrentUser
    Install-Module -Name Microsoft.PowerApps.PowerShell -AllowClobber -Scope CurrentUser
    
  3. Se lhe for pedido para aceitar a alteração para o valor InstallationPolicy do repositório, aceite a opção [A] Yes para todos os módulos ao escrever A e premir Enter para cada módulo.

    Captura de ecrã que mostra onde aceitar o valor InstallationPolicy no PowerShell.

  4. Opcionalmente, antes de acessar os comandos, você pode fornecer suas credenciais. As credenciais são atualizadas até aproximadamente oito horas antes que lhe seja pedido para iniciar sessão novamente. Se as credenciais não forem fornecidas antes de um comando ser executado, será exibido um prompt para credenciais.

    # 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
    
  5. Opcionalmente, uma ponto final específica pode ser direcionada. O ponto final padrão é prod. Se um utilizador quiser executar um script PowerShell direcionado para um ambiente numa região não produtiva, como GCC, o -Endpoint parâmetro pode ser alterado para usgov GCC Moderado, GCC usgovhigh Alto ou dod GCC DOD. A lista completa de endpoints suportados é: "prod,pré-visualização,tip1,tip2,usgov,usgovhigh,dod,china".

    # An environment in another region, such as GCC, can be targeted using the -Endpoint parameter.
    Add-PowerAppsAccount -Endpoint "usgov" 
    

Atualizações dos módulos

Pode verificar a versão de todos os módulos do PowerShell utilizando Get-Module.

Get-Module

E pode atualizar todos os módulos do PowerShell para os mais recentes utilizando Update-Module.

Update-Module

Como alternativa, verifique a versão dos módulos do Power Platform, usando Get-Module e o parâmetro -Name.

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

Atualize os módulos do Power Platform PowerShell, utilizando Update-Module e o parâmetro -Name.

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

Cmdlets Power Apps para criadores de aplicações

Pré-requisitos para cmdlets do Power Apps

Utilizadores com uma licença Power Apps válida podem realizar as operações nestes cmdlets. No entanto, só têm acesso a recursos, como aplicações e fluxos, que são criados ou partilhados com eles.

Lista de cmdlets – Cmdlets do Criador

Nota

Atualizamos alguns dos nomes de função dos cmdlets na versão mais recente para adicionar prefixos apropriados para evitar colisões. Para obter uma visão geral do que mudou, consulte a tabela a seguir.

Propósito Cmdlet
Adicionar uma aplicação canvas a uma solução Microsoft Dataverse Set-PowerAppAsSolutionAware
Ler e atualizar ambientes Get-AdminPowerAppEnvironment(anteriormente Get-PowerAppsEnvironment)
Get-FlowEnvironment
Restore-PowerAppEnvironment(anteriormente Restore-AppVersion)
Ler, atualizar e eliminar uma aplicação de tela Get-AdminPowerApp(anteriormente Get-App)
Remove-AdminPowerApp(anteriormente Remove-App)
Publish-AdminPowerApp (anteriormente Publish-App)
Ler, atualizar e eliminar permissões de aplicação de tela Get-AdminPowerAppRoleAssignment(anteriormente Get-AppRoleAssignment)
Remove-AdminPowerAppRoleAssignment(anteriormente Remove-AppRoleAssignment)
Ler, atualizar e eliminar um fluxo Get-AdminFlow
Enable-AdminFlow
Disable-AdminFlow
Remover-AdminFlow
Ler, atualizar e eliminar permissões de fluxo Get-AdminFlowOwnerRole
Set-AdminFlowOwnerRole
Remove-AdminFlowOwnerRole
Ler e responder a aprovações de fluxo Get-AdminFlowApprovalRequest
Remove-AdminFlowApprovals
Ler e eliminar ligações Get-AdminPowerAppConnection(anteriormente Get-Connection)
Remove-AdminPowerAppConnection(anteriormente Remove-Connection)
Ler, atualizar e eliminar permissões de ligação Get-AdminPowerAppConnectionRoleAssignment(anteriormente Get-ConnectionRoleAssignment)
Set-AdminPowerAppConnectionRoleAssignment(anteriormente Set-ConnectionRoleAssignment)
Remove-AdminPowerAppConnectionRoleAssignment(anteriormente Remove-ConnectionRoleAssignment)
Ler e eliminar conectores Get-AdminPowerAppConnector(anteriormente Get-Connector)
Remove-AdminPowerAppConnector(anteriormente Remove-Connector)
Permissões para adicionar, ler, atualizar e eliminar conectores personalizados Get-AdminPowerAppConnectorRoleAssignment(anteriormente Get-ConnectorRoleAssignment)
Get-PowerAppConnectorRoleAssignment(anteriormente Set-ConnectorRoleAssignment)
Remove-PowerAppConnectorRoleAssignment(anteriormente Remove-ConnectorRoleAssignment)
Leia, adicione e remova padrões de URL de política Get-PowerAppPolicyUrlPatterns
New-PowerAppPolicyUrlPatterns
Remove-PowerAppPolicyUrlPatterns
Ler, registar e remover aplicações de gestão Get-PowerAppManagementApp
Get-PowerAppManagementApps
New-PowerAppManagementApp
Remover-PowerAppManagementApp
Ler, criar, atualizar e importar chaves de proteção Get-PowerAppRetrieveAvailableTenantProtectionKeys
Get-PowerAppGenerateProtectionKey
Get-PowerAppRetrieveTenantProtectionKey
New-PowerAppImportProtectionKey
Set-PowerAppTenantProtectionKey

Cmdlets Power Apps para administradores

Para mais informações sobre Power Apps e Power Automate cmdlets para administradores, consulte Comece com o PowerShell para Administradores da Power Platform.

Sugestões

  • Utilize Get-Help seguido por um CmdletName para obter uma lista de exemplos.

    Captura de ecrã que mostra a utilização do comando Get-Help.

  • Depois de escrever traço -, pode premir Tab para percorrer as etiquetas de entrada. Coloque este sinalizador após o nome do cmdlet.

Comandos de exemplo:

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

Exemplos de operações

Seguem-se alguns cenários comuns que mostram como usar cmdlets Power Apps novos e existentes.

Comandos de ambientes

Utilize estes comandos para obter detalhes sobre, bem como, atualizar ambientes no seu inquilino.

Apresentar uma lista de todos os ambientes

Get-AdminPowerAppEnvironment

Devolve uma lista de cada ambiente no seu inquilino, com detalhes de cada um (por exemplo, nome do ambiente (guid), nome a apresentar, localização, criador, entre outros).

Apresentar detalhes do ambiente predefinido

Get-AdminPowerAppEnvironment –Default

Devolve os detalhes apenas para o ambiente predefinido do inquilino.

Apresentar detalhes de um ambiente específico

Get-AdminPowerAppEnvironment –EnvironmentName 'EnvironmentName'

Nota

O campo EnvironmentName é um identificador exclusivo, que é diferente de DisplayName (consulte o primeiro e segundo campos nos resultados na imagem seguinte).

Comando Get-AdminEnvironment.

Comandos Power Apps

Estas operações são usadas para ler e modificar dados do Power Apps no seu inquilino.

Mostrar uma lista de todas as Power Apps

Get-AdminPowerApp

Devolve uma lista de todos os Power Apps espalhados pelo tenant, com detalhes de cada um (por exemplo, nome da aplicação (guid), nome de exibição, criador e mais).

Mostrar uma lista de todos os Power Apps que correspondam ao nome de visualização de entrada

Get-AdminPowerApp 'DisplayName'

Este comando lista todos os Power Apps no teu tenant que correspondem ao nome de visualização.

Nota

Utilize aspas à volta dos valores de entrada que contêm espaços. Por exemplo, use "Nome da Minha Aplicação".

Destacar uma aplicação

Set-AdminPowerAppAsFeatured –AppName 'AppName'

As aplicações em destaque são agrupadas e colocadas no topo da lista no leitor móvel do Power Apps.

Nota

Como os ambientes, o campo AppName é um identificador exclusivo que é diferente de DisplayName. Se pretender efetuar operações com base no nome a apresentar, algumas funções irão permitir-lhe utilizar o pipeline (consulte a função seguinte).

Torne uma aplicação numa aplicação destacada utilizando o pipeline

Get-AdminPowerApp 'DisplayName' | Set-AdminPowerAppAsHero

Uma aplicação Hero aparece no topo da lista no leitor móvel Power Apps. Só pode existir uma Aplicação destacada.

O carácter de pipe | entre dois cmdlets toma a forma do primeiro cmdlet e passa-o como o valor de entrada do segundo, pressupondo que a função tenha sido escrita para acomodar o pipe.

Nota

Uma aplicação já tem de ser uma aplicação destacada antes de ser alterada para Hero.

Apresentar o número de aplicações que cada utilizador possui

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

Pode combinar funções nativas do PowerShell com os cmdlets do Power Apps para manipular ainda mais os dados. Aqui, utilizamos a função Select para isolar o atributo Owner (um objeto) do objeto Get-AdminApp. Em seguida, isolamos o nome do proprietário do objeto ao canalizar esse resultado para outra função Select. Finalmente, passar o resultado da segunda função Select para a função Group devolve uma ótima tabela que inclui uma contagem do número de aplicações de cada proprietário.

Comando Get-AdminPowerApp.

Apresentar o número de aplicações em cada ambiente

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

Ambiente Get-AdminPowerApp.

Descarregar detalhes do utilizador do Power Apps

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

O comando anterior armazena os dados do utilizador do Power Apps (informação básica de utilização sobre o utilizador de entrada através do seu nome principal de utilizador) no ficheiro de texto especificado. Cria um novo ficheiro se não existir um ficheiro existente com esse nome e substitua o ficheiro de texto se este já existir.

Exportar uma lista de licenças de utilizador atribuídas

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

Exporta todas as licenças de utilizador atribuídas (Power Apps e Power Automate) no teu tenant para um ficheiro de vista tabular .csv. O ficheiro exportado contém planos de autoatendimento, de inscrição, planos internos de teste e planos provenientes do Microsoft Entra ID. Os planos internos de teste não são visíveis para os administradores no centro de administração do Microsoft 365.

A exportação pode demorar algum tempo para inquilinos com um grande número de utilizadores da Microsoft Power Platform.

Nota

A saída do Get-AdminPowerAppLicenses cmdlet inclui apenas licenças para utilizadores que acederam aos serviços do Power Platform (por exemplo, Power Apps, Power Automate ou o centro de administração do Power Platform). Utilizadores que tinham licenças atribuídas no Microsoft Entra ID (normalmente através do centro de administração Microsoft 365), mas nunca acediam aos serviços do Power Platform, não têm as suas licenças incluídas na saída de .csv gerada. Além disso, como os serviços de licenciamento da Power Platform armazenam as licenças em cache, as atualizações feitas às atribuições de licenças no Microsoft Entra ID podem demorar até sete dias a refletir-se na saída para utilizadores que não acederam recentemente ao serviço.

Definir um utilizador com sessão iniciada como proprietário de uma aplicação de tela

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

Altera a função de proprietário de um Power App para o utente atual e substitui o proprietário original como um tipo de função "pode exibir".

Nota

Os campos AppName e EnvironmentName são os identificadores exclusivos (guids), e não os nomes a apresentar.

Apresentar uma lista de aplicações de tela num ambiente

Get-AdminDeletedPowerAppsList -EnvironmentName 'EnvironmentName'

Este comando apresenta todas as aplicações de tela eliminadas recentemente, pois ainda poderão ser recuperadas. A duração da restauração é de 28 dias. Qualquer aplicação eliminada após 28 dias não é devolvida nesta lista e não pode ser recuperada.

Recuperar uma aplicação de tela eliminada

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

Este comando recupera uma aplicação de tela detetável através do cmdlet Get-AdminDeletedPowerAppsList. Qualquer aplicação de tela que não seja apresentada em Get-AdminDeletedPowerAppsList não é recuperável.

Designar ambiente de formulário personalizado SharePoint

Os seguintes cmdlets podem ser usados para especificar e verificar em que ambiente os formulários personalizados do SharePoint são guardados, em vez do ambiente padrão. Quando o ambiente designado para formulários personalizados SharePoint muda, é nesse ambiente que os formulários personalizados recém-criados são guardados. Os formulários personalizados existentes não migram automaticamente para diferentes ambientes uma vez que estes cmdlets são usados. A capacidade de um utilizador criar um formulário personalizado num ambiente designado requer que o utilizador tenha a função de Criador de Ambiente. Os utilizadores podem receber a função de Criador de Ambiente no centro de administração do Power Platform.

Qualquer ambiente que não seja o ambiente predefinido pode ser eliminado. Se o ambiente de formulários personalizados SharePoint designado for eliminado, os formulários personalizados são eliminados com ele.

Get-AdminPowerAppSharepointFormEnvironment  

Este comando devolve o EnvironmentName para o ambiente atualmente designado para formulários SharePoint personalizados recém-criados. Se um ambiente nunca tiver sido designado, o ambiente predefinido é obtido.

Set-AdminPowerAppSharepointFormEnvironment –EnvironmentName 'EnvironmentName' 

Este comando designa o ambiente onde os formulários personalizados SharePoint recém-criados, em vez do ambiente padrão. Os formulários personalizados existentes não migram automaticamente para o ambiente recém-designado. Apenas um ambiente de produção pode ser designado para formulários personalizados do SharePoint.

Reset-AdminPowerAppSharepointFormEnvironment  

Isto reinicia o ambiente padrão como o ambiente designado para guardar formulários personalizados do SharePoint.

Apresentar definição do inquilino para a capacidade de partilhar aplicações com Todos

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

Esta definição controla se os utilizadores com o direito de acesso Criador de Ambientes podem partilhar aplicações de tela com "Todos numa organização. Quando a definição está definida para verdadeiro, apenas os utilizadores com função de administrador (administrador Dynamics 365, administrador de serviços Power Platform Microsoft Entra administrador de tenants) podem partilhar aplicações com Todos numa organização.

Independentemente do valor destas definições de inquilino, os criadores com o privilégio de partilha podem partilhar aplicações com grupos de segurança de qualquer tamanho. Este controlo determina apenas se a abreviatura Todos pode ser utilizada ao partilhar.

Alterar definição do inquilino para a capacidade de partilhar aplicações com Todos

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

Surface o conteúdo da mensagem de erro de governação da sua organização

Se especificar o conteúdo da mensagem de erro de governação para aparecer em mensagens de erro, o conteúdo da mensagem de erro será apresentado quando os criadores observarem que não têm permissão para partilhar aplicações com Todos. Consulte Comandos de conteúdos de mensagens de erro de governação do PowerShell.

Associar em fluxos de contexto a uma aplicação

Associar fluxos no contexto de uma aplicação à aplicação para criar uma dependência entre a aplicação e os fluxos. Para saber mais sobre fluxos de contexto, veja Que capacidades Power Automate estão incluídas nas licenças Power Apps?

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

EnvironmentName e FlowName podem ser encontrados no URL do fluxo:

  • Para um fluxo de Não Solução, o URL tem o aspeto:

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

    O GUID depois de environments/ é o EnvironmentName e o GUID depois de flows/ é o FlowName

  • Para um fluxo de Solução, o URL tem o aspeto:

    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
    

    O GUID depois de environments/ é o EnvironmentName e o GUID depois de flows/ é o FlowName

  • O AppName para uma aplicação de tela pode ser encontrado na página de detalhes da aplicação de tela.

    Captura de ecrã que mostra que o AppName para uma aplicação de tela pode ser encontrado na página de detalhes da aplicação de tela.

  • O AppName para uma aplicação condicionada por modelo pode ser encontrada no explorador de soluções.

    Captura de ecrã que mostra que o AppName para uma aplicação condicionada por modelo pode ser encontrada no explorador de soluções.

  • Para ver os exemplos, escreva: get-help Add-AdminFlowPowerAppContext -examples.

  • Para obter mais informações, escreva: get-help Add-AdminFlowPowerAppContext -detailed.

  • Para obter informações técnicas, escreva: get-help Add-AdminFlowPowerAppContext -full.

Remover fluxos em contexto de uma aplicação

Remova a dependência entre fluxos e uma aplicação com este comando do PowerShell. O Remove-AdminFlowPowerAppContext remove o contexto da aplicação do fluxo específico.

    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".

Comandos do Power Automate

Use estes comandos importantes para realizar a administração relacionada com o Power Automate.

Para uma lista completa de cmdlets de Power Automate e Power Apps para administradores, consulte Comece com o PowerShell para Administradores Power Platform.

Apresentar todos os fluxos

Get-AdminFlow

Devolve uma lista de todos os fluxos no inquilino.

Apresentar detalhes da função do proprietário do fluxo

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

Devolve os detalhes do proprietário do fluxo especificado.

Nota

Assim como Ambientes e PowerApps, FlowName é o identificador exclusivo (guid) que é diferente do nome a apresentar do fluxo.

Apresentar detalhes de utilizador do fluxo

Get-AdminFlowUserDetails –UserId $Global:currentSession.userId

Devolve os detalhes do utilizador relativamente à utilização de fluxo. Neste exemplo, estamos a utilizar o ID de utilizador do utilizador com sessão iniciada atualmente da sessão do PowerShell como entrada.

Remover detalhes de utilizador do fluxo

Remove-AdminFlowUserDetails –UserId 'UserId'

Elimina os detalhes de um utilizador de fluxo completamente a partir da base de dados do Microsoft. Todos os fluxos de que o utilizador de entrada é proprietário têm de ser eliminados para que os detalhes do utilizador do fluxo possam ser eliminados.

Nota

O campo UserId é o ID do Objeto do registo Microsoft Entra do utilizador, que pode ser encontrado no portal Azure sob Microsoft Entra ID>Users>Profile>Object ID. Tem de ser um administrador para aceder a estes dados a partir daqui.

Exportar todos os fluxos para um ficheiro CSV

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

Exporta todos os fluxos no seu inquilino para um ficheiro. csv de vista tabular.

Adicionar fluxos a soluções do Dataverse

Add-AdminFlowsToSolution -EnvironmentName <String>

Migra todos os fluxos de não solução no ambiente.

As variações de parâmetros podem ser usadas para migrar apenas fluxos específicos, adicionar a uma solução específica ou migrar apenas um número definido de fluxos de cada vez.

Para obter detalhes técnicos, consulte Add-AdminFlowsToSolution.

Listar fluxos de ação HTTP

Get-AdminFlowWithHttpAction -EnvironmentName <String>

As listas fluem com ações HTTP.

Nome de Exibição FlowName NomeDoAmbiente
Obter fatura HTTP fluxo-1 ambiente-1
Pagar fatura a partir da aplicação fluxo-2 ambiente-2
Reconciliar Conta fluxo-3 Ambiente-3

Comandos de conexão da API

Ver e gerir ligações API no seu inquilino.

Apresentar todas as Ligações nativas no ambiente predefinido

Get-AdminPowerAppEnvironment -Default | Get-AdminPowerAppConnection

Apresenta uma lista de todas as ligações API que tem no ambiente predefinido. As ligações nativas encontram-se no separador Dataverse>Connections no separador Power Apps.

Apresentar todos os conectores personalizados no inquilino

Get-AdminPowerAppConnector

Devolve uma lista de todos os detalhes do conector personalizado no inquilino.

Nota

Get-AdminPowerAppConnector não lista conectores personalizados que estão em uma solução. Esta é uma limitação conhecida.

Comandos de política de dados

Esses cmdlets controlam as políticas de dados em seu locatário.

Criar uma política de dados

New-DlpPolicy

Cria uma nova política de dados para o locatário do administrador conectado.

Recuperar uma lista de objetos de política de dados

Get-DlpPolicy

Obtém objetos da política para o inquilino do administrador com sessão iniciada.

Nota

  • Quando você exibe uma política de dados usando o PowerShell, o nome para exibição dos conectores é de quando a política de dados foi criada ou quando os conectores foram movidos pela última vez dentro da política. Novas alterações nos nomes de exibição dos conectores não são refletidas.
  • Quando você exibe uma política de dados usando o PowerShell, novos conectores no grupo padrão que não foram movidos não são retornados.

Para ambos os problemas conhecidos, uma solução é mover o conector afetado para outro grupo na política e, em seguida, movê-lo novamente para o grupo correto. Depois de fazer isso, cada um dos conectores é visível com seu nome correto.

Atualizar uma política de dados

Set-DlpPolicy

Atualiza os detalhes da política, tal como o nome a apresentar da política.

Remover uma política

Remove-DlpPolicy

Exclui uma política de dados.

Cmdlets de isenção de recursos de dados

Esses cmdlets permitem isentar ou não isentar um recurso específico de uma política.

Recuperar lista de recursos isentos existente para uma política de dados

Get-PowerAppDlpPolicyExemptResources -TenantId -PolicyName 

Criar uma nova lista de recursos isentos para uma política de dados

New-PowerAppDlpPolicyExemptResources -TenantId -PolicyName -NewDlpPolicyExemptResources 

Atualizar a lista de recursos isentos para uma política de dados

Set-PowerAppDlpPolicyExemptResources -TenantId -PolicyName -UpdatedExemptResources 

Remover a lista de recursos isentos de uma política de dados

Remove-PowerAppDlpPolicyExemptResources -TenantId -PolicyName 

Para isentar um recurso de uma política de dados, você precisa das seguintes informações:

  • ID de Inquilino (GUID)
  • ID da política de dados (GUID)
  • ID de Recurso (termina com um GUID)
  • Tipo de recurso

Pode obter o ID do recurso e escrever utilizando o cmdlets PowerShell Get-PowerApp para aplicações e Get-Flow para fluxos.

Exemplo de script de remoção

Para isentar o fluxo com o ID f239652e-dd38-4826-a1de-90a2aea584d9 e a aplicação com o ID 06002625-7154-4417-996e-21d7a60ad624, podemos executar os seguintes cmdlets:

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 aaaabbbb-0000-cccc-1111-dddd2222eeee -PolicyName bbbbcccc-1111-dddd-2222-eeee3333ffff -NewDlpPolicyExemptResources $exemptResources 
15. 
16. exemptResources 
17. --------------- 
18. {@{id=/providers/Microsoft.ProcessSimple/environments/Default-aaaabbbb-0000-cccc-1111-dddd2222eeee/flows/f239652e-dd38-4826-a1de-90a2aea584d9; type=Microsoft.ProcessSimple/environments/flows}, @{id=/providers/Microsoft.PowerApps/apps/06002625-7154-4417-996e-21d7a60ad.. 

Experiência de isenção de política de dados nos seguintes cenários

# Cenário Experiência
1 O usuário inicia um aplicativo que não está em conformidade com a política de dados, mas isento da política de dados. A inicialização do aplicativo prossegue com ou sem a aplicação da política de dados.
2 O Maker salva um aplicativo que não está em conformidade com a política de dados, mas isento de política de dados Com ou sem isenção de política de dados, a conformidade com a política de dados não bloqueia a operação de salvamento do aplicativo. O aviso de não conformidade da política de dados é mostrado independentemente da isenção da política de dados.
3 O Maker salva um fluxo que não está em conformidade com a política de dados, mas isento da política de dados Com ou sem isenção de política de dados, a conformidade com a política de dados não bloqueia a operação de economia de fluxo. O aviso de não conformidade da política de dados não é exibido.

Comandos de conteúdos de mensagens de erro de governação

Os cmdlets seguintes podem orientar os seus utilizadores finais para o material de referência de governação da sua organização. O comando inclui uma ligação para a documentação de governação e um contacto de governação para quando são solicitados por controlos de governação. Por exemplo, quando o conteúdo das mensagens de erro de governação é definido, aparece nas mensagens de aplicação de políticas de execução da política de dados do Power Apps.

Definir conteúdo de mensagens de erro de governação

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

O URL da mensagem de erro de governação pode ser mostrado de forma independente ou em conjunto. Pode ativar ou desativar a mensagem de erro de governação com o campo enabled.

Cenários de conteúdos de mensagens de erro de governação

# Cenário Disponibilidade
1 O utilizador lança uma aplicação criada com Power Apps que não cumpre a política de dados Disponibilidade geral
2 O Maker partilha uma aplicação Power Apps Canvas mas não tem privilégio de partilha Disponibilidade geral
3 O Maker partilha uma aplicação Power Apps canvas com Everyone mas não tem privilégios para partilhar com Everyone Disponibilidade geral
4 O Maker guarda uma aplicação criada com Power Apps que não cumpre a política de dados Disponibilidade geral
5 O Maker guarda um fluxo do Power Automate que não está em conformidade com políticas de dados Disponibilidade geral
6 O utilizador inicia uma aplicação sem associação a grupos de segurança no grupo de segurança associado ao ambiente do Dataverse Disponibilidade geral

Apresentar conteúdo de mensagens de erro de governação

Get-PowerAppDlpErrorSettings -TenantId 'TenantId' 

Atualizar conteúdo de mensagens de erro de governação

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

Aplicar política de dados para violar conexões - ambiente

Esses cmdlets permitem que você imponha a política de dados para violar conexões no nível do ambiente ou do locatário.

Aplicar políticas de dados para violar conexões

Você pode impor políticas de dados em conexões em um ambiente. A imposição desativa as conexões existentes que violam as políticas de dados e habilita todas as conexões desabilitadas anteriormente que não violam mais as políticas de dados.

Start-DLPEnforcementOnConnectionsInEnvironment -EnvironmentName [Environment ID]
Exemplo de script de imposição de ambiente
Start-DLPEnforcementOnConnectionsInEnvironment -EnvironmentName c4a07cd6-cb14-e987-b5a2-a1dd61346963 

Impor políticas de dados para violar conexões - locatário

Você pode impor políticas de dados em conexões no locatário. A imposição desativa as conexões existentes que violam as políticas de dados e habilita todas as conexões desabilitadas anteriormente que não violam mais as políticas de dados.

Start-DLPEnforcementOnConnectionsInTenant

Bloquear comandos de licenças de avaliação

Comandos:

Remove-AllowedConsentPlans
Add-AllowedConsentPlans
Get-AllowedConsentPlans

Os cmdlets dos planos de consentimento permitidos podem ser utilizados para adicionar ou remover acesso a um determinado tipo de plano de consentimento de um inquilino. Os planos de consentimento "interno" são licenças de teste ou planos de programador aos quais os utilizadores podem inscrever-se através de portais Power Apps/Power Automate/Power Automate para desktop. Os planos de consentimento de "Subscrição Ad-hoc" ou "Viral" são licenças de avaliação para as quais os utilizadores poderem inscrever-se em https://signup.microsoft.com. Os administradores podem atribuir utilizadores através do Microsoft Entra ID ou do portal de administração do Microsoft 365.

Por padrão, todos os tipos de planos de consentimento são permitidos em um locatário. No entanto, um administrador da Power Platform pode querer impedir que os usuários atribuam licenças de avaliação a si mesmos, mas mantenha a capacidade de atribuir licenças de avaliação em nome dos usuários. Esta regra pode ser realizada usando o comando Remove-AllowedConsentPlans -Types "Internal" e não permitindo a definição Update-MgPolicyAuthorizationPolicy -AllowedToSignUpEmailBasedSubscriptions no Microsoft Entra ID.

Se tiver questões

Se tiverem comentários, sugestões ou perguntas, publiquem-nas no fórum Administração Power Apps comunidade.