8. Kapitel: Schützen und Bereitstellen der App

Die App ist jetzt funktionsfähig, aber Preeti und Kiana möchten sicherstellen, dass die Lösung sicher bereitgestellt werden kann und dass sie über einen Mechanismus verfügt, um sie zu warten, wenn sich die Anforderungen in Zukunft ändern.

Schutz der App und der Ressourcen

Wenn Sie sich zum ersten Mal bei Power Apps anmelden, müssen Sie sich in der Regel authentifizieren, indem Sie Ihre E-Mail-Adresse und Ihr Kennwort angeben. Office 365 verwendet seine eigene Microsoft Entra-Domäne. Jede Organisation hat ihre eigene Domäne. Ihre Anmeldeinformationen werden mit der Domäne Ihrer Organisation für Office 365 verglichen. Eine App, die mit Power Apps erstellt wurde, kann nur auf die Office 365-Ressourcen zugreifen, denen Sie die entsprechende Berechtigung erteilt haben. Die Autorisierung wird von Ihrem Office 365-Administrator verwaltet (Preeti im VanArsdel-Szenario). Weitere Informationen finden Sie unter App und Daten sichern im Handbuch „Planung eines Power Apps-Projekts“.

Die Azure-Ressourcen, auf die eine App zugreift, unterliegen ebenfalls der Autorisierung. Für Dienste wie Azure Storage ist eine Anwendung erforderlich, um einen Zugriffsschlüssel bereitzustellen. Darüber hinaus können viele Dienste durch eine rollenbasierte Zugriffssteuerung geschützt werden, in der die Vorgänge beschrieben werden, die einzelne Benutzer und Gruppen ausführen können. Der IT Operations Manager (wieder Preeti) kann die Autorisierungsrichtlinie festlegen, die definiert, welche Konten und Computer eine Verbindung zu Diensten wie Azure SQL-Datenbank, Azure Blob-Speicher, Azure API-Verwaltung und Azure App Services herstellen können. Mit einigen Diensten können Sie auch die Endpunkte einschränken, von denen authentifizierte Benutzer Zugriff anfordern können. Sie können beispielsweise eine Firewall für die Azure SQL-Datenbank konfigurieren, um den Zugriff auf Anforderungen zu verweigern, die von unerwarteten IP-Adressen ausgehen.

Azure hilft beim Schutz von Daten bei Übertragung, indem mit Transport Layer Security verschlüsselt wird. Diese Funktion ist für die Gewährleistung der Integrität und des Datenschutzes für jedes verteilte System, das Daten über ein Netzwerk wie das öffentliche Internet überträgt, von entscheidender Bedeutung. Im Fall von VanArsdel führen Techniker die App auf Mobilgeräten aus und verwenden Roaming-Netzwerkverbindungen, die außerhalb der Kontrolle des Unternehmens liegen. Preeti möchte sicherstellen, dass nicht autorisierte Benutzer keine vertraulichen Daten anzeigen oder gefährden können.

Daten in Ruhe – Konten im Speicher, Datenbanken und andere Diensten in Azure – können auch verschlüsselt werden. Dies bietet eine zusätzliche Datenschutzebene, falls das Rechenzentrum, in dem sich diese Informationen befinden, verletzt wird. Eine vollständige Liste der von Azure bereitgestellten Sicherheitsfunktionen finden Sie unter Einführung in die Azure-Sicherheit.

Personalisieren der App

Wenn jemand eine App ausführt, kann er Informationen über den Benutzer aus der Office 365-Umgebung abrufen. Diese Informationen können verwendet werden, um die App zu personalisieren. Beispielsweise unterscheidet die von Maria und Kiana entwickelte App derzeit nicht zwischen verschiedenen Benutzern. Sie alle haben Zugriff auf dieselben Daten. Idealerweise sollte die App personalisiert sein, um die Informationen anzuzeigen, die für den Techniker, der sie verwendet, am relevantesten sind. Power Apps bietet eine Funktion mit dem Namen Benutzer. Dadurch kann die App die E-Mail und den vollständigen Namen des aktuellen Benutzers abrufen. Diese App benötigt auch die Benutzer-ID (eine global eindeutige Kennung oder GUID, die jedem Benutzer zugewiesen wird). Der Grund für diese Anforderung ist, dass Benutzernamen geändert werden können, die ID jedoch nicht. Auf die Benutzer-ID kann über die vom Office 365-Connector bereitgestellten Funktionen zugegriffen werden. Die folgenden Schritte veranschaulichen das Hinzufügen dieses Connectors zur App:

  1. Wählen Sie mit Power Apps Studio im Strukturansicht-Bereich den Home-Bildschirm aus.

  2. Fügen Sie im Einfügen-Menü aus der Text-Dropdown-Liste ein Beschriftung-Steuerelement auf dem Bildschirm hinzu.

  3. Benennen Sie das Beschriftung-Steuerelement in Nutzername um.

  4. Verschieben Sie das Steuerelement so, dass es unter den Details zum nächsten Termin angezeigt wird.

    Ändern Sie das Layout des Startbildschirms.

  5. Wählen Sie im Daten-Bereich Daten hinzufügen aus. Geben Sie Office 365 Users in das Suchfeld ein. Fügen Sie der App die Office 365 Users-Verbindung hinzu.

    Fügen Sie den Office 365 Users-Konnektor hinzu.

  6. Wählen Sie im Bereich Strukturansicht die Beschriftung UserName aus, und legen Sie die Text-Eigenschaft auf die folgende Formel fest.

    Office365Users.MyProfileV2().displayName
    

    Diese Formel verwendet die Office365-Benutzer-Verbindung zum Abrufen von Identitätsinformationen über den aktuellen Benutzer. Die displayName-Eigenschaft der MyProfileV2-Funktion enthält den angemeldeten Namen des Benutzers.

    Startbildschirm mit angezeigtem Benutzernamen

Hinweis

Sie können das UserName-Steuerelement ruhig gestalten, sodass es mehr hervorgehoben wird.

Office 365 wird in einer Microsoft Entra-Domäne ausgeführt, aber Sie können diese Sicherheitsdomäne auch mit Ihrer eigenen Microsoft Entra-Installation erweitern. Wenn Ihre Organisation Benutzer durch Ihre eigene Microsoft Entra-Domain authentifiziert, können Sie Benutzerinformationen erhalten, indem Sie den Microsoft Entra-Connector statt Office365Users verwenden.

Fügen Sie den Microsoft Entra-Connector hinzu.

Legen Sie die Text-Eigenschaft der UserName-Beschriftung in diesem Fall auf Folgendes fest:

AzureAD.GetUser(User().Email).displayName

Um die Terminliste zu personalisieren, muss eine andere Web-API-Funktion im FieldEngineerAPI-Connector aufgerufen werden. Derzeit enthält die OnVisible-Eigenschaft des Home-Bildschirms folgende Formel.

ClearCollect(appointmentsCollection, Sort(Filter(FieldEngineerAPI.getapiappointments(), DateDiff(Today(), startDateTime) >= 0), startDateTime));

Die Web-API bietet eine alternative Funktion, mit der die Termine für einen bestimmten Techniker abgerufen werden können. Sie geben die Kennung des Technikers als Parameter an. Sie können die Office 365-Benutzer-ID für diesen Zweck verwenden. Aktualisieren Sie die OnVisible-Eigenschaft wie im Folgenden gezeigt.

Set(id, Office365Users.MyProfileV2().id);

ClearCollect(appointmentsCollection, Sort(Filter(FieldEngineerAPI.getapischeduleengineeridappointments(id), DateDiff(Today(), startDateTime) >= 0), startDateTime);

Wenn Sie sich mit Microsoft Entra ID authentifizieren, verwenden Sie stattdessen die folgende Formel.

Set(id, AzureAD.GetUser(User().Email).id);

ClearCollect(appointmentsCollection, Filter(FieldEngineerAPI.getapischeduleengineeridappointments(id), DateDiff(Today(), startDateTime) >= 0), startDateTime);

Hinweis

Diese Änderung erfordert, dass die EngineerId-Spalte in der Termine-Tabelle mit der Benutzer-ID gefüllt wird. Diese ID ist eine GUID, wird jedoch in der Datenbank als Zeichenfolge gespeichert. Das folgende Bild zeigt einige Zeilen mit Beispieldaten.

Beispiel für Technikerdaten mit IDs als GUIDs

Die Techniker-Tabelle muss auch den Namen eines Technikers mit der entsprechenden ID enthalten.

Die Techniker-Tabelle in der Datenbank

Die App kann jetzt bereitgestellt und eingeführt werden.

Bereitstellen der App

Der einfachste Weg, eine App bereitzustellen, besteht darin, sie auf Ihrem Computer in der Office 365-Domäne zu veröffentlichen. Alle Benutzer mit der Nutzung möglich-Berechtigung können die App entweder aus Power Apps Studio oder mit der mobilen Power Apps-App ausführen, die im Microsoft Store unter https://aka.ms/AAbvtko erhältlich ist. Apps, die mit Power Apps erstellt wurden, können auf mobilen Geräten wie Tablets und Telefonen ausgeführt werden, sobald sie veröffentlicht wurden. Benutzer müssen die App nur im App Store ihres Geräts finden.

Um die App zu veröffentlichen, führen Sie die folgenden Schritte aus:

  1. Wählen Sie in Power Apps Studio im Menü Datei Speichern aus. Speichern Sie die App, wenn Sie Änderungen vorgenommen haben. Wenn Sie die App speichern, wird die Veröffentlichen-Schaltfläche angezeigt.

  2. Wählen Sie Veröffentlichen aus. Mit der Option Details bearbeiten im Veröffentlichen-Dialog können Sie Einstellungen wie den Namen der App, ein Symbol für die App und eine Beschreibung auswählen. Sie können auch die Bildschirmgröße und -ausrichtung ändern, die von der App verwendet wird. Wählen Sie Diese Version veröffentlichen, um die App für andere Power Apps-Benutzer in der Organisation verfügbar zu machen.

    Veröffentlichen Sie die App.

Sie können den Bereitstellungsverlauf und die App-Nutzung über die Apps-Registerkarte auf der Administratoren-Seite in Power Apps Studio unter https://make.powerapps.com verfolgen. Wählen Sie die App aus, und wählen Sie dann im Menü mit den Auslassungspunkten die Option Details.

Wählen Sie den Detailbereich für eine App aus.

Im Details-Bereich zeigt die Versionen-Registerkarte den Versionsverlauf für die App. Mit den Optionen im Menü mit den Auslassungspunkten für eine App können Sie eine frühere Version wiederherstellen, wenn Sie eine aktuelle Veröffentlichung zurücksetzen müssen.

Stellen Sie die vorherige Version einer App wieder her.

Pflegen der App

Mit dem Power Platform-Admin Center können Sie die Umgebungen verwalten, in denen sich Apps befinden.Der vorgeschlagene Ansatz besteht darin, Ihre Apps über Microsoft Dataverse-Umgebungen zu erstellen und zu veröffentlichen. Sie verwenden separate Umgebungen für Entwicklung und Produktion.

Dataverse bietet vier Arten von Umgebungen: 

  • Sandbox: Ideal für Ihre Entwicklung.  

  • Produktion : Wo die App zur Verwendung bereitgestellt werden soll. 

  • Entwickler : Hier erstellte Ressourcen können nicht freigegeben werden.Als Einzelbenutzerumgebung können Sie sie zum Lernen und Erkunden der Funktionen von Apps verwenden, die in Power Apps erstellt wurden.  

  • Standard: Eine Umgebung, die automatisch für jeden Mandanten erstellt wird.Microsoft empfiehlt, dies nicht für Apps zu verwenden, da dann jeder in Ihrem Mandanten auf diese Apps zugreifen kann.  

Sie erstellen Umgebungen mit dem Power Platform-Admin Center. Wählen Sie auf der Registerkarte Umgebungen in der Menüleiste die Neu-Option aus. Geben Sie den Typ der Umgebung an.

Erstellen Sie eine neue Power Apps-Umgebung.

Ein guter Ansatz für das Application Lifecycle Management (ALM) besteht darin, in einer neuen Sandbox-Umgebung zu starten, damit Sie Ihre App sicher und isoliert von der Produktionsumgebung entwickeln und testen können.Teilen und testen Sie Ihre App während der Entwicklung. Wenn Ihre App für den tatsächlichen Gebrauch bereit ist, stellen Sie sie in einer Produktionsumgebung bereit, und veröffentlichen Sie sie von dort aus. Sie können viel dieses Prozesses mit Microsoft Power Platform Build Tools automatisieren.

Ausführliche Informationen zu ALM mit Power Apps in Bezug auf VanArsdel finden Sie unter Szenario 1: Citizen Development im Microsoft Power Platform ALM-Handbuch.