AWS-Authentifizierung: Neue Funktionen in der Connector Suite

Vor ungefähr einem Jahr Mendix begab sich auf eine spannende Reise und gründete eine strategische Allianz mit Amazon Web Services (AWS), der weltweit führenden Cloud-Plattform. Diese Partnerschaft basiert auf einem gemeinsamen Engagement für Innovation und Exzellenz sowie einer gemeinsamen Vision: Mendix der schnellste und einfachste Weg, Apps auf AWS zu erstellen.
Die Früchte dieser Zusammenarbeit zeigen sich in der AWS-Connector-Suite, die mehr als 20 Low-Code-Konnektoren zur Integration mit AWS-Diensten enthält. Diese Konnektoren verbessern die Kosteneffizienz, Laufzeitleistung und Skalierbarkeit von Mendix Anwendungen. Derzeit sind über 120 einzigartige Anwendungen in der Produktion, die mindestens einen AWS-Connector verwenden, ein Beweis für die Nützlichkeit und Effektivität der Connectoren.
Gemeinschaftsaktion
Ein weiteres Ergebnis der Mendix Zusammenarbeit mit AWS war die Fülle an Wissen und Tools, die geschaffen wurden, um Mendix Maker und AWS Builder auf ihrem Entwicklungsweg. Dieses Enablement-Material beinhaltet Blog-Beiträge, Lernpfade, informative Videos und Beispielimplementierungen. Es enthält außerdem Schritt-für-Schritt-Anleitungen, bewährte Methoden und praktische Einblicke in die Erstellung von Lösungen mit Mendix auf AWS für Neueinsteiger Mendix.
Der Mendix Community war maßgeblich an der Gestaltung des Inhalts beteiligt. Sie haben Feedback zu den Forum, schuf eine Umgebung für Wachstum und Innovation und hob Bereiche für Verbesserungen hervor. Die Community hat sowohl ihre Frustrationen – wie zum Beispiel die Tatsache, dass man zur Authentifizierung dieselben Anmeldeinformationen für verschiedene Konnektoren konfigurieren muss – als auch ihre Ideen, wie das Aufrufen benutzerdefinierter Endpunkte und das Überschreiben von HTTP-Timeout-Konfigurationen, um die Laufzeit einer AWS-Lambda-Funktion zu verlängern, offen geteilt. All dieses Feedback spiegelt sich in der jüngsten Aktualisierung der AWS-Authentifizierungs-Connector und verbessert das Entwicklererlebnis mit der umfassenderen AWS Connector Suite.
Upgrades und Verbesserungen
Lassen Sie uns tiefer in die Details dieser Änderungen eintauchen. Ich werde einen umfassenden Überblick über die wichtigsten Änderungen geben, die Überlegungen erläutern und die Auswirkungen diskutieren, die diese Änderungen auf den Arbeitsablauf eines Entwicklers haben können. Hoffentlich führen diese Erkenntnisse zu einer reibungsloseren und effizienteren Entwicklungserfahrung.
Die Updates und Erweiterungen der AWS Connector Suite gehen über technische Upgrades hinaus. Sie verbessern den Entwicklungsworkflow bei der Kombination Mendix und AWS.
Diese Änderungen wirken sich auf Anwendungen aus, die frühere Versionen von Konnektoren verwenden. Wir werden näher darauf eingehen, was diese Änderungen mit sich bringen und wie Sie reibungslos auf die neue Version umsteigen können.
Zentralisierung von Komponenten
Die bemerkenswerteste Änderung ist die Zentralisierung der Authentifizierungskomponenten, einschließlich der Verbindungsdetailkonstanten und des Mikroflows zum Generieren eines Credentials-Objekts. Diese Änderung führt zu Fehlern in Anwendungen, die nicht aktualisiert wurden, da sich die Authentifizierungskonstanten und Mikroflows nicht mehr in den Connector-Modulen, sondern im AWS Authentication Connector befinden. Diese Fehler können behoben werden, indem die Verbindungsdetailkonstanten und der Mikroflow zur Generierung von Anmeldeinformationen im AWS Authentication Connector konfiguriert werden.
Eine Anfrageentität jeweils
Wir haben alle Vorgänge so standardisiert, dass sie eine Anforderungsentität enthalten, unabhängig davon, ob der Vorgang zuvor eine Anforderungsentität hatte. Diese Änderung sorgt für Konsistenz in der gesamten Suite. Beim Upgrade können Fehler bei Vorgängen auftreten, die zuvor keine Anforderungsentität hatten. Um diese Fehler zu beheben, fügen Sie einfach eine Instanz der neu eingeführten Anforderungsentität hinzu, um sie an das Update anzupassen.
Vererbung von der AbstractRequest-Entität
Diese Änderung basiert auf der Einführung von Anforderungsentitäten für jeden Vorgang. Wir haben eine neue Funktion integriert, bei der alle Anforderungsentitäten jetzt von der AbstractRequest-Entität des AWS Authentication Connectors erben. Diese Vererbung ebnet den Weg für die Funktion zum Überschreiben von HTTP-Clientkonfigurationen. Diese Änderung dient zwar der Standardisierung von Vorgängen, kann jedoch bei Upgrades zu Fehlern bei Vorgängen führen, die zuvor keine Anforderungsentität hatten. Diese Änderung ermöglicht zwar möglicherweise Änderungen während des Upgradevorgangs, ermöglicht jedoch eine erweiterte Kontrolle über das Verhalten der Vorgänge des Connectors.
Überarbeitung der gesamten AWS Connectors Suite
Jeder Connector in der Suite wurde überarbeitet, um Einheitlichkeit und Konsistenz zu gewährleisten. Es ist wichtig zu beachten, dass diese Updates für jeden Connector in der AWS Connectors Suite wichtige Änderungen mit sich bringen. Die Anzahl der erforderlichen Anpassungen hängt vom jeweiligen Connector ab. Entscheidend ist, dass alle aktualisierten Connectors jetzt AWS Authentication Connector 3.0.0 als Voraussetzung haben, um den verbesserten Standards und Funktionen der Suite zu entsprechen.
Wenn Sie diese Änderungen und die Schritte zur Migration verstehen, ist ein reibungsloser Übergang zur aktualisierten Version gewährleistet. So können Maker die erweiterten Funktionen der AWS Connector Suite nutzen.
Zentralisierung über die AWS-Connector-Suite
Eine weitere Änderung ist die Zentralisierung von Komponenten aus der gesamten AWS Connectors Suite zum AWS Authentication Connector, einem Modul, das Voraussetzung für alle AWS-Konnektoren ist. Hier sind die wichtigsten Elemente dieser Änderung.
AWS-Regionenaufzählung
Vorbei sind die Zeiten, in denen Sie mühsam herausfinden mussten, welche modulspezifische Regionenaufzählung Sie auswählen mussten. Die Zentralisierung der AWS-Regionenaufzählung vereinfacht jetzt den Zugriff auf die Liste aller AWS-Serviceregionen. Wir haben diese Liste um zusätzliche Regionen für umfassendere Integrationsoptionen erweitert.
Diese hinzugefügten Regionen stellen sicher, dass die Konnektoren mit den neuesten AWS-Regionen auf dem neuesten Stand sind, und bieten Entwicklern mehr Optionen für die Bereitstellung der AWS-Workflows. Zu den neuen Regionen gehören:
- Asien-Pazifik – Hyderabad (ap_south_2)
- Asien-Pazifik – Melbourne (ap_southeast_4)
- Europa – Spanien (eu_south_2)
- Europa – Zürich (eu_central_2)
- Israel – Tel Aviv (il_central_1)
- Naher Osten – Vereinigte Arabische Emirate (me_central_1)
- AWS GovCloud – USA-Ost (us_gov_east_1)
- AWS GovCloud – USA-West (us_gov_west_1)
Authentifizierungskonstanten
Wir haben die Konstanten für Verbindungsdetails, die bei der Konfiguration der AWS-Authentifizierung verwendet werden, zentralisiert. Diese Änderung wurde durch das Feedback der Community vorangetrieben. Die Community teilte mit, dass die Konfiguration mehrerer Konstantensätze während der Entwicklung unnötigen Konfigurationsaufwand verursacht. Das neue Update beseitigt dies, indem diese Konstanten in den AWS Authentication Connector verschoben werden. Dies fördert die Wiederverwendbarkeit von Anmeldeinformationen und behält gleichzeitig die Möglichkeit, mehrere Anmeldeinformationensätze zu konfigurieren.
Wir haben auch den Authentifizierungs-Workflow überprüft. Wir haben die Konstante „UseStaticCredentials“ entfernt, die zuvor zur Authentifizierung verwendet wurde. Der neue Ansatz für die Credentials-Entität ist jetzt besser auf die Praktiken von AWS abgestimmt.
Die statische Authentifizierung bleibt unverändert. Für die temporäre Authentifizierung haben wir jedoch die Entität TemporaryCredentials eingeführt – eine Spezialisierung des Credentials-Objekts. Dies entspricht nicht nur der AWS-Namenskonvention, sondern sorgt auch für eine klarere und verbesserte Trennung der Authentifizierungsbelange.
Darüber hinaus hat die AWS Connectors Suite die Terminologie „temporäre Anmeldeinformationen“ anstelle der zuvor verwendeten „sitzungsbasierten Anmeldeinformationen“ übernommen. Diese Terminologie ist im AWS-Ökosystem allgemein anerkannt und wird häufiger verwendet. Dieser Ansatz verkörpert unser Engagement, mit den AWS-Standards synchron zu bleiben und die Klarheit und Konsistenz der Konnektoren für Maker zu verbessern.
Sofort einsatzbereiter Mikroflow zum Generieren gültiger Anmeldeinformationen
Bisher enthielten Connector-Aktionen eine Logik zum Erstellen eines Credentials-Objekts innerhalb des Aktionsablaufs selbst. Dieser Ansatz wurde jedoch weiterentwickelt und erfordert nun das Credentials-Objekt als Eingabeparameter. Diese Änderung, die bereits von neueren Connectors übernommen wurde, erhöht die Flexibilität, indem sie eine benutzerdefinierte Verwaltung der Anmeldeinformationen ermöglicht.
Im neuesten Update haben wir alle Connector-Aktionen auf diesen Ansatz standardisiert. Folglich ist jeder Mikroflow zur Generierung von Anmeldeinformationen, der in jedem einzelnen AWS-Connector vorhanden war, jetzt im AWS Authentication Connector als zwei unterschiedliche Mikroflows für statische und temporäre Authentifizierung zentralisiert. Diese Trennung ermöglicht eine genauere Kontrolle und ermöglicht es Entwicklern, statische Anmeldeinformationen für eine schnelle Authentifizierung während der Entwicklung oder temporäre Anmeldeinformationen für einen sicheren, kurzfristigen Zugriff in Produktionsumgebungen zu wählen.
Die Zentralisierung dieser Komponenten im AWS Authentication Connector-Modul verbessert die Wiederverwendbarkeit und Effizienz, insbesondere da jeder Connector bereits den AWS Authentication Connector erfordert. Dieser Ansatz, der auf Community-Feedback basiert, behebt das Problem der Verwaltung doppelter Konstantensätze in Projekten mit mehreren AWS-Connectoren und sorgt für einen reibungsloseren, einheitlicheren Entwicklungsprozess.
Überschreiben von HTTP-Clientkonfigurationen
Bei der Entwicklung der AWS Connectors Suite haben wir das AWS Software Development Kit (SDK) anstelle des nativen Mendix Aufrufen des REST-Dienstes Aktivität. Dieser Ansatz priorisiert die Effizienz bei der Handhabung von AWS-Integrationen. Er eliminiert die Komplexität der Anpassung von HTTP-Headern und Signierungsanforderungen, da das SDK diese Aufgaben automatisiert. Darüber hinaus bietet es integrierte Funktionen wie Wiederholungslogik und Drosselungsverwaltung. Diese Grundlage schafft die Grundlage für die Diskussion über das Überschreiben der SDK-HTTP-Clientkonfigurationen, wodurch Entwickler mehr Kontrolle über das Verhalten der Anwendung erhalten.
Überschreiben der Standardkonfigurationen für den HTTP-Client des SDK
Um Herausforderungen wie das Timeout von AWS-Lambda-Funktionen aufgrund der standardmäßigen HTTP-Clienteinstellungen zu bewältigen, haben wir anpassbare HTTP-Clientkonfigurationen eingeführt. Jede Connector-Aktion hat eine Anforderungsentität, die von der AbstractRequest-Entität erbt. Um die standardmäßigen HTTP-Konfigurationen zu überschreiben, legen Maker die Attribute für ein Objekt vom (Unter-)Typ BasicClientConfig fest und verknüpfen es mit der Anforderung, bevor die Connector-Aktion aufgerufen wird.
Einige Anwendungsfälle umfassen:
- Erweitern Sie die Timeout-Einstellungen, um Vorgänge zu berücksichtigen, die möglicherweise länger dauern, wie z. B. AWS-Lambda-Funktionen.
- Anpassen des Wiederholungsmechanismus, um das Verhalten für die Wiederherstellung des Clients nach fehlgeschlagenen AWS-Serviceanforderungen zu ändern.
- Überschreiben von Aufrufendpunkten (erforderlich für Anwendungsfälle wie lokales Testen), Integrieren mit einer selbst gehosteten Instanz des AWS-Dienstes und Aufrufen von VPC-Endpunkten (private Cloud).
Diese Verbesserungen bieten mehr Kontrolle und Flexibilität und ermöglichen es Herstellern, die Konnektoren an ihre spezifischen Anwendungsanforderungen anzupassen.
Übergang von Add-Ons zu regulären Modulen
Kommentare wie „Was ist ein Zusatzmodul?“ und „Warum ist das Connector-Modul nicht unter Marketplace-Module zu finden?“ sind typische Fragen zum Modultyp einiger AWS-Connectors. Ein Zusatzmodul ist eine spezialisierte Komponente in Mendix Das Modul bietet Funktionen wie IP-Schutz und gebündelte Abhängigkeiten und unterscheidet sich dadurch von den Standardmodulen. Sehen wir uns an, wie wir die einzigartigen Funktionen der Zusatzmodule bei der Entwicklung der AWS Connector Suite genutzt haben.
Zusatzmodule
Vor einem Jahr haben wir den Amazon Polly Connector als Zusatzmodul in einer Pilotphase veröffentlicht. Ziel war es, die Durchführbarkeit der Bereitstellung der gesamten Suite als Zusatzmodule zu prüfen. Zusatzmodule (mit der Erweiterung .mxmodule) bündeln die Abhängigkeiten des Connectors und sind daher ideal, um Bibliothekskonflikte zu vermeiden. Mit der Einführung von Mendix' Verwaltete Abhängigkeiten Funktion in Mendix Studio Pro 10.3 ist dieses Problem nicht mehr relevant.
Die Umstellung auf reguläre Module
Dank der neuen Funktionen zur Abhängigkeitsverwaltung konnten wir die Umstellung zurück zur Verwendung regulärer Module abschließen. Diese Umstellung vereinfacht nicht nur den Entwicklungsprozess, sondern ermöglicht es auch, dass diese Konnektoren als Referenz für diejenigen dienen, die AWS-Integrationen erstellen möchten.
Der Wechsel zu regulären Modulen eröffnet breitere Möglichkeiten zur Anpassung und entspricht unserem Engagement, Mendix die schnellste und einfachste Plattform zum Erstellen von Apps auf AWS.
Fazit
Zusammenfassend bringt dieses Update der AWS Connector Suite Verbesserungen bei Funktionalität und Benutzerfreundlichkeit.
- Die Zentralisierung der Komponenten im AWS Authentication Connector rationalisiert den Entwicklungsprozess, indem Redundanz reduziert und die Wiederverwendbarkeit dieser Komponenten erzwungen wird.
- Die Einführung anpassbarer HTTP-Clientkonfigurationen bietet eine verbesserte Kontrolle über AWS-Integrationen, einschließlich Aspekten wie erweiterten Timeout-Einstellungen und benutzerdefinierten Wiederholungsmechanismen.
- Der Wechsel von Add-Ons zu regulären Modulen vereinfacht die Entwicklung und erweitert die Möglichkeiten zur Anpassung und Integration.
Diese Verbesserungen stellen insgesamt einen bedeutenden Fortschritt in unseren laufenden Bemühungen dar, die AWS-Integrationserfahrung zu optimieren. Mit diesen Fortschritten wird die Mendix Die Community ist besser gerüstet, um robuste, effiziente und skalierbare Anwendungen auf AWS zu erstellen.
Sie fragen sich vielleicht, wie Sie den Weg ebnen können, um Mendix der schnellste und einfachste Weg, Anwendungen auf AWS zu erstellen. Wir sind immer gespannt auf Ihre Ideen, beantworten Ihre Anliegen und unterstützen Sie bei Ihrer Entwicklung. Wir sind nur eine Nachricht entfernt! Kontaktieren Sie uns unter [E-Mail geschützt] , Auf die Mendix Community-Slack im Kanal #aws-general oder auf der Mendix Forum.