API AEM basate su OpenAPI

IMPORTANT
Le API AEM basate su OpenAPI sono disponibili solo in AEM as a Cloud Service e non sono compatibili con AEM 6.X.

Scopri di più sulle API AEM basate su OpenAPI, tra cui il supporto per l’autenticazione, i concetti chiave e le modalità di accesso alle API Adobe.

La specifica OpenAPI (precedentemente nota come Swagger) è uno standard ampiamente utilizzato per la definizione delle API RESTful. AEM as a Cloud Service fornisce diverse API basate sulla specifica OpenAPI (o semplicemente API AEM basate su OpenAPI), semplificando la creazione di applicazioni personalizzate che interagiscono con i tipi di servizi di authoring o di pubblicazione di AEM. Di seguito sono riportati alcuni esempi:

Sites

  • API di Sites: API per utilizzare i frammenti di contenuto.

Risorse

Moduli

Nelle versioni future, verranno aggiunte più API AEM basate su OpenAPI per supportare casi d’uso aggiuntivi.

Supporto per l’autenticazione authentication-support

Le API AEM basate su OpenAPI supportano l’autenticazione OAuth 2.0, inclusi i seguenti tipi di concessione:

  • Credenziale da server a server OAuth: ideale per i servizi di back-end che richiedono accesso API senza interazione da parte dell’utente. Utilizza il tipo di concessione client_credentials, che consente la gestione dell’accesso sicuro a livello di server. Per ulteriori informazioni, consulta Credenziale da server a server OAuth.

  • Credenziale app web OAuth: adatta per applicazioni web con componenti front-end e back-end che accedono alle API AEM per conto degli utenti. Utilizza il tipo di concessione authorization_code, in cui il server back-end gestisce in modo sicuro segreti e token. Per ulteriori informazioni, consulta Credenziale app web OAuth.

  • Credenziale applicazione a pagina singola OAuth: progettata per SPA in esecuzione nel browser, che devono accedere alle API per conto di un utente senza un server back-end. Utilizza il tipo di concessione authorization_code e si basa su meccanismi di sicurezza lato client che utilizzano l’estensione PKCE (Proof Key for Code Exchange) per proteggere il flusso del codice di autorizzazione. Per ulteriori informazioni, consulta Credenziale applicazione a pagina singola OAuth.

Quale metodo di autenticazione usare auth-method-decision

Quando decidi quale metodo di autenticazione utilizzare, tieni presente quanto segue:

Quale metodo di autenticazione utilizzare?

L’autenticazione utente (app web o applicazione a pagina singola) deve essere la scelta predefinita ogni volta che viene coinvolto un contesto utente di AEM. Questo assicura che tutte le azioni nell’archivio vengano attribuite correttamente all’utente autenticato e che l’utente sia limitato solo alle autorizzazioni a cui ha diritto.
L’utilizzo da server a server (o account di sistema tecnico) per eseguire azioni per conto di un singolo utente ignora il modello di sicurezza e introduce rischi quali l’escalation dei privilegi e il controllo non accurato.

Differenza tra le credenziali da server a server OAuth rispetto ad app web e all’applicazione a pagina singola difference-between-oauth-server-to-server-vs-web-app-vs-single-page-app-credentials

La tabella seguente riepiloga le differenze tra i tre metodi di autenticazione OAuth supportati dalle API AEM basate su OpenAPI:

Da server a server OAuth
App web OAuth
Applicazione a pagina singola (SPA) OAuth
Scopo dell’autenticazione
Progettata per interazioni macchina-macchina.
Progettata per interazioni guidate dall’utente in un’app Web con un back-end.
Progettata per interazioni guidate dall’utente in un’applicazione JavaScript lato client.
Comportamento token
Rilascia i token di accesso che rappresentano l’applicazione client stessa.
Rilascia i token di accesso per conto di un utente autenticato tramite un back-end.
Rilascia i token di accesso per conto di un utente autenticato tramite un flusso solo front-end.
Casi d’uso
Servizi back-end che richiedono accesso API senza interazione da parte dell’utente.
Applicazioni web con componenti front-end e back-end che accedono alle API per conto degli utenti.
Applicazioni front-end pure (JavaScript) che accedono alle API per conto degli utenti senza un back-end.
Considerazioni sulla sicurezza
Archivia in modo sicuro le credenziali sensibili (client_id, client_secret) nei sistemi back-end.
Dopo l’autenticazione, all’utente viene concesso il proprio token di accesso temporaneo tramite una chiamata back-end. Archivia in modo sicuro le credenziali sensibili (client_id, client_secret) nei sistemi back-end per scambiare il codice di autorizzazione con il token di accesso.
Dopo l’autenticazione, all’utente viene concesso il proprio token di accesso temporaneo tramite una chiamata front-end. Non utilizza client_secret, poiché l’archiviazione nelle app front-end non è sicura. Si basa su PKCE per scambiare il codice di autorizzazione con il token di accesso.
Tipo di concessione
client_credentials
authorization_code
authorization_code con PKCE
Tipo di credenziali Adobe Developer Console
Da server a server OAuth
App web OAuth
Applicazione a pagina singola OAuth
Tutorial
Richiamare l’API tramite l’autenticazione da server a server
Richiamare l’API tramite l’autenticazione da app Web
Richiamare l’API tramite l’autenticazione da applicazione a pagina singola

Prima di accedere alle API di Adobe, è essenziale comprendere i seguenti concetti chiave:

  • Adobe Developer Console: hub per sviluppatori per accedere a API, SDK, eventi in tempo reale, funzioni senza server di Adobe e altro ancora. Tieni presente che è diverso dalla Developer Console di AEM, utilizzata per il debug delle applicazioni AEM.

  • Progetto Adobe Developer Console: posizione centrale per la gestione di integrazioni API, eventi e funzioni di runtime. Qui puoi configurare le API, impostare l’autenticazione e generare le credenziali richieste.

  • Profili di prodotto: i profili di prodotto forniscono un predefinito di autorizzazione che consente di controllare l’accesso dell’utente o dell’applicazione ai prodotti Adobe, tra cui AEM, Adobe Target, Adobe Analytics e altri. A ogni prodotto Adobe sono associati profili di prodotto predefiniti.

  • Servizi: i servizi definiscono le autorizzazioni effettive e sono associati al profilo di prodotto. Per ridurre o aumentare il predefinito di autorizzazioni, puoi deselezionare o selezionare i servizi associati al profilo di prodotto. In questo modo, puoi controllare il livello di accesso al prodotto e alle relative API. In AEM as a Cloud Service, i servizi rappresentano gruppi di utenti con elenchi di controllo degli accessi (ACL) predefiniti per i nodi dell’archivio, consentendo una gestione granulare delle autorizzazioni.

Introduzione

Scopri come configurare l’ambiente AEM as a Cloud Service e un progetto Adobe Developer Console per abilitare l’accesso alle API AEM basate su OpenAPI. Accedi anche all’API di AEM utilizzando il browser per verificare la configurazione e rivedere la richiesta e la risposta.

Configurare le API AEM basate su OpenAPI

Configurare le API AEM basate su OpenAPI

Scopri come configurare l’ambiente AEM as a Cloud Service per abilitare l’accesso alle API AEM basate su OpenAPI.

Ulteriori informazioni

Tutorial API

Scopri come utilizzare le API AEM basate su OpenAPI utilizzando diversi metodi di autenticazione OAuth:

Richiamare l’API tramite autenticazione da server a server

Richiamare l’API tramite autenticazione da server a server

Scopri come richiamare le API AEM basate su OpenAPI da un’applicazione NodeJS personalizzata utilizzando l’autenticazione da server a server di OAuth.

Ulteriori informazioni

Richiamare l’API tramite l’autenticazione da app web

Richiamare l’API tramite l’autenticazione da app web

Scopri come richiamare le API AEM basate su OpenAPI da un’applicazione web personalizzata utilizzando l’autenticazione app web OAuth.

Ulteriori informazioni

Richiamare l’API tramite l’autenticazione da applicazione a pagina singola

Richiamare l’API tramite l’autenticazione da applicazione a pagina singola

Scopri come richiamare le API AEM basate su OpenAPI da un’applicazione a pagina singola (SPA) personalizzata utilizzando l’autenticazione OAuth per applicazione a pagina singola.

Ulteriori informazioni

recommendation-more-help
4859a77c-7971-4ac9-8f5c-4260823c6f69