Maskieren von URLs mit einer Transformationsrichtlinie

Abgeschlossen

Organisationen müssen die Informationen, die eine API veröffentlicht, möglicherweise kurzfristig anpassen. Gründe könnten z. B. eine Änderung der Gesetzgebung oder neue Sicherheitsbedrohungen sein.

Dieses Erhebungs-API-Beispiel macht Details über die URL verfügbar, von der aus die API aufgerufen wird. Mithilfe dieser Informationen könnte ein böswilliger Benutzer versuchen, auf die Erhebungsdaten zuzugreifen, indem er das API Management-Gateway umgeht und einen weniger sicheren Endpunkt verfügbar macht. Als leitender Entwickler möchten Sie diese URLs im Antworttext der API maskieren.

Hier erfahren Sie, wie Sie mithilfe von API Management-Richtlinien den Inhalt in Antwortheadern und Antworttext von APIs bearbeiten können.

Gründe für die Transformation von Antworten

Der Antworttext eines API-Aufrufs enthält die Daten, die angefordert werden. In der Erhebungs-API enthält der Antworttext z. B. die JSON-Daten der Befragten. Sie können auch feststellen, dass der Text URL-Links enthält, um einzelne Personen anzuzeigen:

Screenshot of a default HTTP response with the href value highlighted, showing an unmasked URL link.

Diese Links basieren auf den Endpunkten der Erhebungs-API und müssen maskiert werden, um die API Management-URLs anzuzeigen.

Um diese Konfiguration zu erzielen, erstellen Sie eine Transformationsrichtlinie.

Hinweis

Es ist eine bewährte Methode, die Back-End-API mithilfe eines der verfügbaren Mechanismen in API Management zu sichern. Konfigurieren Sie die API beispielsweise so, dass ein Clientzertifikat erforderlich ist, und konfigurieren Sie dann API Management für die Bereitstellung dieses Zertifikats. Bei dieser Konfiguration ist es nicht möglich, die Back-End-API direkt aufzurufen und Ihr API Management-Gateway zu umgehen, da es kein Zertifikat gibt, das vom Back-End erkannt wird.

Transformationsrichtlinien

Eine Transformationsrichtlinie ändert den Inhalt eines API-Aufrufs. Einige Transformationsrichtlinien gelten für den Header und andere für den Text. Die folgenden Transformationen sind verfügbar:

Transformieren BESCHREIBUNG
JSON in XML konvertieren Konvertiert einen Anforderungs- oder Antworttext von JSON in XML.
XML in JSON konvertieren Konvertiert einen Anforderungs- oder Antworttext von XML in JSON.
Zeichenfolge in Text ersetzen Sucht nach einer Teilzeichenfolge in der Antwort oder Anforderung und ersetzt diese durch eine andere Teilzeichenfolge.
URLs in Inhalt maskieren Generiert Links im Antworttext neu, sodass diese über das Gateway auf den äquivalenten Link zeigen.
Back-End-Dienst festlegen Ändert den Back-End-Dienst für eine eingehende Anforderung.
Text festlegen Legt den Nachrichtentext für eine Anforderung oder Antwort fest.
HTTP-Header setzen Weist einem vorhandenen Antwort- oder Anforderungsheader einen Wert zu oder fügt einen neuen Antwort- oder Anforderungsheader hinzu.
Abfrageparameter setzen Fügt Abfrageparameter von Anforderungen hinzu, löscht diese oder ersetzt deren Werte.
URL umschreiben Konvertiert eine Anforderung-URL von der öffentlichen Form in die vom Webdienst erwartete Form.
XML mithilfe von XSLT transformieren Wendet eine XSL-Transformation auf XML im Anforderungs- oder Antworttext an.

In der folgenden Übung verwenden Sie die Transformation URLs im Inhalt maskieren, um die Links zu ändern.