Partilhar via


Descrição geral das variáveis de ambiente do Power Platform

As variáveis de ambiente permitem que o cenário básico de gestão do ciclo de vida das aplicações (ALM) mova uma aplicação entre ambientes do Power Platform. Neste cenário, a aplicação permanece exatamente a mesma, exceto algumas das principais referências de aplicação externas (tais como tabelas, ligações e chaves) que são diferentes entre o ambiente de origem e o ambiente de destino. A aplicação requer que a estrutura das tabelas ou ligações seja exatamente a mesma entre os ambientes de origem e de destino, com algumas diferenças. As variáveis de ambiente permitem-lhe especificar quais destas diferentes referências externas devem ser atualizadas à medida que a aplicação é movida entre ambientes.

As variáveis de ambiente armazenam as chaves e valores dos parâmetros, que depois servem como entrada para vários outros objetos de aplicação. Separar os parâmetros dos objetos que consomem permite alterar os valores dentro do mesmo ambiente ou quando migra soluções para outros ambientes. A alternativa é deixar valores de parâmetros codificados dentro dos componentes que os utilizam. Esta abordagem é muitas vezes problemática; especialmente quando os valores precisam de ser alterados durante operações ALM. Como as variáveis de ambiente são componentes de solução, pode transportar as referências (chaves) e alterar os valores quando as soluções são migradas para outros ambientes.

Vantagens da utilização de variáveis de ambiente:

  • Fornecer novos valores de parâmetros ao importar soluções para outros ambientes.
  • Guardar configuração para as origens de dados utilizadas em aplicações de canvas e fluxos. Por exemplo, parâmetros do site e da lista do SharePoint Online podem ser armazenados como variáveis de ambiente. Esta abordagem permite que se ligue a diferentes sites e listas em ambientes diferentes, sem a necessidade de modificar as aplicações e os fluxos.
  • Embale e transporte a sua personalização e configuração em conjunto e efetue a respetiva gestão num único local.
  • Embalar e transportar segredos, como as credenciais utilizadas por diferentes componentes, separadamente dos componentes que as utilizam.
  • Uma variável de ambiente pode ser usada em muitos componentes de solução diferentes – sejam eles o mesmo tipo de componente ou diferente. Por exemplo, uma aplicação Canvas e um fluxo podem usar a mesma variável de ambiente. Quando o valor da variável de ambiente precisa de ser alterado, basta alterar um valor.
  • Além disso, se precisar de descontinuar uma origem de dados em ambientes de produção, pode atualizar os valores das variáveis de ambiente com informação para a nova origem de dados. As aplicações e fluxos não necessitam de modificação e começam a utilizar a nova origem de dados.
  • Suportado pelas ferramentas SolutionPackager e DevOps, permitem a integração contínua e a entrega contínua (CI/CD).
  • As variáveis de ambiente podem ser desempacotadas e armazenadas no controlo de origem. Também pode armazenar diferentes ficheiros de valores de variáveis de ambiente para a configuração separada necessária em diferentes ambientes. O Empacotador de Soluções pode então aceitar o ficheiro correspondente ao ambiente para o qual a solução é importada.

Como é que as variáveis de ambiente funcionam?

As variáveis de ambiente podem ser criadas e modificadas na interface de solução moderna. Também podem ser criadas automaticamente quando se ligam a certas fontes de dados em aplicações canvas ou com código. Podem também ser importadas para um ambiente através de soluções. As variáveis de ambiente podem ser usadas como entradas ao criar aplicações canvas, fluxos do Power Automate, plug-ins e adicionar painéis de Power BI a aplicações orientadas a modelos. Quando utiliza variáveis de ambiente, os valores são então derivados das variáveis de ambiente e podem ser alterados quando as soluções são importadas para outros ambientes.

Criar manualmente uma variável de ambiente numa solução

  1. Iniciar sessão em Power Apps (make.powerapps.com) e depois, no painel esquerdo, selecionar Solutions. Se o item não estiver no painel lateral, selecione ...Mais e, em seguida, selecione o item pretendido.
  2. Abra a solução que quiser ou crie uma nova.
  3. Na barra de comandos, selecione Nova>Mais e, em seguida, selecione Variável de ambiente.
  4. No painel direito, preencha as seguintes colunas e, em seguida, selecione Guardar:
    • Nome para exibição. Introduza um nome para a variável de ambiente.

    • Name. O nome exclusivo é gerado automaticamente a partir do Nome a apresentar, mas pode alterá-lo.

    • Tipo de Dados. Selecione de Número decimal, Texto, JSON, Duas opções, Origem de dados ou Segredo.

      Nota

      • Se Origem de dados for o tipo selecionado, precisa de selecionar o conector, uma ligação válida para o conector selecionado e o tipo de parâmetro. A ligação não é armazenada como parte da variável de ambiente. A variável de ambiente armazena informações que não estão na ligação, mas são necessárias para ligar corretamente o Power Apps ao servidor e à tabela certos. A ligação é usada apenas para recuperar valores de parâmetros disponíveis, como os sites SharePoint a que tem acesso, ou as listas associadas a um site.
      • Se Secret for o tipo selecionado, são necessários dados adicionais para configurar o Azure Key Vault, permitindo que o Power Platform aceda ao segredo.
    • Valor Atual. Também conhecido como o valor. Esta propriedade é opcional e faz parte da tabela de valor variável do ambiente. É utilizado um valor definido, mesmo que um valor predefinido também esteja presente. Remova o valor da solução se não pretender utilizá-lo no ambiente seguinte. Os valores também são separados em ficheiros JSON separados dentro do ficheiro solution.zip exportado e podem ser editados offline. Mais informações: Como remover um valor de uma variável do ambiente?

    • Valor Predefinido. Esta coluna faz parte da tabela de definição variável do ambiente e não é obrigatória. O valor predefinido é utilizado se não houver valor atual.

      A separação do valor predefinido e do valor atual permite-lhe servir a definição e o valor predefinido separadamente do valor. Por exemplo, um editor de aplicações pode listar a sua oferta no Marketplace com um valor padrão. Em seguida, opcionalmente, o cliente pode fornecer um novo valor. Quando o editor da aplicação publicar atualizações à aplicação, o valor definido pelo cliente não será substituído.

      Nova variável de ambiente.

      Nota

      Não pode existir um valor sem uma definição. A interface só permite a criação de um valor por definição.

O Power Apps pode criar automaticamente variáveis de ambiente

No separador Geral das definições de Power Apps:

  • Ative a opção Criar automaticamente variáveis de ambiente ao adicionar origens de dados. Agora, quando adiciona uma nova origem de dados à sua aplicação, esta adiciona uma variável de ambiente para si.

    Criar automaticamente variável de ambiente.

Origens de dados diferentes

Origens de dados diferentes permitem diferentes tipos de variáveis de ambiente.

Microsoft Dataverse

O Power Apps liga-se nativamente ao Dataverse. Não precisa de uma variável de ambiente para tabelas no seu ambiente atual. Quando se liga ao Dataverse, a sua aplicação automaticamente procura exatamente pelo mesmo nome de tabela em qualquer ambiente onde o porta. Desde que a estrutura do nome da tabela seja a mesma no ambiente de destino e no ambiente original, funciona.

Se usares uma tabela externa de um ambiente diferente (via Change Environment), então o Power Apps assume que queres sempre referir-te à mesma tabela exata. Precisas de uma variável de ambiente se precisares que essa tabela externa seja uma tabela externa diferente quando passares de desenvolvimento para teste ou para produção. É mais fácil permitir que o Power Apps crie automaticamente a variável de ambiente para si. (Se adicionou a tabela anteriormente à sua aplicação, ative o comutador de definições, largue a tabela externa e adicione-a novamente.)

Ao adicionar a tabela externa à sua aplicação, escolha o separador Avançado para selecionar a variável de ambiente.

Variável do ambiente externo do Dataverse.

SharePoint

O SharePoint suporta apenas ligações Microsoft Entra. Assim, para o SharePoint, além de uma ligação válida, é necessária uma variável de ambiente separada para Site e Lista.

Para usar com sucesso variáveis de ambiente com listas SharePoint:

  • O nome a apresentar e o nome lógico de cada coluna correspondente nos ambientes de origem e de destino têm de corresponder.
  • As variáveis de ambiente para SharePoint devem ter metadados correspondentes. O SharePoint tem identificadores internos que podem não coincidir entre os ambientes-alvo. Por exemplo, se criar uma lista com o mesmo nome e colunas num ambiente de destino, os nomes internos não corresponderão. Os metadados coincidem sempre se duplicar um site SharePoint e o copiar para o ambiente de destino.

SQL Server

O SQL Server suporta muitos tipos diferentes de autenticação e ligações. Use variáveis de ambiente para ligações Microsoft Entra. É necessária uma variável de ambiente separada para o servidor e para a base de dados. O aplicativo é vinculado a nomes de tabela específicos para que eles sejam considerados os mesmos entre ambientes.

Não uses variáveis de ambiente para ligações partilhadas, como autenticação SQL básica com SQL Server. Use referências de ligação para informações tradicionalmente passadas como parte de uma cadeia de ligação. Os parâmetros básicos de autenticação SQL fazem todos parte da connection string. Por exemplo, o nome de Servidor e Base de Dados são fornecidos ao criar a ligação e, portanto, são sempre derivados da ligação.

As variáveis do ambiente da fonte de dados são usadas para conectores com autenticação, como o Microsoft Entra. Nestes tipos de ligações, o Power Apps só tem um utilizador identificado. O Power Apps não consegue deduzir que serviço ou tabela pretende usar a partir da ligação.

Introduza novos valores enquanto importa soluções

A interface moderna de importação de soluções inclui a capacidade de introduzir valores para variáveis de ambiente. Isto define a propriedade de valor na tabela environmentvariablevalue.

Os valores das variáveis de ambiente são visíveis ao importar soluções ou ao usar Pipelines para implementação. As variáveis de ambiente sem um valor predefinido solicitam um valor, enquanto as restantes são pré-preenchidas com uma etiqueta abaixo da área de texto que indica a origem do valor: valor da solução, valor do ambiente de destino ou valor predefinido.

Visibilidade de variáveis de ambiente durante a importação da solução.

Nota

  • Em alguns casos, para valores específicos de variáveis de ambiente da origem de dados, poderá aparecer um aviso de Acesso negado se o criador importador não tiver acesso à ligação ou à origem usada para a variável de ambiente. Este é um aviso não bloqueador, mas algo a ser observado dependendo de como planeia usar a variável de ambiente no ambiente de destino.
  • Pode remover o valor da sua solução antes de exportar a solução. Isto garante que o valor existente permanece no seu ambiente de programação, mas não será exportado na solução. Esta abordagem permite fornecer um novo valor enquanto importa a solução para outros ambientes. Mais informações: Como remover um valor de uma variável do ambiente?

Notificações

É apresentada uma notificação quando as variáveis de ambiente não têm valores. Defina os valores para que os componentes dependentes de variáveis de ambiente não falhem.

Segurança

A tabela environmentvariabledefinition é propriedade do utilizador ou da equipa. Quando criar uma aplicação que utilize variáveis de ambiente, certifique-se de que atribui aos utilizadores o nível de privilégio adequado a esta tabela. A permissão para a tabela environmentvariablevalue é herdada da tabela environmentvariabledefinition principal e, portanto, não requer privilégios separados. Os privilégios para tabelas environmentvariabledefinition estão incluídos nas funções de segurança de Criador de Ambientes e Utilizador Básico por predefinição. Mais informações: Segurança no Dataverse.

Nomeação

Certifique-se de que os nomes variáveis do ambiente são únicos para que possam ser referenciados com precisão. Duplicar os nomes a exibir das variáveis de ambiente dificulta a diferenciação e utilização dessas variáveis. Certifique-se de que os nomes variáveis do ambiente são únicos para que possam ser referenciados com precisão. Os nomes $authentication e $connection são parâmetros especialmente reservados para os fluxos e devem ser evitados. A gravação do fluxo é bloqueada se forem utilizadas variáveis de ambiente com esses nomes. Se uma variável de ambiente for usada num fluxo e o nome a apresentar da variável de ambiente for alterado, então o designer mostra os tokens antigos e novos do nome a apresentar para ajudar na identificação. Ao atualizar o fluxo, recomendamos que remova a referência da variável do ambiente e a adicione novamente.

Limitações atuais

  • A validação de valores de variáveis de ambiente ocorre dentro das interfaces de utilizador e dentro dos componentes que os utilizam, mas não dentro do Dataverse. Portanto, certifique-se de que os valores adequados são definidos se estiverem a ser modificados através do código.
  • Tarefas das Ferramentas de Compilação do Power Platform ainda não estão disponíveis para gerir variáveis de ambiente de origem de dados. No entanto, tal não bloqueia a sua utilização dentro das ferramentas fornecidas pela Microsoft e dentro de sistemas de controlo de origens.
  • Interagir com variáveis de ambiente através de código personalizado requer uma chamada à API para obter os valores; não há uma cache exposta para o código não pertencente à Microsoft usar.
  • As variáveis de ambiente estão limitadas a um máximo de 2.000 carateres.

Perguntas mais frequentes

Por que não consigo ver o valor da minha variável de ambiente?

Se a variável de ambiente estiver numa solução gerida, não conseguirá ver o valor, a menos que procure dentro da Solução predefinida. Este comportamento ocorre por design, pois o valor da variável de ambiente é uma personalização não gerida.

Como posso ver onde estão a ser utilizadas variáveis de ambiente?

Seja através da seleção de Mostrar dependências na interface da solução enquanto cria componentes, ou no controlo de origens e no ficheiro da solução vendo os metadados da aplicação ou do fluxo.

As variáveis de ambiente de origem de dados são as mesmas que as ligações?

Não Embora estejam relacionadas, uma ligação representa uma credencial ou autenticação requerida para interagir com o conector. As variáveis de ambiente de origem de dados armazenam parâmetros que são requeridos por uma ou mais ações no conector e estes parâmetros variam frequentemente dependendo da ação. Por exemplo, uma ligação ao SharePoint Online não armazena qualquer informação sobre sites, listas ou bibliotecas de documentos. Por isso, chamar o conector requer uma ligação válida e mais alguns parâmetros.

O meu pipeline ALM automatizado pode utilizar diferentes ficheiros de valor para diferentes ambientes?

Sim. O Empacotador de Soluções aceita o nome do ficheiro como parâmetros de entrada para que o seu pipeline possa embalar um ficheiro de valores diferentes na solução, dependendo do tipo de ambiente contra o qual está a executar.

Devo incluir o valor na minha solução?

Não As variáveis de ambiente destinam-se a ser utilizadas por aplicações que necessitam de ter valores diferentes em ambientes diferentes onde a solução é implementada. As definições de variáveis de ambiente devem ser incluídas na sua solução, mas os valores devem ser fornecidos para o ambiente de destino durante a implementação. Este comportamento resulta na definição da variável de ambiente ser um objeto de solução gerido no ambiente de destino, enquanto a variável de ambiente é um registo não gerido.

Por que não consigo eliminar um valor no meu ambiente?

Se o valor foi incluído numa solução gerida, a única maneira de eliminar o valor é atualizar a solução no ambiente de origem para excluir o valor e, em seguida, exportar uma nova versão da solução. Esta nova versão pode então ser importada para o ambiente utilizando uma operação de atualização (não uma atualização), resultando na eliminação do registo de valor.

E se alguém eliminar inadvertidamente um valor?

Caso ainda não seja impedido pelo sistema de dependência, o runtime usa o último valor conhecido como valor de recurso.

Se um valor for alterado, quando é que o novo valor passa a ser utilizado em aplicações canvas e fluxos de nuvem?

Pode demorar até uma hora para aplicar totalmente as variáveis de ambiente atualizadas, porque o valor é enviado para as aplicações e fluxos de forma assíncrona.

São necessárias licenças premium?

Não Embora o ALM exija o Dataverse (ou aplicações do Dynamics 365), não é obrigatório usar conectores premium. A única ressalva é se estiver a usar o conector do Dataverse para interagir com variáveis de ambiente, como faria com outros registos de dados, como contas ou contactos. Anteriormente, esta era a única forma de utilizar variáveis de ambiente em aplicações de tela e fluxos.

Existe um limite para o número de variáveis de ambiente que posso ter?

Não No entanto, o tamanho máximo de uma solução é de 95 MB. Mais informações: Criar uma solução

Podem os nomes apresentados e as descrições das variáveis de ambiente ser localizados?

Sim.

Devo utilizar variáveis de ambiente em vez de armazenar dados de configuração em tabelas personalizadas?

Sim, se os seus dados de configuração não forem relacionais. As variáveis de ambiente devem ser utilizadas para pares chave-valor e quando o valor provavelmente precisa ser diferente em outros ambientes. Outras ferramentas, como o utilitário de Migração de Configuração, são mais adequadas para a migração de dados de configuração relacional armazenados dentro de tabelas personalizadas. Ao contrário de outros dados de configuração, as variáveis de ambiente são migradas dentro de soluções e, portanto, são muito mais simples de gerir e com um melhor desempenho de importação.

Porque é que a minha ligação não é guardada para variáveis de ambiente da origem de dados?

As ligações são utilizadas apenas para gerar a interface do utilizador. Por exemplo, para recuperar nomes amigáveis para listas do SharePoint associadas a um site. Ao editar uma variável de ambiente de origem de dados, certifique-se de que seleciona uma ligação com acesso à origem de dados. Se já não tiver acesso à ligação, pode introduzir um valor manualmente. Por exemplo, introduza a URL do site SharePoint ou o identificador único (GUID) para uma lista.

Quando existem múltiplas ligações disponíveis para uma única variável de ambiente do tipo origem de dados, existe uma implementação por design para selecionar a primeira ligação na lista de ligações. Como, normalmente, só existe uma ligação associada a uma variável de ambiente, habitualmente, isto não é algo que precise de ser validado. Além disso, com as recentes alterações à visibilidade do valor da variável de ambiente, é mais fácil de validar após a importação.

Como remover um valor de uma variável do ambiente?

É melhor remover o valor de uma variável de ambiente da sua solução antes de exportar a solução. Em seguida, o valor existente permanece no seu ambiente de programação, mas não é exportado na solução. Esta abordagem permite fornecer um novo valor enquanto importa a solução para outro ambiente.

Para remover o valor, siga estes passos:

  1. Na solução onde se encontra a variável de ambiente selecione a variável de ambiente para exibir as propriedades.

  2. No Valor Atual, selecione ...>Remover desta solução.

    Remover o valor de uma variável de ambiente

Posso utilizar variáveis de ambiente em conectores personalizados?

Sim. Suporte de variáveis de ambiente em conectores personalizados

Consulte também

Utilizar as variáveis de ambiente da fonte de dados em aplicações canvas
Utiliza variáveis de ambiente em fluxos na nuvem da solução Power Automate
EnvironmentVariableDefinition tabela/referência de entidade
Amostras de API Web
Usar variáveis de ambiente de fonte de dados em aplicações Canvas
Usar variáveis de ambiente em fluxos de solução cloud do Power Automate
Usar segredos do Azure Key Vault
Suporte a variáveis de ambiente em conectores personalizados
Power Apps Blog: Variáveis de ambiente disponíveis em pré-visualização!