Zeitpunkt der Verwendung von Azure API Management

Abgeschlossen

Jetzt werden wir einige Szenarien besprechen, die veranschaulichen, wann die Verwendung von Azure API Management geeignet ist. Mithilfe des Lieferdienstes für Essen als Beispiel werden wir die Verwaltung des API-Lebenszyklus im Hinblick auf die Standardisierung von APIs, die Zentralisierung der API-Verwaltung und -Exposition sowie die Verbesserung der API-Sicherheit untersuchen. Wir können die folgenden Kriterien verwenden, um Ihnen bei der Entscheidung zu helfen, ob Azure API Management eine geeignete Wahl für die Verwaltung und Veröffentlichung des API-Bestands Ihrer Organisation ist:

Entscheidungskriterien

Kriterien Analyse
Anzahl der APIs Das wichtigste Kriterium ist die Anzahl der von Ihnen verwalteten APIs. Je mehr APIs Sie bereitgestellt haben, desto größer ist der Bedarf hinsichtlich der Standardisierung der Bereitstellung und Zentralisierung der API-Steuerung.
Rate der API-Änderungen Der nächste Aspekt ist die Rate, mit der Ihre Organisation API-Revisionen und -Versionen implementiert. Je schneller Sie API-Revisionen erstellen und neue API-Versionen veröffentlichen, desto größer ist der Bedarf an einem robusten und flexiblen Versionskontrollsystem.
API-Verwaltungslast Der letzte Aspekt ist die Frage, wie hoch der Richtlinienaufwand ist, den Sie auf Ihre APIs anwenden. Richtlinien wie Nutzungskontingente, Begrenzungen der Datenübertragungsrate von Aufrufen, Anforderungstransformationen und Anforderungsvalidierung. Je mehr Konfigurationen und Optionen Ihre APIs erfordern, desto größer ist der Bedarf an standardisierten und zentralisierten Implementierungen von Richtlinien.

Anwenden der Kriterien

Azure API Management ist die richtige Wahl für die Verwaltung von APIs während ihres Lebenszyklus, wenn Sie über eine große API-Bereitstellung verfügen, die sich häufig ändert und einen erheblichen Richtlinienaufwand erfordert. Diese Kriterien gelten jedoch nicht für alle Anwendungsfälle gleichermaßen. Betrachten wir nun, wie diese Kriterien auf die Anwendungsfälle in unserem Szenario zutreffen.

Sollten Sie Azure API Management verwenden, um APIs zu standardisieren?

Durch die Möglichkeit, mehrere APIs über eine einzelne Verwaltungsschnittstelle zu verwalten, erleichtert es Azure API Management, Konsistenz über mehrere APIs hinweg herzustellen. Sie können viele API-Features standardisieren, einschließlich:

  • Spezifikationen. Die Standardisierung von API-Spezifikationen (z. B. die Verwendung von REST für alle APIs und die Nutzung eines konsistenten Benennungsschemas für JSON-Name/Wert-Paare) reduziert die Entwicklungsdauer, verringert die Fehlerquote und ermöglicht es Ihrer Organisation, schneller auf Kundenvorschläge und Marktgegebenheiten zu reagieren.
  • Dokumentation: Die Standardisierung der API-Dokumentation ermöglicht es Entwicklern, sich schnell mit einer API vertraut zu machen. Darüber hinaus werden Anfragen an den technischen Support reduziert und Entwickler dazu ermutigt, mehr von Ihren APIs zu verwenden.
  • URLs. Die Standardisierung der Basis-URL für Ihre APIs reduziert Consumerfehler und verleiht Ihren API-Bereitstellungen ein professionelleres Aussehen.
  • Analysen: Die Standardisierung von API-Analysen ermöglicht es Verwaltungsteams und Technikern, Nutzung und Leistung über mehrere APIs hinweg zu vergleichen.
  • Bestimmungen. Bei APIs, die behördliche oder branchenspezifische Regeln und Bestimmungen erfüllen müssen, hilft die Standardisierung, die Compliance API-übergreifend sicherzustellen.

Several APIs with varying configurations are imported into Azure API Management. When they emerge from API Management, they have standardized configurations.

In den meisten Fällen erweitert sich der Bedarf an Standardisierung in den folgenden Situationen:

  • Die Anzahl der APIs nimmt zu.
  • Die Rate, mit der die APIs überarbeitet werden, erhöht sich.
  • Die API-Verwaltungslast nimmt zu.

Diese Notwendigkeit trifft auf das Szenario der Lieferplattform für Essen zu, die Konsistenz über die APIs für die mobile App, die Web-App und die Partnerrestaurants hinweg erfordert.

Sollten Sie Azure API Management verwenden, um API-Vorgänge zu zentralisieren?

Azure API Management verbessert die Zentralisierung aller API-Vorgänge, indem mehrere APIs unter einem einzelnen administrativen Konzept zusammengefasst werden. Ohne einen API-Verwaltungsdienst ist jede API in Bezug auf Verwaltung, Bereitstellung und Entwicklerzugriff auf sich allein gestellt. Dieses dezentralisierte Modell führt häufig zu doppelten Anstrengungen und erhöhtem Mehraufwand. Die Zentralisierung von API-Vorgängen kann die folgenden Vorteile aufweisen:

  • Verwaltung. Wenden Sie administrative Vorgänge (wie die Richtlinienerstellung, die Benutzerverwaltung und Analysen) an einem zentralen Ort wie der von Azure API Management bereitgestellten Verwaltungsschnittstelle an. Die Zentralisierung von Verwaltungsaufgaben gestaltet die Ausführung dieser Aufgaben einfacher und effizienter.
  • Bereitstellung. Leiten Sie alle API-Anforderungen über eine einzelne Basis-URL weiter, z. B. den Endpunkt, der vom Azure API Management-Gateway erstellt wurde. Die Zentralisierung der Bereitstellung erleichtert die Durchsetzung von Richtlinien und die Anwendung von Transformationen.
  • Entwicklerzugriff. Platzieren Sie alle Entwicklerressourcen, z. B. Dokumentation, Codebeispiele, Tests und Abonnements, an einem zentralen Ort wie dem Entwicklerportal in Azure API Management. Durch die Zentralisierung des Entwicklerzugriffs können Entwickler Ihre APIs leichter finden und verwenden.

Die Effizienz, die sich aus der Zentralisierung der API-Vorgänge ergibt, steigt tendenziell mit der Anzahl der APIs und mit der Größe der gesamten Verwaltungslast, die Sie Ihren APIs auferlegen. Zentralisierte APIs sind eine große Hilfe, wenn APIs häufig aktualisiert werden, da sie ein einzelnes Versionsverwaltungsschema für alle Produkte ermöglichen.

All diese Faktoren treffen in hohem Maße auf unser Szenario der Lieferplattform für Essen zu. Der zentralisierte Consumerzugriff erleichtert über das Entwicklerportal z. B. die Anmeldung neuer Entwickler, was die Monetarisierung der APIs der Plattform verbessert.

Sollten Sie Azure API Management verwenden, um den Zugriff auf Ihre APIs zu schützen?

Azure API Management wurde mit Blick auf die API-Sicherheit entwickelt. So viele Organisationen verlassen sich auf APIs für den internen und externen Datenaustausch zwischen Apps und Geräten. Ein planloser oder inkonsistenter Ansatz bei der Sicherheit fordert Ärger geradezu heraus. Eine angemessene API-Sicherheitsstrategie umfasst die folgenden Basen:

  • Berechtigungen Steuern, wer mit einer API arbeiten kann und welche Möglichkeiten sie damit erhalten. In Azure API Management ist es einfacher und effizienter, Berechtigungen zur Steuerung des API-Zugriffs anzuwenden, wenn Sie alle API-Consumer als Benutzer einstufen und diese Benutzer in Gruppen organisieren können.
  • Zugriff. Erlauben Sie nur autorisierten Benutzern, Anforderungen zu übermitteln. Mit Azure API Management versorgt das Entwicklerportal Benutzer mit Abonnementschlüsseln und Sie können den Zugriff auf APIs mithilfe mehrerer Authentifizierungsformen und JSON Web Token einschränken.
  • Schutz. Schützen Sie die API vor böswilliger Nutzung. Mit Azure API Management können Sie den API-Zugriff mithilfe von Begrenzungen der Datenübertragungsrate und Nutzungskontingenten drosseln, um einen (absichtlichen oder versehentlichen) Missbrauch der API durch Consumer zu verhindern.
  • Compliance: Stellen Sie sicher, dass Ihre APIs alle Sicherheitsrichtlinien von Unternehmen oder Behörden erfüllen. Wenn Sie alle Ihre APIs in Azure API Management zusammen verwalten, ist es einfacher, diese APIs mit Sicherheitsrichtlinien zu konfigurieren, die die Compliance erfüllen.

Je mehr APIs Sie verwalten, desto größer ist der Bedarf an Sicherheit. Mehr APIs bedeuten eine größere Angriffsfläche und ein höheres Risiko von versehentlichen Sicherheitsverletzungen oder Verlusten bei Daten. Je häufiger Sie außerdem Ihre APIs überarbeiten, desto größer ist die Chance, dass eine Revision oder neue Version eine Sicherheitslücke aufdecken kann.

Diese Sicherheitsbedenken sind in unserem Szenario der Essensauslieferung von größter Bedeutung. Unsere Plattform generiert und speichert viele vertrauliche Daten, z. B. Restaurantzahlungen, Kundennamen und Adressen sowie Standorte von Lieferfahrzeugen.