quiNews

Was Sie Gutes mit uns verbinden können

Automatisches Bereitstellen von Logic Apps mit authentifizierten API Connections - mit Hilfe von Azure Resource Manager (ARM) Templates und dem Logic Apps Tool für Visual Studio

Sicherheit ist ein großes Thema bei Cloud Lösungen – auch beim Bereitstellen von Logic Apps. Verwendet man API Connections innerhalb der Logic App, wie z.B. die Verbindung zu einem Azure Storage Account, werden beim Export des ARM Templates über das Azure Portal die für eine funktionierende API Connection notwendigen Parameter (Passwörter, Connection-strings, …) nicht mit in das Template übernommen – der Sicherheit zuliebe.

Möchte man nun aber in einem automatisierten Prozess Logic Apps erstellen, deren API Connections sich dynamisch unterscheiden – z.B. möchte man über eine grafische Benutzeroberfläche individuell angeben, welcher Azure Storage Account verwendet werden soll – müssen auch die API Connections vollständig mit in das ARM Template übernommen werden.

Das Problem: beim Export des ARM Templates über das Azure Portal ist die Resource für die API Connection unvollständig. Es fehlen die sicherheitsrelevanten Parameter (Passwörter, Connection-strings, …).

Man kann mit Hilfe des Azure REST Services (https://management.azure.com) Parameter abrufen, die zum Erstellen einer bestimmten API Connection verwendet werden. Diese müssten dann manuell im Template ergänzt werden – eine fehleranfällige Vorgehensweise.

Einfacher geht es mit dem Azure Logic Apps Tool für Visual Studio 2019/2017/2015. Erstellt man über den Logic App Designer innerhalb von Visual Studio eine neue API Connection, wird diese als vollständige Resource mit in das Template übernommen.

 

Verdeutlichung anhand einer Bilderstrecke

Erstellen einer Logic App mit Hilfe des Azure Portals. Die Logic App verwendet eine API Connection zu einem Azure Storage Account:

Das dazugehöriges ARM Template, welches über das Azure Portal erstellt wurde. Für die API Connection des Azure Storage Accounts fehlen notwendige Parameter (z.B. der Access Key, der für die Authentifizierung nötig ist):



Wird das Template so bereitgestellt, muss die API Connection nochmals authentifizieren werden. Für einen automatisierten Prozess ist das Arbeit, die man sich eigentlich sparen möchte:



Mit Hilfe des Azure Logic Apps Tool kann innerhalb von Visual Studio eine Logic App erstellt werden. Es ist ausreichend, beispielhaft eine Logic App mit der verwendeten Art der API Connection zu erstellen, um die vollständige API Connection Resource im ARM Template zu erhalten.



Im ARM Template, welches Visual Studio erzeugt, sind nun auch die fehlenden Parameter zu finden. Wird dieses ARM Template bereitgestellt, ist die API Connectino durch das Beinhalten des Access Keys bereits authentifiziert.

Diese Vorgehensweise lässt sich auch auf andere API Typen übertragen.

Dieser quiTeq-Tipp kommt von Martin Zug, QUIBIQ Stuttgart.

 

© QUIBIQ GmbH · Impressum · Datenschutz