Configurar las API de AEM basadas en OpenAPI
Aprenda a configurar su entorno de AEM as a Cloud Service para habilitar el acceso a las API de AEM basadas en OpenAPI.
En este ejemplo, se utiliza la API de AEM Assets mediante el método de autenticación de servidor a servidor para mostrar el proceso de instalación. Los mismos pasos se pueden seguir para otras API de AEM basadas en OpenAPI.
El proceso de configuración de alto nivel incluye los siguientes pasos:
- Modernización del entorno de AEM as a Cloud Service.
- Habilite el acceso a las API de AEM.
- Crear un proyecto de Adobe Developer Console (ADC).
- Configurar el proyecto de ADC.
- Configure la instancia de AEM para habilitar la comunicación del proyecto ADC.
Modernización del entorno de AEM as a Cloud Service modernization-of-aem-as-a-cloud-service-environment
La modernización del entorno de AEM as a Cloud Service es una actividad única por entorno que implica los siguientes pasos:
- Actualización a la versión de AEM 2024.10.18459.20241031T210302Z o posterior.
- Añádale nuevos perfiles de producto si el entorno se creó antes de la versión 2024.10.18459.20241031T210302Z.
Actualizar instancia de AEM update-aem-instance
Para actualizar la instancia de AEM, en la sección Entornos de Adobe Cloud Manager, seleccione el icono de puntos suspensivos junto al nombre del entorno y seleccione la opción Actualizar.
Luego haga clic en el botón Enviar y ejecute la canalización de pila completa sugerida.
En mi caso, la canalización Fullstack se llama Dev :: Fullstack-Deploy, y el entorno AEM se llama wknd-program-dev. Sus nombres pueden ser diferentes.
Añadir nuevos perfiles de producto add-new-product-profiles
Para agregar nuevos perfiles de producto a la instancia de AEM, en la sección Entornos de Adobe Cloud Manager, seleccione el icono de puntos suspensivos junto al nombre del entorno y seleccione la opción Agregar perfiles de producto.
Para revisar los perfiles de producto agregados recientemente, haga clic en el icono de elipsis junto al nombre del entorno y seleccione Administrar acceso > Perfiles de autor.
La ventana Admin Console muestra los perfiles de producto agregados recientemente.
Los pasos anteriores completan la modernización del entorno de AEM as a Cloud Service.
Habilitar el acceso a las API de AEM enable-aem-apis-access
La presencia de nuevos perfiles de producto habilita el acceso a la API de AEM basada en OpenAPI en Adobe Developer Console (ADC). Recuerde que Adobe Developer Console (ADC) es el centro para desarrolladores para acceder a las API de Adobe, los SDK, los eventos en tiempo real, las funciones sin servidor y mucho más.
Los perfiles de producto agregados recientemente están asociados con Servicios que representan grupos de usuarios de AEM con Listas de control de acceso (ACL) predefinidas. Los servicios se utilizan para controlar el nivel de acceso a las API de AEM.
También puede seleccionar o deseleccionar los servicios asociados con el perfil de producto para reducir o aumentar el nivel de acceso.
Revise la asociación haciendo clic en el icono Ver detalles junto al nombre del perfil del producto.
Habilitar el acceso a las API de AEM Assets enable-aem-assets-apis-access
De manera predeterminada, el servicio Usuarios de API de AEM Assets no está asociado con ningún perfil de producto. Asociémoslo con los Usuarios colaboradores de AEM Assets recién agregados - autor - Programa XXX - Entorno XXX Perfil de producto o cualquier otro Perfil de producto que desee usar para el acceso a la API de AEM Assets.
Habilitar la autenticación de servidor a servidor
Para habilitar la autenticación de servidor a servidor para las API de AEM deseadas, el usuario que configura la integración con Adobe Developer Console (ADC) debe agregarse como Desarrollador al Perfil del producto donde está asociado el servicio.
Por ejemplo, para habilitar la autenticación de servidor a servidor para la API de AEM Assets, se debe agregar el usuario como Desarrollador al Perfil de producto de Usuarios de AEM Assets Collaborator: autor: Programa XXX: Entorno XXX.
Después de esta asociación, la API de autor de recursos del proyecto ADC puede configurar la autenticación de servidor a servidor deseada y asociar la cuenta de autenticación del proyecto ADC (creada en el siguiente paso) con el perfil de producto.
Crear proyecto de Adobe Developer Console (ADC) adc-project
El proyecto ADC se utiliza para agregar las API deseadas, configurar su autenticación y asociar la cuenta de autenticación con el perfil de producto.
Para crear un proyecto de ADC:
-
Inicie sesión en Adobe Developer Console con su Adobe ID.
-
En la sección Inicio rápido, haga clic en el botón Crear nuevo proyecto.
-
Crea un nuevo proyecto con el nombre predeterminado.
-
Edite el nombre del proyecto haciendo clic en el botón Editar proyecto en la esquina superior derecha. Proporcione un nombre descriptivo y haga clic en Guardar.
Configurar proyecto de ADC configure-adc-project
Después de crear el proyecto de ADC, debe agregar las API de AEM deseadas, configurar su autenticación y asociar la cuenta de autenticación con el perfil de producto.
-
Para agregar las API de AEM, haga clic en el botón Agregar API.
-
En el cuadro de diálogo Agregar API, filtre por Experience Cloud y seleccione la API de AEM que desee. Por ejemplo, en este caso, la API de autor de recursos está seleccionada.
note tip TIP Si la tarjeta de la API de AEM deseada está deshabilitada y ¿Por qué está deshabilitada?La información de muestra el mensaje Se requiere licencia. Una de las razones podría ser que NO ha modernizado su entorno de AEM as a Cloud Service. Consulte Modernización del entorno de AEM as a Cloud Service para obtener más información. -
A continuación, en el cuadro de diálogo Configurar API, seleccione la opción de autenticación que desee. Por ejemplo, en este caso, la opción de autenticación Servidor a servidor está seleccionada.
La autenticación de servidor a servidor es ideal para los servicios back-end que necesitan acceso a API sin interacción del usuario. Las opciones de autenticación Aplicación web y Aplicación de una sola página son adecuadas para las aplicaciones que necesitan acceso a la API en nombre de los usuarios. Para obtener más información, consulte Diferencia entre OAuth servidor a servidor vs aplicación web vs. credenciales de aplicación de una sola página.
note tip TIP Si no ve la opción Autenticación de servidor a servidor, significa que el usuario que configura la integración no se agrega como Desarrollador al Perfil de producto donde está asociado el servicio. Consulte Habilitar la autenticación de servidor a servidor para obtener más información. -
Si es necesario, puede cambiar el nombre de la API para facilitar la identificación. Para fines de demostración, se utiliza el nombre predeterminado.
-
En este caso, el método de autenticación es OAuth Server-to-Server, por lo que debe asociar la cuenta de autenticación con el perfil de producto. Seleccione el perfil de producto Usuarios colaboradores de AEM Assets - Autor - Programa XXX - Entorno XXX y haga clic en Guardar.
-
Revise la configuración de autenticación y la API de AEM.
Si elige el método de autenticación OAuth Web App o OAuth Single Page App, no se solicita la asociación del perfil de producto, pero se requiere el URI de redireccionamiento de la aplicación. El URI de redireccionamiento de la aplicación se utiliza para redirigir al usuario a la aplicación después de la autenticación con un código de autorización. Los tutoriales de casos de uso relevantes describen estas configuraciones específicas de autenticación.
Configure la instancia de AEM para habilitar la comunicación del proyecto de ADC configure-aem-instance
Para habilitar la comunicación del ID de cliente del proyecto ADC con la instancia de AEM, debe configurar la instancia de AEM.
Se realiza definiendo la configuración de la API en un archivo YAML e implementándola mediante la Canalización de configuración en Cloud Manager. El archivo YAML define los ID de cliente permitidos del proyecto ADC que pueden comunicarse con la instancia de AEM.
-
En AEM Project, busque o cree el archivo
api.yaml
en la carpetaconfig
. -
Agregue la siguiente configuración al archivo
api.yaml
.code language-yaml kind: "API" version: "1.0" metadata: envTypes: ["dev", "stage", "prod"] data: allowedClientIDs: author: - "<ADC Project's Credentials ClientID>"
Reemplace
<ADC Project's Credentials ClientID>
por el ClientID real del valor Credentials del proyecto ADC. El extremo de API que se usa en este tutorial solo está disponible en el nivel de creación, pero para otras API, la configuración yaml también puede tener un nodo publish o preview.note caution CAUTION Para fines de demostración, se utiliza el mismo ClientID para todos los entornos. Se recomienda utilizar ClientID independiente por entorno (dev, stage, prod) para mejorar la seguridad y el control. -
Confirme los cambios de configuración e inserte los cambios en el repositorio Git remoto al que está conectada la canalización de Cloud Manager.
-
Implemente los cambios anteriores mediante la canalización de configuración en Cloud Manager. Tenga en cuenta que el archivo
api.yaml
también se puede instalar en un RDE mediante herramientas de la línea de comandos.
Siguientes pasos
Una vez configurada la instancia de AEM para habilitar la comunicación del proyecto ADC, puede empezar a utilizar las API de AEM basadas en OpenAPI. Aprenda a utilizar las API de AEM basadas en OpenAPI utilizando diferentes métodos de autenticación de OAuth:
Invocar la API mediante la autenticación de servidor a servidor
Obtenga información sobre cómo invocar las API de AEM basadas en OpenAPI desde una aplicación NodeJS personalizada mediante la autenticación de servidor a servidor de OAuth.
Invocar la API mediante la autenticación de aplicación web
Obtenga información sobre cómo invocar las API de AEM basadas en OpenAPI desde una aplicación web personalizada mediante la autenticación de aplicación web de OAuth.
Invocar la API mediante la autenticación de aplicación de una sola página
Aprenda a invocar las API de AEM basadas en OpenAPI desde una aplicación de una sola página (SPA) personalizada mediante el flujo PKCE de OAuth 2.0.