OpenAPI-basierte AEM-APIs
Erfahren Sie mehr über die OpenAPI-basierten AEM-APIs, einschließlich Authentifizierungsunterstützung, Schlüsselkonzepten und Informationen zum Zugriff auf Adobe-APIs.
Die OpenAPI-Spezifikation (früher bekannt als Swagger) ist ein weit verbreiteter Standard zur Definition von RESTful-APIs. AEM as a Cloud Service bietet mehrere APIs, die auf OpenAPI-Spezifikationen basieren (oder einfach OpenAPI-basierte AEM-APIs). Sie vereinfachen die Erstellung benutzerdefinierter Anwendungen, die mit den Service-Typen „Autor/Autorin“ oder „Veröffentlichen“ von AEM interagieren. Im Folgenden einige Beispiele:
Sites
- Sites-API: APIs zum Arbeiten mit Inhaltsfragmenten.
Assets
-
Folders-API: APIs zum Arbeiten mit Ordnern wie das Erstellen, Auflisten und Löschen von Ordnern.
-
Assets Author-API: APIs zum Arbeiten mit Assets und den zugehörigen Metadaten.
Forms
- Forms – Kommunikations-APIs: APIs zum Arbeiten mit Formularen und Dokumenten.
In zukünftigen Versionen werden weitere OpenAPI-basierte AEM-APIs hinzugefügt, um weitere Anwendungsfälle zu unterstützen.
Authentifizierungsunterstützung authentication-support
Die OpenAPI-basierten AEM-APIs unterstützen die OAuth 2.0-Authentifizierung, einschließlich der folgenden Grant-Typen:
-
OAuth-Server-zu-Server-Anmeldedaten: Ideal für Backend-Services, die API-Zugriff ohne Benutzerinteraktion benötigen. Verwendet wird der Grant-Typ client_credentials, der eine sichere Zugriffsverwaltung auf Server-Ebene ermöglicht. Weitere Informationen finden Sie unter OAuth-Server-zu-Server-Anmeldedaten.
-
OAuth-Web-Anwendungs-Anmeldedaten: Geeignet für Web-Anwendungen mit Frontend- und Backend-Komponenten, die im Namen von Benutzenden auf AEM-APIs zugreifen. Verwendet wird der Grant-Typ authorization_code, dem der Backend-Server Geheimnisse und Token sicher verwaltet. Weitere Informationen finden Sie unter OAuth-Web-Anwendungs-Anmeldedaten.
-
OAuth-Single-Page-Application-Anmeldedaten: Entwickelt für SPAs, die im Browser ausgeführt werden, der im Namen einer Benutzerin bzw. eines Benutzers ohne Backend-Server auf APIs zugreifen muss. Verwendet wird der Grant-Typ authorization_code. Dieser verlässt sich auf Client-seitige Sicherheitsmechanismen, die PKCE (Proof Key for Code Exchange) verwenden, um den Autorisierungs-Code-Fluss zu sichern. Weitere Informationen finden Sie unter OAuth-Single-Page-Application-Anmeldedaten.
Authentifizierungsmethoden und ihre Anwendung auth-method-decision
Beachten Sie bei Auswahl der Authentifizierungsmethode Folgendes:
Benutzerauthentifizierung (Web-Anwendung oder Single Page Application) sollte die Standardoption sein, wenn AEM-Benutzerkontext betroffen ist. Dadurch wird sichergestellt, dass alle Aktionen im Repository ordnungsgemäß der authentifizierten Benutzerin bzw. dem authentifizierten Benutzer zugeordnet werden und dass die Benutzerin bzw. der Benutzer nur auf die Berechtigungen beschränkt ist, die ihr bzw. ihm gewährt wurden.
Die Verwendung des Server-zu-Server-Kontos (oder des technischen Systemkontos) zum Ausführen von Aktionen für eine einzelne Benutzerin bzw. einen einzelnen Benutzer umgeht das Sicherheitsmodell und birgt Risiken wie Berechtigungseskalation und ungenaues Auditing.
Unterschied zwischen OAuth-Server-zu-Server-, Web-Anwendungs- und Single-Page-Application-Anmeldedaten difference-between-oauth-server-to-server-vs-web-app-vs-single-page-app-credentials
In der folgenden Tabelle werden die Unterschiede zwischen den drei OAuth-Authentifizierungsmethoden zusammengefasst, die von OpenAPI-basierten AEM-APIs unterstützt werden:
client_id
, client_secret
) in Backend-Systemen.client_id
, client_secret
) in Backend-Systemen, um den Autorisierungs-Code gegen ein Zugriffs-Token auszutauschen.client_secret
, da das Speichern in Frontend-Anwendungen unsicher ist. Stützt sich beim Austausch von Autorisierungs-Code gegen Zugriffs-Token auf PKCE.Zugreifen auf Adobe-APIs und zugehörige Konzepte accessing-adobe-apis-and-related-concepts
Bevor Sie auf Adobe-APIs zugreifen, müssen Sie diese Schlüsselkonstrukte verstehen:
-
Adobe Developer Console: Der Entwicklungs-Hub für den Zugriff auf Adobe-APIs, SDKs, Echtzeitereignisse, Server-lose Funktionen usw. Beachten Sie, dass sie sich von der AEM Developer Console unterscheidet, die zum Debugging von AEM-Anwendungen verwendet wird.
-
Adobe Developer Console-Projekt: Zentraler Ort für die Verwaltung von API-Integrationen, Ereignissen und Laufzeitfunktionen. Hier konfigurieren Sie APIs, legen die zugehörige Authentifizierung fest und generieren die erforderlichen Anmeldedaten.
-
Produktprofile: Produktprofile bieten eine Berechtigungsvoreinstellung, mit der Sie den Benutzer- oder Anwendungszugriff auf Adobe-Produkte wie AEM, Adobe Target, Adobe Analytics usw. steuern können. Jedem Adobe-Produkt sind vordefinierte Produktprofile zugeordnet.
-
Services: Services definieren die tatsächlichen Berechtigungen und sind mit dem Produktprofil verknüpft. Um die Berechtigungsvoreinstellungen einzuschränken oder zu erweitern, können Sie die dem Produktprofil zugeordneten Services ab- oder auswählen. Auf diese Weise können Sie die Zugriffsebene für das Produkt und seine APIs steuern. In AEM as a Cloud Service stellen Services Benutzergruppen mit vordefinierten Zugriffssteuerungslisten (Access Control Lists, ACLs) für Repository-Knoten dar, was eine granulare Berechtigungsverwaltung ermöglicht.
Erste Schritte
Erfahren Sie, wie Sie Ihre AEM as a Cloud Service-Umgebung und ein Adobe Developer Console-Projekt einrichten, um den Zugriff auf OpenAPI-basierte AEM-APIs zu aktivieren. Sie können auch über den Browser auf das AEM-API zugreifen, um die Einrichtung zu verifizieren und die Anfrage und Antwort zu überprüfen.
Einrichten von OpenAPI-basierten AEM-APIs
Erfahren Sie, wie Sie Ihre AEM as a Cloud Service-Umgebung einrichten, um den Zugriff auf OpenAPI-basierte AEM-APIs zu aktivieren.
API-Tutorials
Erfahren Sie, wie Sie die OpenAPI-basierten AEM-APIs mit verschiedenen OAuth-Authentifizierungsmethoden verwenden:
Aufrufen des APIs mit Server-zu-Server-Authentifizierung
Erfahren Sie, wie Sie OpenAPI-basierte AEM-APIs aus einer benutzerdefinierten NodeJS-Anwendung mithilfe der OAuth-Server-zu-Server-Authentifizierung aufrufen.
Aufrufen des APIs mit Web-Anwendungs-Authentifizierung
Erfahren Sie, wie Sie OpenAPI-basierte AEM-APIs aus einer benutzerdefinierten Web-Anwendung mithilfe der OAuth-Web-Anwendungs-Authentifizierung aufrufen.
Aufrufen des APIs mit Single-Page-Application-Authentifizierung
Erfahren Sie, wie Sie OpenAPI-basierte AEM-APIs aus einer benutzerdefinierten Single Page Application (SPA) mithilfe der OAuth-Single-Page-Application-Authentifizierung aufrufen.