Was ist eine Richtlinie?

Sie sehen sich die Dokumentation zu Apigee Edge an.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

Apigee Edge ermöglicht Ihnen, API-Verhalten zu programmieren, ohne Code zu schreiben, indem Sie Richtlinien verwenden. Eine Richtlinie ist wie ein Modul, das eine bestimmte, eingeschränkte Verwaltungsfunktion implementiert. Mithilfe von Richtlinien können Sie gängige Verwaltungsoptionen einfach und zuverlässig auf APIs anwenden. Richtlinien bieten Funktionen wie Sicherheits-, Ratenbegrenzungs-, Transformations- und Vermittlungsfunktionen. Sie müssen dann nicht mehr Code schreiben und diese Funktionen selbst verwalten.

Sie sind nicht auf die von Apigee Edge bereitgestellten Richtlinientypen beschränkt. Sie können auch Benutzerdefinierte Skripts und Code (wie JavaScript- und Node.js-Anwendungen), die den API-Proxy erweitern Funktionen und ermöglichen es Ihnen, über die grundlegenden Verwaltungsfunktionen hinaus innovativ zu sein, Apigee-Richtlinien

In diesem Video erhalten Sie eine Einführung in den Richtlinienanhang und die Durchsetzung von Richtlinien.

Richtlinientypen

Technisch gesehen ist eine Richtlinie eine XML-formatierte Konfigurationsdatei. Struktur der einzelnen Richtlinientypen z. B. die erforderlichen und optionalen Konfigurationselemente, werden durch ein XML-Schema definiert. Wenn Sie mit XML-Tools vertraut sind, sollten Sie sich mit den Richtlinienschemas in den API-Plattformbeispielen auf GitHub vertraut machen.

Edge-Richtlinientypen sind in die folgenden Funktionskategorien gruppiert:

Traffic-Verwaltung

Mit Richtlinien in der Kategorie "Trafficverwaltung" können Sie den Flow von Anfrage- und Antwortnachrichten über einen API-Proxy steuern. Diese Richtlinien unterstützen die Kontrolle auf Betriebs- und Geschäftsebene. Sie haben die Kontrolle über den Rohdurchsatz und können den Traffic für einzelne Apps steuern. Durch Richtlinientypen für die Trafficverwaltung können Sie Kontingente durchsetzen und damit Denial-of-Service-Angriffe verringern.

Security

Richtlinien in der Sicherheitskategorie unterstützen Authentifizierung, Autorisierung und inhaltsbasierte Sicherheit.

Mediation

Mit Richtlinien in der Kategorie Mediation können Sie Nachrichten aktiv bearbeiten, wenn sie durch API-Proxys fließen. Sie können damit Nachrichtenformate von XML in JSON (und umgekehrt) oder ein XML-Format in ein anderes XML-Format umwandeln. Außerdem können Sie Nachrichten parsen, neue Nachrichten generieren und die Werte ausgehender Nachrichten ändern. Mediationsrichtlinien interagieren auch mit grundlegenden Diensten von API-Diensten, sodass Sie Daten zu Anwendungen, Entwicklern, Sicherheitstokens und API-Produkten zur Laufzeit abrufen können.

Erweiterung

Mit Richtlinien in der Kategorie Erweiterung können Sie die Erweiterbarkeit von API-Diensten nutzen, um benutzerdefiniertes Verhalten in der Programmiersprache Ihrer Wahl zu implementieren.

Jeder Richtlinientyp ist in der Übersicht über die Richtlinienreferenz ausführlich dokumentiert. Dieses Thema veranschaulicht allgemeine Interaktionen und zeigt, wie Sie Richtlinien erstellen und sie an Abläufe in einer API-Proxy-Konfiguration anhängen.

Richtlinienänderungen bereitstellen

Damit die Richtlinienänderungen wirksam werden, müssen Sie die API-Proxy-Revision für eine Umgebung bereitstellen. Nachdem Sie eine Richtlinie angehängt oder Änderungen an einer vorhandenen Richtlinie vorgenommen haben, verwenden Sie die Verwaltungsoberfläche oder das Management API, um die Änderungen bereitzustellen.

Erzwingung von Richtlinien prüfen

Um zu prüfen, ob eine Richtlinie ordnungsgemäß erzwungen wird, muss die API von einem HTTP-Client aufgerufen werden. Um diese Kontingentkonfiguration zu prüfen, senden Sie mehrere Anfragen an die API, indem Sie das in der Kontingentrichtlinie festgelegte Kontingentlimit überschreiten. (Der URI-Pfad, der im ProxyEndpoint als Basispfadeinstellung konfiguriert ist, lautet in der folgenden Anfrage /weather).

http://{org_name}-test.apigee.net/weather/forecastrss?w=12797282

Wenn Sie mehr als 1 Anfrage innerhalb einer Minute gesendet haben, sollten Sie die folgende Fehlermeldung sehen:

{  
   "fault":{  
      "faultstring":"policies.ratelimit.QuotaViolation",
      "detail":{  
         "errorcode":"policies.ratelimit.QuotaViolation"
      }
   }
}

Dies bedeutet, dass die Kontingentrichtlinie von API-Diensten erzwungen wird.

Richtlinienbasierte Fehlerbehandlung

Beachten Sie das Format der oben aufgeführten Fehlermeldung. Es enthält die Attribute faultstring und errorcode. In vielen Fällen müssen Sie ein Verhalten implementieren, das mit diesen Fehlern umgehen kann. Sie können beispielsweise eine benutzerdefinierte Nachricht an einen Entwickler senden, dessen App das Kontingent überschritten hat.

Weitere Informationen zur Fehlerbehandlung finden Sie unter Fehlerbehandlung.

Best Practices: Allgemeine Richtliniensätze

Zur Einhaltung der grundlegenden Verwaltungsanforderungen erzwingen API-Proxys normalerweise die folgenden Richtlinien:

Grundlegende API-Schlüsselvalidierung

ProxyEndpoint-Anforderungs-Flow:
  1. SpikeArrest
  2. XMLThreatProtection oder JSONThreatProtection
  3. API-Schlüsselüberprüfung
  4. Kontingent
  5. ResponseCache
ProxyEndpoint-Antwort-Flow:
  1. ResponseCache

Grundtransformation: JSON in XML

Anfrage-Flow:
  1. SpikeArrest
  2. JSONThreatProtection
  3. API-Schlüsselüberprüfung
  4. Kontingent
  5. JSONtoXML
Antwort-Flow:
  1. XMLtoJSON
  2. ResponseCache