Was ist eine Richtlinie?

Diese Seite gilt für Apigee und Apigee Hybrid.

Apigee Edge-Dokumentation aufrufen

Apigee ermöglicht Ihnen, „API-Verhalten“ zu programmieren, ohne Code zu schreiben. Dazu verwenden Sie Richtlinien. 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 bereitgestellten Richtlinientypen beschränkt. Sie können auch benutzerdefinierte Skripte und Code (z. B. JavaScript-Anwendungen) schreiben, die die API-Proxy-Funktionalität erweitern und es Ihnen ermöglichen, zusätzlich zu den grundlegenden Verwaltungsfunktionen, die von den Apigee-Richtlinien unterstützt werden, Innovationen einzubringen.

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. Die Struktur eines jeden Richtlinientyps (z. B. die erforderlichen und optionalen Konfigurationselemente) wird 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.

Apigee-Richtlinientypen werden in die folgenden funktionalen Kategorien unterteilt:

Trafficverwaltung

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 Apigee, 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 Apigee nutzen, um benutzerdefiniertes Verhalten in der Programmiersprache Ihrer Wahl zu implementieren.

Ausführliche Informationen zu jedem Richtlinientyp finden Sie in der Übersicht über die Richtlinienreferenz. In diesem Thema wird die allgemeine Interaktion erläutert und Sie erfahren, wie Richtlinien erstellt und in einer API-Proxy-Konfiguration an Flows angehängt werden.

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 angefügt oder Änderungen an einer vorhandenen Richtlinie vorgenommen haben, verwenden Sie die Apigee-UI oder die Apigee 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 Quota-Konfiguration zu prüfen, senden Sie mehrere Anfragen an die API und überschreiten dabei das in der Kontingentrichtlinie festgelegte Kontingentlimit. (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 eine Anfrage innerhalb einer Minute gesendet haben, sollten Sie die folgende Fehlermeldung sehen:

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

Daran erkennen Sie, dass die Richtlinie Quota von Apigee 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 ausgeben, dessen Anwendung die Quota überschreitet.

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. Quota
  5. ResponseCache
ProxyEndpoint-Antwort-Flow:
  1. ResponseCache

Grundtransformation: JSON in XML

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