OpenAPI-baserade AEM API:er
Lär dig mer om OpenAPI-baserade AEM API:er, inklusive autentiseringsstöd, viktiga koncept och hur du får tillgång till Adobe API:er.
OpenAPI-specifikationen(tidigare Swagger) är en vanlig standard för att definiera RESTful-API:er. AEM as a Cloud Service tillhandahåller flera OpenAPI-specifikationsbaserade API:er (eller helt enkelt OpenAPI-baserade AEM API:er), vilket gör det enklare att skapa anpassade program som interagerar med AEM författare eller publiceringstjänsttyper. Nedan följer några exempel:
Webbplatser
- Webbplatser-API: API:er för arbete med innehållsfragment.
Assets
-
Mappar-API: API:er för att arbeta med mappar som att skapa, lista och ta bort mappar.
-
Assets Author API: API:er för att arbeta med resurser och metadata.
Forms
- Forms Communications API:er: API:er för att arbeta med formulär och dokument.
I framtida versioner kommer fler OpenAPI-baserade AEM-API:er att läggas till som stöd för fler användningsfall.
Autentiseringsstöd authentication-support
OpenAPI-baserade AEM-API:er stöder OAuth 2.0-autentisering, inklusive följande typer av bidrag:
-
Autentiseringsuppgifter för OAuth Server-till-Server: Perfekt för backend-tjänster som behöver API-åtkomst utan användarinteraktion. Den använder anslagstypen client_credentials, vilket möjliggör säker åtkomsthantering på servernivå. Mer information finns i Autentiseringsuppgifter för OAuth Server-till-server.
-
Autentiseringsuppgifter för OAuth-webbprogram: Passar för webbprogram med klientkomponenter och backend-komponenter som har åtkomst till AEM API:er för användare. Den använder anslagstypen permission_code, där serverdelsservern hanterar hemligheter och token på ett säkert sätt. Mer information finns i Autentiseringsuppgifter för OAuth-webbprogram.
-
Autentiseringsuppgifter för fristående program för OAuth: Avsett för SPA som körs i webbläsaren, som behöver komma åt API:er för en användare utan serverdel. Den använder anslagstypen permission_code och förlitar sig på säkerhetsmekanismer på klientsidan med PKCE (Proof Key for Code Exchange) för att skydda auktoriseringskodflödet. Mer information finns i Autentiseringsuppgifter för fristående program för OAuth.
Vilken autentiseringsmetod som ska användas auth-method-decision
När du bestämmer vilken autentiseringsmetod som ska användas bör du tänka på följande:
Användarautentisering (Web App eller Single Page App) ska vara standardvalet när AEM-användarkontext används. Detta garanterar att alla åtgärder i databasen tilldelas den autentiserade användaren och att användaren endast har de behörigheter som han/hon är berättigad till.
Använda Server-till-server-kontot (eller det tekniska systemkontot) för att utföra åtgärder för en enskild användares räkning, vilket åsidosätter säkerhetsmodellen och medför risker som eskalering av behörigheter och felaktig granskning.
Skillnad mellan autentiseringsuppgifter för OAuth Server-to-Server och Web App jämfört med Single Page App difference-between-oauth-server-to-server-vs-web-app-vs-single-page-app-credentials
I följande tabell sammanfattas skillnaderna mellan de tre OAuth-autentiseringsmetoder som stöds av OpenAPI-baserade AEM API
client_id
, client_secret
) säkert i backend-system.client_id
, client_secret
) säkert i backend-system för att utbyta auktoriseringskod för åtkomsttoken.client_secret
eftersom det inte är säkert att lagra i klientprogram. PKCE förlitar sig på att växla auktoriseringskod för åtkomsttoken.Åtkomst till Adobe API:er och relaterade koncept accessing-adobe-apis-and-related-concepts
Innan du får åtkomst till Adobe API:er är det viktigt att du förstår dessa viktiga konstruktioner:
-
Adobe Developer Console: Utvecklarhubben för åtkomst till Adobe API:er, SDK:er, realtidshändelser, serverlösa funktioner med mera. Observera att den skiljer sig från AEM Developer Console, som används för att felsöka AEM-program.
-
Adobe Developer Console Project: Central plats för hantering av API-integreringar, händelser och körningsfunktioner. Här konfigurerar du API:er, anger autentisering och genererar nödvändiga autentiseringsuppgifter.
-
Produktprofiler: Produktprofiler innehåller en behörighetsförinställning som gör att du kan styra användar- eller programåtkomst till Adobe-produkter som AEM, Adobe Target, Adobe Analytics och andra. Alla Adobe-produkter har fördefinierade produktprofiler.
-
Tjänster: Tjänsterna definierar de faktiska behörigheterna och är associerade med produktprofilen. Om du vill minska eller öka behörighetsförinställningen kan du avmarkera eller välja de tjänster som är kopplade till produktprofilen. Det innebär att du kan styra åtkomstnivån för produkten och dess API:er. I AEM as a Cloud Service representerar tjänster användargrupper med fördefinierade åtkomstkontrollistor (ACL) för databasnoder, vilket möjliggör detaljerad behörighetshantering.
Kom igång
Lär dig hur du konfigurerar AEM as a Cloud Service-miljön och ett Adobe Developer Console-projekt för att ge åtkomst till OpenAPI-baserade AEM API:er. Du kan även använda AEM API med webbläsare för att kontrollera konfigurationen och granska begäran och svar.
Konfigurera OpenAPI-baserade AEM API:er
Lär dig hur du konfigurerar AEM as a Cloud Service-miljön för att ge åtkomst till OpenAPI-baserade AEM API:er.
API-självstudier
Lär dig hur du använder OpenAPI-baserade AEM API:er med olika OAuth-autentiseringsmetoder:
Anropa API med autentisering från server till server
Lär dig hur du anropar OpenAPI-baserade AEM-API:er från ett anpassat NodeJS-program med OAuth Server-till-Server-autentisering.
Anropa API med autentisering via webbapp
Lär dig hur du anropar OpenAPI-baserade AEM-API:er från ett anpassat webbprogram med OAuth Web App-autentisering.
Anropa API med autentisering för Single Page-app
Lär dig hur du anropar OpenAPI-baserade AEM-API:er från en anpassad Single Page App (SPA) med autentisering med OAuth Single Page App.