Vista geral das variáveis de ambiente

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. Isto é muitas vezes problemático; especialmente quando os valores precisam de ser alterados durante as operações de 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.

Nota

As novas capacidades para origens de dados estão agora a ser implementadas e podem ainda não estar disponíveis na sua região.

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

  • Fornecer novos valores de parâmetros ao importar soluções para outros ambientes.
  • Armazenar configuração para as origens de dados utilizadas em aplicações de tela e fluxos. Por exemplo, os parâmetros do site e da lista do SharePoint Online podem ser armazenados como variáveis de ambiente; permitindo assim ligar-se a diferentes sites e listas em diferentes ambientes sem a necessidade de modificar as aplicações e fluxos.
  • Embale e transporte a sua personalização e configuração em conjunto e efetue a respetiva gestão num único local.
  • Embale e transporte segredos, tais como credenciais utilizadas por diferentes componentes, separadamente dos componentes que os 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 de tela 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çarão 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 será importada.

Como funcionam?

As variáveis de ambiente podem ser criadas e modificadas dentro da interface da solução moderna, criada automaticamente ao ligar a determinadas origens de dados em aplicações de tela, ou utilizando código. Podem também ser importadas para um ambiente através de soluções. Uma vez que as variáveis de ambiente estão presentes num ambiente, podem ser usadas como entradas ao criar aplicações de tela, fluxos do Power Automate, ao desenvolver plug-ins e muitos outros lugares, como adicionar um dashboard do Power BI a uma aplicação condicionada por modelo. Quando estes tipos de objetos utilizam 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 uma variável de ambiente numa solução

  1. Inicie sessão no Power Apps (make.powerapps.com) e, em seguida, no painel esquerdo, selecione Soluções. 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 a Apresentar. Introduza um nome para a variável de ambiente.

    • Nome. 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, também terá de selecionar o conector, uma ligação válida para o conector selecionado e o tipo de parâmetro. No entanto, a ligação não é armazenada como parte da variável de ambiente. A ligação só é utilizada para obter valores de parâmetros disponíveis, tais como os sites do SharePoint a que tem acesso ou as listas associadas a um site. Para certos parâmetros, como listas do SharePoint, também terá de selecionar uma variável de ambiente de origem de dados principal, como o site do SharePoint. Uma vez guardados, estes estarão relacionados na base de dados.
      • Se Segredo for o tipo selecionado, são necessárias informações adicionais para preparar e configurar o Azure Key Vault para permitir que o Power Platform aceda ao segredo.
    • Current Value. Também conhecido como o valor. Esta propriedade é opcional e faz parte da tabela de valor variável do ambiente. Quando um valor está presente, é utilizado, 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 poderá listar a sua oferta no AppSource com um valor predefinido. 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.

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.

A partir de uma atualização em 7 de dezembro de 2023, todos os valores de variáveis ​​de ambiente estão visíveis ao importar soluções (ou ao usar Pipelines para implementar). Variáveis de ambiente sem um valor predefinido ou valor ser-lhes-á pedido que forneçam um valor, mas aquelas estão pré-preenchidas com uma etiqueta abaixo da área de texto que denota 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, um aviso de Acesso negado pode aparecer se o criador da importação não tiver acesso à ligação ou à origem usada para a variável de ambiente. Este é um aviso sem bloqueio, mas algo a ter em consideração, dependendo de como planeia usar a variável de ambiente no ambiente de destino.
  • Pode retirar o valor da sua solução antes de exportar a solução. Isto garante que o valor existente permanecerá 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. Este é um lembrete para definir 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 nos direitos de acesso de Criador de Ambientes e Utilizador Básico por predefinição. Mais informações: Segurança no Dataverse.

Atribuição de nomes

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 apresentar variáveis do ambiente dificultam a diferenciação e a utilização de variáveis ambientais. 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 a nome a apresentar da variável de ambiente for alterado, então o programador 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.
  • Para usar variáveis de ambiente com sucesso com listas do 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.

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 do SharePoint Online não armazena quaisquer informações sobre sites, listas ou bibliotecas de documentos. Por isso, chamar o conector requer uma ligação válida e alguns parâmetros adicionais.

Podem as variáveis de ambiente de origem de dados podem ser utilizadas com ligações partilhadas, como o SQL Server com autenticação SQL?

Geralmente, não. As ligações partilhadas com o SQL Server armazenam os parâmetros necessários para ligar a dados dentro da ligação. 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 de ambiente de origem de dados são utilizadas para conectores que dependem da autenticação baseada no utilizador, como o ID do Microsoft Entra, porque os parâmetros não podem ser derivados da ligação. Por estas razões, a autenticação com o SQL Server, que é uma ligação partilhada, não utilizará variáveis de ambiente de origem de dados.

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.

E se alguém eliminar inadvertidamente um valor?

Se ainda não for impedido pelo sistema de dependência, o runtime usa o último valor conhecido como contingência.

Se um valor for alterado, quando é que o novo valor é usado em aplicações de tela e fluxos de cloud?

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

São necessárias licenças premium?

Não Embora o ALM requeira o Dataverse (ou o Dynamics 365 for Customer Engagement), não é necessária a utilização de 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 120 MB. Consulte Criar uma solução

Podem os nomes a apresentar e as descrições de variáveis do ambiente serem 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 a chave: pares de valor e quando o valor provavelmente precisa de ser diferente noutros 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 é atribuído automaticamente um valor de ligação diferente daquele que pretendo ser atribuído automaticamente quando importo?

Em alguns casos em que existem várias ligações disponíveis para uma única variável de ambiente (tipo de origem de dados), existe uma implementação por design para selecionar a primeira ligação na lista de ligações disponíveis para a variável de ambiente. 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

Usar variáveis de ambiente de origem de dados em aplicações de tela
Usar variáveis de ambiente em fluxos de cloud da solução Power Automate
Referência tabela/entidade EnvironmentVariableDefinition
Exemplos da API Web
Usar variáveis de ambiente de origem de dados em Aplicações de tela
Usar variáveis de ambiente em fluxos de cloud da solução Power Automate
Utilizar segredos do Azure Key Vault
Suporte de variáveis de ambiente em conectores personalizados
Blogue Power Apps: Variáveis ambientais disponíveis na pré-visualização!

Nota

Pode indicar-nos as suas preferências no que se refere ao idioma da documentação? Responda a um breve inquérito. (tenha em atenção que o inquérito está em inglês)

O inquérito irá demorar cerca de sete minutos. Não são recolhidos dados pessoais (declaração de privacidade).