Umgebungsvariablen für Power Platform – Übersicht
Umgebungsvariablen ermöglichen das grundlegende Szenario der Lebenszyklusverwaltung von Anwendungen (Application Lifecycle Management, ALM) zum Verschieben einer Anwendung zwischen Power Platform-Umgebungen. In diesem Szenario bleibt die Anwendung bis auf einige wichtige externe Anwendungsreferenzen (z. B. Tabellen, Verbindungen und Schlüssel), die sich in der Quellumgebung und der Zielumgebung unterscheiden, genau gleich. Die Anwendung erfordert, dass die Struktur der Tabellen oder Verbindungen zwischen der Quell- und der Zielumgebung mit einigen Unterschieden genau gleich ist. Mit Umgebungsvariablen können Sie angeben, welche dieser verschiedenen externen Referenzen aktualisiert werden sollen, wenn die Anwendung zwischen Umgebungen verschoben wird.
Umgebungsvariablen speichern die Parameterschlüssel und -werte, die dann als Eingabe für verschiedene andere Anwendungsobjekte dienen. Durch Trennen der Parameter von den verwendenden Objekten können Sie die Werte in derselben Umgebung oder bei der Migration von Lösungen in andere Umgebungen ändern. Die Alternative besteht darin, fest codierte Parameterwerte in den Komponenten zu belassen, die sie verwenden. Dies ist oft problematisch und gilt insbesondere dann, wenn die Werte während ALM-Vorgängen geändert werden müssen. Da Umgebungsvariablen Lösungskomponenten sind, können Sie die Referenzen (Schlüssel) transportieren und die Werte ändern, wenn Lösungen in andere Umgebungen migriert werden.
Anmerkung
Neue Funktionen für Datenquellen werden gerade bereitgestellt und sind in Ihrer Region möglicherweise noch nicht verfügbar.
Vorteile der Verwendung von Umgebungsvariablen:
- Geben Sie beim Importieren von Lösungen in andere Umgebungen neue Parameter ein.
- Speichern Sie die Konfiguration für die Datenquellen, die in Canvas-Apps und Flows verwendet werden. Beispielsweise können SharePoint Online-Site- und Listenparameter als Umgebungsvariablen gespeichert werden. Auf diese Weise können Sie eine Verbindung zu verschiedenen Websites und Listen in verschiedenen Umgebungen herstellen, ohne die Apps und Flows ändern zu müssen.
- Verpacken und transportieren Sie Ihre Anpassungen und Konfigurationen gemeinsam und verwalten Sie sie an einem einzigen Ort.
- Verpacken und transportieren Sie Geheimnisse, wie z.B. Anmeldeinformationen, die von verschiedenen Komponenten verwendet werden, getrennt von den Komponenten, die sie nutzen.
- Eine Umgebungsvariable kann in vielen verschiedenen Lösungskomponenten verwendet werden - unabhängig davon, ob es sich um denselben Komponententyp handelt oder nicht. Beispielsweise können eine Canvas-App und ein Flow dieselbe Umgebungsvariable verwenden. Wenn sich der Wert der Umgebungsvariablen ändern muss, müssen Sie nur einen Wert ändern.
- Wenn Sie in Produktionsumgebungen eine Datenquelle einstellen müssen, können Sie die Umgebungsvariablenwerte mit Informationen für die neue Datenquelle aktualisieren. Die Apps und Flows müssen nicht geändert werden und verwenden die neue Datenquelle.
- Unterstützung durch SolutionPackager und DevOps-Tools ermöglicht die fortlaufende Integration und fortlaufende Lieferung (CI/CD).
- Die Umgebungsvariablen können entpackt und in der Quellcodeverwaltung gespeichert werden. Sie können auch verschiedene Umgebungsvariablen-Wertedateien für die separate Konfiguration speichern, die in verschiedenen Umgebungen benötigt wird. Solution Packager kann dann die Datei akzeptieren, die der Umgebung entspricht, in die die Lösung importiert wird.
Wie funktionieren Umgebungsvariablen?
Umgebungsvariablen können innerhalb der modernen Lösungsoberfläche erstellt und geändert werden. Diese werden automatisch erstellt, wenn eine Verbindung zu bestimmten Datenquellen in Canvas-Apps oder Code verwendet wird. Sie können auch über Lösungen in eine Umgebung importiert werden. Sobald Umgebungsvariablen in einer Umgebung vorhanden sind, können sie als Eingaben beim Erstellen von Canvas-Apps, Power Automate-Flows, beim Entwickeln von Plug-Ins und an vielen anderen Stellen wie beim Hinzufügen eines Power BI-Dashboards zu einer modellgesteuerten App. Wenn diese Arten von Objekten Umgebungsvariablen verwenden, werden die Werte von den Umgebungsvariablen abgeleitet und können geändert werden, wenn Lösungen in andere Umgebungen importiert werden.
Erstellen Sie eine Umgebungsvariable in einer Lösung
- Melden Sie sich bei Power Apps (make.powerapps.com) an und wählen Sie dann im linken Bereich Lösungen. Wenn sich das Element nicht im linken Seitenbereich befindet, wählen Sie …Mehr und dann das gewünschte Element aus.
- Öffnen Sie die gewünschte Lösung oder erstellen Sie eine neue Lösung.
- Wählen Sie in der Befehlsleiste Neu>Mehr und anschließend Umgebungsvariable.
- Füllen Sie im rechten Fensterbereich die folgenden Spalten aus und wählen Sie dann Speichern:
Anzeigename. Geben Sie einen Namen für die Umgebungsvariable ein.
Name Der eindeutige Name wird automatisch aus Anzeigename generiert, aber Sie können ihn ändern.
Datentyp. Wählen Sie aus Dezimalzahl, Text, JSON, Zwei Optionen, Datenquelle, oder Geheimnis.
Anmerkung
- Wenn Datenquelle der ausgewählte Typ ist, müssen Sie auch den Konnektor, eine gültige Verbindung für den ausgewählten Konnektor und den Parametertyp auswählen. Die Verbindung wird jedoch nicht als Teil der Umgebungsvariable gespeichert. Die Verbindung wird nur zum Abrufen verfügbarer Parameterwerte wie SharePoint-Websites, auf die Sie Zugriff haben, oder die mit einer Website verknüpften Listen verwendet. Für bestimmte Parameter, wie z.B. SharePoint-Listen, müssen Sie auch eine übergeordnete Umgebungsvariable für die Datenquelle auswählen, wie z.B. die SharePoint-Site. Nach dem Speichern werden diese in der Datenbank miteinander verknüpft.
- Wenn Geheimnis der ausgewählte Typ ist, sind zusätzliche Informationen zum Festlegen und Konfigurieren von Azure Key Vault erforderlich, um Power Platform den Zugriff auf das Geheimnis zu erlauben.
Current Value. Auch Wert genannt. Diese Eigenschaft ist optional und gehört zur Tabelle der Umgebungsvariablenwerte. Wenn ein Wert vorhanden ist, wird er verwendet, auch wenn ein Standardwert ebenfalls vorhanden ist. Entfernen Sie den Wert aus Ihrer Lösung, wenn Sie ihn nicht in der folgenden Umgebung verwenden möchten. Die Werte werden auch in separate JSON-Dateien innerhalb der exportierten Datei solution.zip aufgeteilt und können offline bearbeitet werden. Mehr Informationen: Wie entferne ich einen Wert aus einer Umgebungsvariablen?
Standardwert. Diese Spalte gehört zur Definitionstabelle für Umgebungsvariablen und ist nicht erforderlich. Der Standardwert wird verwendet, wenn kein aktueller Wert vorhanden ist.
Durch die Trennung von Standardwert und aktuellem Wert können Sie die Definition und den Standardwert getrennt vom Wert warten. Ein Anwendungsherausgeber kann beispielsweise sein Angebot in AppSource mit einem Standardwert angeben. Optional kann der Kunde dann einen neuen Wert angeben. Wenn der Herausgeber der Anwendung Aktualisierungen der Anwendung veröffentlicht, wird der von der Kundschaft festgelegte Wert nicht überschrieben.
Anmerkung
Ein Wert kann nicht ohne eine Definition bestehen. Die Schnittstelle lässt nur die Erstellung von einem Wert pro Definition zu.
Geben Sie beim Importieren von Lösungen neue Werte ein
Die Importschnittstelle der modernen Lösung ermöglicht das Eingeben von Werten für Umgebungsvariablen. Dadurch wird die Werteeigenschaft für die environmentvariablevalue
-Tabelle festgelegt.
Ab einer Aktualisierung am 7. Dezember 2023 sind alle Umgebungsvariablenwerte beim Importieren von Lösungen sichtbar (oder wenn Pipelines zum Bereitstellen verwendet werden). Bei Umgebungsvariablen ohne Standardwert oder Wert wird zur Eingabe eines Werts aufgefordert, andernfalls werden sie mit einer Beschriftung unter dem Textbereich vorab ausgefüllt, welche die Quelle des Werts angibt: Lösungswert, Zielumgebungswert oder Standardwert.
Anmerkung
- In einigen Fällen kann für bestimmte Werte von Datenquellenumgebungsvariablen eine Warnung Zugriff verweigert angezeigt werden, wenn der importierende Hersteller keinen Zugriff auf die Verbindung oder Quelle hat, die für die Umgebungsvariable verwendet wird. Dies ist eine nicht blockierende Warnung, die Sie jedoch beachten sollten, je nachdem, wie Sie die Umgebungsvariable in der Zielumgebung verwenden möchten.
- Sie können den Wert aus Ihrer Lösung entfernen, bevor Sie die Lösung exportieren. Dadurch wird sichergestellt, dass der vorhandene Wert in Ihrer Entwicklungsumgebung verbleibt, jedoch nicht in die Lösung exportiert wird. Dieser Ansatz lässt zu, dass beim Importieren der Lösung in andere Umgebungen ein neuer Wert angegeben wird. Mehr Informationen: Wie entferne ich einen Wert aus einer Umgebungsvariablen?
Benachrichtigungen
Eine Benachrichtigung wird angezeigt, wenn die Umgebungsvariablen keine Werte aufweisen. Dies ist eine Erinnerung, die Werte so festzulegen, dass von Umgebungsvariablen abhängige Komponenten nicht fehlschlagen.
Sicherheit
Die Tabelle environmentvariabledefinition
ist im Besitz des Benutzers oder des Teams. Wenn Sie eine Anwendung erstellen, die Umgebungsvariablen verwendet, stellen Sie sicher, dass Sie den Benutzern die entsprechende Berechtigungsstufe für diese Tabelle zuweisen. Die Berechtigung für die environmentvariablevalue
-Tabelle wird von der übergeordneten environmentvariabledefinition
-Tabelle geerbt und erfordert daher keine separaten Berechtigungen. Die Berechtigungen für die environmentvariabledefinition
-Tabelle sind standardmäßig in den Sicherheitsrollen Umgebungsersteller und Basisbenutzer enthalten. Weitere Informationen: Sicherheit in Dataverse.
Benennung
Stellen Sie sicher, dass die Namen der Umgebungsvariablen eindeutig sind, damit sie genau referenziert werden können. Doppelte Anzeigenamen für Umgebungsvariablen erschweren die Unterscheidung und Verwendung von Umgebungsvariablen. Achten Sie darauf, dass die Namen der Umgebungsvariablen eindeutig sind, damit sie korrekt referenziert werden können. Die Namen $authentication und $connection sind speziell für Flows reservierte Parameter und sollten vermieden werden. Die Speicherung von Flows wird blockiert, wenn Umgebungsvariablen mit diesen Namen verwendet werden. Wenn eine Umgebungsvariable in einem Flow verwendet wird und der Anzeigename der Umgebungsvariablen geändert wird, zeigt der Designer sowohl den alten als auch den neuen Anzeigenamen an, um die Identifizierung zu erleichtern. Bei der Aktualisierung des Flows sollten Sie den Verweis auf die Umgebungsvariable entfernen und erneut hinzuzufügen.
Aktuelle Einschränkungen
- Die Validierung von Umgebungsvariablenwerten erfolgt innerhalb der Benutzeroberflächen und innerhalb der Komponenten, die sie verwenden, jedoch nicht innerhalb von Dataverse. Stellen Sie daher sicher, dass die richtigen Werte festgelegt sind, wenn sie durch Code geändert werden.
- Power Platform-Build-Tools-Aufgaben stehen derzeit noch nicht zur Verwaltung von Datenquellen-Umgebungsvariablen zur Verfügung. Dies blockiert jedoch nicht ihre Verwendung in von Microsoft bereitgestellten Tools und in Versionsverwaltungssystemen.
- Die Interaktion mit Umgebungsvariablen über angepassten Code erfordert einen API-Aufruf, um die Werte abzurufen. Es gibt keinen Cache, der für nicht von Microsoft stammenden Code zur Verfügung steht.
- Um Umgebungsvariablen erfolgreich mit SharePoint Listen zu verwenden, müssen Anzeigename und der logische Name für jede entsprechende Spalte in der Quell- und Zielumgebung übereinstimmen.
- Umgebungsvariablen sind auf maximal 2.000 Zeichen begrenzt.
Häufig gestellte Fragen
Warum kann ich den Wert für meine Umgebungsvariable nicht sehen?
Wenn sich die Umgebungsvariable in einer verwalteten Lösung befindet, können Sie den Wert nicht sehen, es sei denn, Sie werfen einen Blick in die Standardlösung. Dieses Verhalten ist beabsichtigt, da der Wert der Umgebungsvariablen eine nicht verwaltete Anpassung ist.
Wie kann ich anzeigen, wo Umgebungsvariablen verwendet werden?
Entweder durch Auswahl von Abhängigkeiten anzeigen in der Lösungsoberfläche, beim Erstellen von Komponenten oder in der Quellcodeverwaltung und in der Lösungsdatei durch Anzeigen der App- oder der Flow-Metadaten.
Sind Datenquellen-Umgebungsvariablen mit Verbindungen identisch?
Nein. Auch wenn sie verwandt sind, stellt eine Verbindung einen Leistungsnachweis oder eine Authentifizierung dar, die für die Interaktion mit dem Konnektor erforderlich ist. In den Datenquellen-Umgebungsvariablen werden Parameter gespeichert, die für eine oder mehrere Aktionen im Konnektor erforderlich sind. Diese Parameter variieren häufig je nach Aktion. Beispielsweise speichert eine SharePoint Online-Verbindung keine Informationen zu Websites, Listen oder Dokumentbibliotheken. Daher erfordert das Aufrufen des Konnektors sowohl eine gültige Verbindung und einige zusätzliche Parameter.
Können Datenquellen-Umgebungsvariablen mit gemeinsam genutzten Verbindungen wie SQL Server mit SQL-Authentifizierung verwendet werden?
Im Allgemeinen nein. Freigegebene Verbindungen mit SQL Server speichern die Parameter, die zum Herstellen einer Verbindung mit Daten innerhalb der Verbindung erforderlich sind. Beispielsweise werden der Server- und der Datenbankname beim Erstellen der Verbindung angegeben und daher immer von der Verbindung abgeleitet.
Datenquellen-Umgebungsvariablen werden für Konnektoren verwendet, die auf einer benutzerbasierten Authentifizierung basieren, z. B. Microsoft Entra ID, da die Parameter nicht aus der Verbindung abgeleitet werden können. Aus diesen Gründen verwendet die Authentifizierung mit SQL Server, bei dem es sich um eine gemeinsam genutzte Verbindung handelt, keine Datenquellen-Umgebungsvariablen.
Kann meine automatisierte ALM-Pipeline unterschiedliche Wertedateien für verschiedene Umgebungen verwenden?
Ja Der Solution Packager akzeptiert den Dateinamen als Eingabeparameter, sodass Ihre Pipeline je nach Umgebungstyp, für den sie ausgeführt wird, eine andere Wertedatei in die Lösung packen kann.
Soll ich den Wert in meine Lösung einbeziehen?
Nein. Umgebung-Variablen sind für die Verwendung durch Anwendungen vorgesehen, die in unterschiedlichen Umgebungen, in denen die Lösung bereitgestellt wird, unterschiedliche Werte haben müssen. Umgebung-Variablendefinitionen sollten in Ihre Lösung aufgenommen werden, aber die Werte sollten während der Bereitstellung für das Ziel Umgebung bereitgestellt werden. Dieses Verhalten führt dazu, dass die Variablendefinition Umgebung ein verwaltete Lösung-Objekt im Ziel Umgebung ist, während die Variable Umgebung ein nicht verwalteter Datensatz ist.
Warum kann ich einen Wert in meiner Umgebung nicht löschen?
Wenn der Wert in einem verwaltete Lösung enthalten war, besteht die einzige Möglichkeit zum Löschen des Werts darin, die Lösung in der Quelle Umgebung zu aktualisieren, um den Wert auszuschließen, und dann eine neue Version der Lösung zu exportieren. Diese neue Version kann dann mithilfe eines Upgrade-Vorgangs (kein Update) in Umgebung importiert werden, was zur Löschung des Wertedatensatzes führt.
Was ist, wenn jemand versehentlich einen Wert löscht?
Wenn dies vom Abhängigkeitssystem nicht bereits verhindert wurde, verwendet die Laufzeit den letzten bekannten Wert als Fallback.
Wenn ein Wert geändert wird, wann wird der neue Wert in Canvas-Apps und Cloud-Flows verwendet?
Es kann bis zu einer Stunde dauern, bis die aktualisierten Umgebungsvariablen vollständig veröffentlicht sind, da der Wert in die Apps übertragen wird und asynchron fließt.
Sind Premium-Lizenzen erforderlich?
Nein. Für ALM benötigen Sie zwar Dataverse (oder Dynamics 365 Apps), müssen jedoch keine Premium-Connectors verwenden. Die einzige Einschränkung ist, wenn Sie den Dataverse-Konnektor zur Interaktion mit Umgebungsvariablen wie bei anderen Datensätzen wie Konten oder Kontakten verwenden. Bisher war dies die einzige Möglichkeit, Umgebungsvariablen in Canvas-Apps und -Flows zu verwenden.
Gibt es eine Grenze bei der Anzahl der Umgebungsvariablen, die ich besitzen kann?
Nein. Die maximale Größe einer Lösung beträgt jedoch 95 MB. Weitere Informationen: Erstellen einer Lösung
Können Anzeigenamen und Beschreibungen von Umgebungsvariablen lokalisiert werden?
Ja
Sollte ich Umgebungsvariablen verwenden, anstatt Konfigurationsdaten in benutzerdefinierten Tabellen zu speichern?
Ja, wenn Ihre Konfigurationsdaten nicht relational sind. Umgebungsvariablen sollten für Schlüssel: Wert-Paare verwendet werden und wenn der Wert in anderen Umgebungen wahrscheinlich abweichen muss. Andere Tools wie das Dienstprogramm zur Konfigurationsmigration eignen sich besser für die Migration relationaler Konfigurationsdaten, die in benutzerdefinierten Tabellen gespeichert sind. Im Gegensatz zu anderen Konfigurationsdaten werden Umgebungsvariablen innerhalb von Lösungen migriert und sind daher viel einfacher zu verwalten und leistungsfähiger zu importieren.
Warum wird meine Verbindung für Datenquelle Umgebung-Variablen nicht gespeichert?
Verbindungen werden nur zur Generierung der Benutzeroberfläche verwendet. Zum Beispiel zum Abrufen von Anzeigenamen für SharePoint-Listen, die einer Website zugeordnet sind. Achten Sie beim Bearbeiten einer Umgebungsvariablen für eine Datenquelle darauf, dass Sie eine Verbindung mit Zugriff auf die Datenquelle auswählen. Wenn Sie keinen Zugriff mehr auf die Verbindung haben, können Sie manuell einen Wert eingeben. Geben Sie beispielsweise die SharePoint Site-URL oder die eindeutige Kennung (GUID) für eine Liste ein.
Wenn für eine einzelne Umgebungsvariable (vom Typ einer Datenquelle) mehrere Verbindungen verfügbar sind, gibt es eine standardmäßige Implementierung, um die erste Verbindung in der Liste der Verbindungen auszuwählen. Da einer Umgebungsvariablen normalerweise nur eine Verbindung zugeordnet ist, muss diese normalerweise nicht validiert werden. Darüber hinaus lässt sich dies aufgrund der jüngsten Änderungen an der Sichtbarkeit von Umgebungsvariablenwerten beim Import einfacher überprüfen.
Wie entferne ich einen Wert aus einer Umgebungsvariablen?
Möglicherweise möchten Sie den Wert einer Umgebungsvariablen aus Ihrer Lösung entfernen, bevor Sie die Lösung exportieren. Der vorhandene Wert verbleibt dann in Ihrer Entwicklungsumgebung, wird jedoch nicht in die Lösung exportiert. Dieser Ansatz ermöglicht es, einen neuen Wert bereitzustellen, während die Lösung in eine andere Umgebung importiert wird.
Um den Wert zu entfernen, folgen Sie diesen Schritten:
Wählen Sie in der Lösung, in der sich die Umgebungsvariable befindet, die Umgebungsvariable aus, um die Eigenschaften anzuzeigen.
Unter Aktueller Wert wählen Sie ...>Aus dieser Lösung entfernen.
Kann ich Umgebungsvariablen in benutzerdefinierten Connectoren verwenden?
Ja. Umgebungsvariablensupport in benutzerdefinierten Connectoren
Siehe auch
Datenquellen-Umgebungsvariablen in Canvas-Apps verwenden
Umgebungsvariablen in Power Automate-Lösungs-Cloud-Flows verwenden
EnvironmentVariableDefinition-Tabellen-/Entitätsreferenz
Web-API-Beispiele
Datenquellen-Umgebungsvariablen in Canvas-Apps verwenden
Umgebungsvariablen in Power Automate-Lösungs-Cloud-Flows verwenden
Azure Key Vault-Geheimnisse verwenden
Umgebungsvariablensupport in benutzerdefinierten Connectors
Power Apps Blog: Umgebungsvariablen in der Vorschau verfügbar!