Managed Service Accounts für Project for the Web Flows anlegen

Gerade in Project for the Web stellt die Automatisierung ein wirklicher Mehrwert dar. Hierdurch kann das Projektmanagement leicht entlastet werden und der Projektleiter kann sich so mehr Zeit für seine Managementaufgaben nehmen. Die Automatisierungen werden über Power-Automate durchgeführt, die Bestandteile der jeweiligen Lösung werden. Hier stelle ich immer wieder fest, dass viele Flow-Ersteller den Datenzugriff auf die Dataverse-Tabellen oft mit dem Account des Erstellers durchführen. Ganz übel wird es dann, wenn der Account auch noch ein Microsoft 365 globaler Administrator ist. Ihr könnt den Zugriff auf die Dataverse-Tabellen auch über die App-Registrierung im Azure-AD realisieren. Der Vorteil ist dabei, dass es sich bei dem Zugriff auf die Daten entsprechend um keinen realen Benutzer handelt. In diesem Blog beschreibe ich, wie Du diese Szenario umsetzt. Das Szenario besteht aus drei Teilen. Als erstes müssen wir eine App-Registrierung im Azure-Portal durchführen, dann die App an dem Trigger authentifizieren und abschließend der App-Registrierung die jeweiligen Sicherheitsrollen für die Project-Tabellen zuweisen.

Anlegen der App-Registrierung im Azure AD

Erstellen wir als erstes eine App-Registrierung im Azure AD. Im Gegensatz zu meinem damaligen Artikel (Externe Projektmitglieder über Power Automate anlegen lassen), benötigen wir diesmal keine Graph-Freigaben. Melde Dich als erstes an dem Azure-Portal (https://portal.azure.com) an. Klicke im oberen Bereich auf die Option „Azure Active Directroy“. Wähle auf der linken Seite die Option „App-Registrierung (1)“.

Klicke im oberen Bereich auf „App-Registrierung“. Gebe jetzt einen eindeutigen Namen ein. In meinem Beispiel „Project-PowerAutomate-MAServAccount“. Belasse die Einstellungen für die unterstützten Kontotypen auf „Nur Konten in diesem Organisationsverzeichnis… (2)“. Klicke dann auf den Button „Registrieren“.

Notiere dir die Awendungs-IC (Client) und die Verzeichnis-ID in einen Texteditor. Diese brauchen wir in Power Automate zu einem späteren Zeitpunkt wieder.

Jetzt benötigen wir noch einen Securtiy-Key für die App. Klicken hierzu auf der linken Seite auf den Link „Zertifikate & Geheimnisse“. Achte darauf, dass die Registerkarte „Geheime Clientschlüssel“ ausgewählt ist und klicke dann auf den Link „+ Neuer geheimer Clientschlüssel“.

Gebe einen Namen (1) und einen gewünschten Zeitraum (2) für die Gültigkeit ein. Klicke anschließend auf „Hinzufügen (3)“.

Kopiere dir den Wert des Schlüssels in eine Textdatei.

Achtung: Sobald du das Fenster wechselst oder schließt, kommst du an den Schlüssel nicht mehr dran. Sollte dir das passieren dann keep calm. Du kannst dir immer wieder einen neuen Schlüssel erstellen.

App Registrierung in Power Automate einbinden.

Im nächsten Schritt müssen wir die App-Registrierung in Power-Automate aktivieren. Wechsel hierzu in die Power-App-Lösung, in der Du deine Project App veröffentlicht hast. Öffne den Workflow und klicke im oberen Bereich auf „Bearbeiten“. Wechsel auf den ersten Vorgang, der eine Aktion auf eine der Dataverse-Tabellen ausführt. Klicke auf das Hamburger-Menü (…) und wähle im Kontextmenü die Option „+ Neue Verbindungsreferenz (1)“ aus.

Klicke im unteren Bereich auf die Option „Verbindung mit Dienstprinzipal herstellen (1)“ aus.

Jetzt müssen wir die zuvor notierten Keys eingeben. Als Verbindungsname gibst Du einfach einen neuen Namen ein. In meinem Beispiel wähle ich den Gleichen wie in der App-Registrierung, dass musst du aber nicht. Die Client-ID ist die Anwendungs-ID (Client). In dem Feld Clientgeheimnis kommt der Security-Key rein, die du zuvor in einer Text-Datei kopiert hast. Im Feld Mandant kommt die Verzeichnis-ID (Mandant) rein. Klicke anschließend auf „Erstellen“.

Dienstprinzipal in Power-App registrieren

Im letzten Schritt müssen wir jetzt noch den Managed-Service-Account in Power Apps registrieren und ihm die entsprechenden Sicherheitsrollen zuweisen. Wechsel hierzu auf das Power-Platform-Admin Center. Klicke auf der linken Seite die Option „Umgebungen“ – und dann auf die Instanz, in der die Lösung bereitgestellt wurde. Klicke dann auf den Button S2S-Apps – „Alle anzeigen (1)“.

Klicke auf den Link „+ Eine App hinzufügen“. Wähle jetzt im Kontextmenü das zuvor angelegte App aus und klicke dann auf „Hinzufügen“. Wähle im Optionsfeld deine Unternehmenseinheit aus. Klicke dann auf den Stift rechts neben den Namen Sicherheitsrollen. Wähle hier die Sicherheitsrollen Environment Maker, Basic User, Project User und Project Commen aus. Klicke anschließend auf „Erstellen“.

Hinweis: Solltest du noch weitere Sicherheitsrollen hinzugefügt haben, musst du diese natürlich auch freigeben!

Test

Wechsel zurück in die Lösung, in der du den Flow bereitgestellt hast und führe den Flow erneut aus.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Die folgenden im Rahmen der DSGVO notwendigen Bedingungen müssen gelesen und akzeptiert werden:
Durch Abschicken des Formulars wird dein Name, E-Mail-Adresse und eingegebene Text in der Datenbank gespeichert. Für weitere Informationen wirf bitte einen Blick in die Datenschutzerklärung.