OpenAPI 기반 AEM API 설정
OpenAPI 기반 AEM API에 액세스할 수 있도록 AEM as a Cloud Service 환경을 설정하는 방법을 알아봅니다.
이 예에서는 서버 간 인증 방법을 사용하는 AEM Assets API를 사용하여 설정 프로세스를 보여 줍니다. 다른 OpenAPI 기반 AEM API에 대해서도 동일한 단계를 따를 수 있습니다.
상위 레벨 설정 프로세스에는 다음 단계가 포함됩니다.
- AEM as a Cloud Service 환경의 현대화.
- AEM API 액세스를 활성화합니다.
- Adobe Developer Console(ADC) 프로젝트를 만듭니다.
- ADC 프로젝트를 구성합니다.
- ADC 프로젝트 통신을 사용하도록 AEM 인스턴스를 구성합니다.
AEM as a Cloud Service 환경 현대화 modernization-of-aem-as-a-cloud-service-environment
AEM as a Cloud Service 환경 현대화는 다음 단계를 포함하는 환경당 1회 활동입니다.
- AEM 릴리스 2024.10.18459.20241031T210302Z 이상으로 업데이트합니다.
- 릴리스 2024.10.18459.20241031T210302Z 전에 환경이 생성된 경우 새 제품 프로필을 추가합니다.
AEM 인스턴스 업데이트 update-aem-instance
AEM 인스턴스를 업데이트하려면 Adobe Cloud Manager의 환경 섹션에서 환경 이름 옆에 있는 줄임표 아이콘을 선택한 다음 업데이트 옵션을 선택하십시오.
그런 다음 제출 단추를 클릭하고 제안 Fullstack 파이프라인을 실행합니다.
Fullstack 파이프라인의 이름은 Dev :: Fullstack-Deploy 이고 AEM 환경의 이름은 wknd-program-dev 입니다. 이름이 다를 수 있습니다.
새 제품 프로필 추가 add-new-product-profiles
AEM 인스턴스에 새 제품 프로필을 추가하려면 Adobe Cloud Manager의 환경 섹션에서 환경 이름 옆에 있는 줄임표 아이콘을 선택하고 제품 프로필 추가 옵션을 선택합니다.
환경 이름 옆에 있는 줄임표 아이콘을 클릭하고 액세스 관리 > 작성자 프로필 을 선택하여 새로 추가된 제품 프로필을 검토할 수 있습니다.
Admin Console 창에 새로 추가된 제품 프로필이 표시됩니다.
위의 단계는 AEM as a Cloud Service 환경의 현대화를 완료합니다.
AEM API 액세스 활성화 enable-aem-apis-access
새 제품 프로필 이 있으면 ADC(Adobe Developer Console)에서 OpenAPI 기반 AEM API 액세스가 가능합니다. Adobe Developer Console(ADC)은(는) Adobe API, SDK, 실시간 이벤트, 서버리스 기능 등에 액세스하기 위한 개발자 허브입니다.
새로 추가된 제품 프로필은 미리 정의된 ACL(액세스 제어 목록)이 있는 AEM 사용자 그룹 을 나타내는 서비스 와(과) 연결되어 있습니다. 서비스 를 사용하여 AEM API에 대한 액세스 수준을 제어합니다.
제품 프로필과 연결된 서비스 를 선택하거나 선택 해제하여 액세스 수준을 줄이거나 늘릴 수도 있습니다.
제품 프로필 이름 옆에 있는 세부 정보 보기 아이콘을 클릭하여 연결을 검토하십시오.
AEM Assets API 액세스 활성화 enable-aem-assets-apis-access
기본적으로 AEM Assets API 사용자 서비스는 제품 프로필과 연결되어 있지 않습니다. 새로 추가된 AEM Assets Collaborator 사용자 - 작성자 - 프로그램 XXX - 환경 XXX 제품 프로필 또는 AEM Assets API 액세스에 사용하려는 다른 제품 프로필과 연결합니다.
서버 간 인증 활성화
원하는 AEM API에 대해 서버 간 인증을 활성화하려면 Adobe Developer Console(ADC)를 사용하여 통합을 설정하는 사용자를 서비스가 연결된 제품 프로필에 개발자로 추가해야 합니다.
예를 들어 AEM Assets API에 대해 서버 간 인증을 사용하려면 사용자를 AEM Assets Collaborator 사용자 - 작성자 - 프로그램 XXX - 환경 XXX 제품 프로필에 개발자로 추가해야 합니다.
이 연결 후에 ADC 프로젝트 자산 작성자 API 에서 원하는 서버 간 인증을 설정하고 (다음 단계에서 생성된) ADC 프로젝트의 인증 계정을 제품 프로필과 연결할 수 있습니다.
Adobe Developer Console(ADC) 프로젝트 만들기 adc-project
ADC 프로젝트는 원하는 API를 추가하고, 인증을 설정하고, 인증 계정을 제품 프로필과 연결하는 데 사용됩니다.
ADC 프로젝트를 만들려면 다음을 수행하십시오.
-
Adobe ID을 사용하여 Adobe Developer Console에 로그인합니다.
-
빠른 시작 섹션에서 새 프로젝트 만들기 단추를 클릭합니다.
-
기본 이름으로 새 프로젝트를 만듭니다.
-
오른쪽 상단의 프로젝트 편집 단추를 클릭하여 프로젝트 이름을 편집합니다. 의미 있는 이름을 입력하고 저장 을 클릭합니다.
ADC 프로젝트 구성 configure-adc-project
ADC 프로젝트를 만든 후 원하는 AEM API를 추가하고, 인증을 설정하고, 인증 계정을 제품 프로필과 연결해야 합니다.
-
AEM API를 추가하려면 API 추가 단추를 클릭합니다.
-
API 추가 대화 상자에서 Experience Cloud 을(를) 기준으로 필터링하고 원하는 AEM API를 선택합니다. 예를 들어 이 경우 자산 작성자 API 가 선택됩니다.
note tip TIP 원하는 AEM API 카드 가 비활성화되어 있고 비활성화된 이유는 무엇입니까? 정보에 라이선스 필요 메시지가 표시되어 있습니다. 그 이유 중 하나는 AEM as a Cloud Service 환경을 현대화하지 않았기 때문일 수 있습니다. 자세한 내용은 AEM as a Cloud Service 환경 현대화를 참조하십시오. -
그런 다음 API 구성 대화 상자에서 원하는 인증 옵션을 선택합니다. 예를 들어 이 경우 서버 간 인증 옵션이 선택됩니다.
서버 간 인증은 사용자 상호 작용 없이 API 액세스가 필요한 백엔드 서비스에 이상적입니다. 웹 앱 및 단일 페이지 앱 인증 옵션은 사용자를 대신하여 API 액세스가 필요한 애플리케이션에 적합합니다. 자세한 내용은 OAuth 서버 간 자격 증명과 웹 앱 간 자격 증명 및 단일 페이지 앱 자격 증명 간의 차이점을 참조하십시오.
note tip TIP 서버 간 인증 옵션이 표시되지 않으면 통합을 설정하는 사용자가 서비스가 연결된 제품 프로필에 개발자로 추가되지 않은 것입니다. 자세한 내용은 서버 간 인증 사용을 참조하십시오. -
필요한 경우 보다 쉽게 식별할 수 있도록 API의 이름을 변경할 수 있습니다. 데모 목적으로 기본 이름이 사용됩니다.
-
이 경우 인증 방법은 OAuth 서버 간 이므로 인증 계정을 제품 프로필과 연결해야 합니다. AEM Assets Collaborator 사용자 - 작성자 - 프로그램 XXX - 환경 XXX 제품 프로필을 선택하고 저장 을 클릭합니다.
-
AEM API 및 인증 구성을 검토하십시오.
OAuth 웹 앱 또는 OAuth 단일 페이지 앱 인증 방법을 선택하는 경우 제품 프로필 연결 메시지가 표시되지 않지만 응용 프로그램 리디렉션 URI가 필요합니다. 응용 프로그램 리디렉션 URI는 인증 코드로 인증한 후 사용자를 응용 프로그램으로 리디렉션하는 데 사용됩니다. 관련 사용 사례 튜토리얼에서는 이러한 인증 특정 구성을 간략하게 설명합니다.
ADC 프로젝트 통신을 사용하도록 AEM 인스턴스 구성 configure-aem-instance
ADC 프로젝트의 ClientID가 AEM 인스턴스와 통신할 수 있도록 하려면 AEM 인스턴스를 구성해야 합니다.
이 작업은 YAML 파일에서 API 구성을 정의하고 Cloud Manager의 구성 파이프라인 을 사용하여 배포함으로써 수행됩니다. YAML 파일은 AEM 인스턴스와 통신할 수 있는 ADC 프로젝트에서 허용되는 ClientID를 정의합니다.
-
AEM 프로젝트에서
config
폴더에서api.yaml
파일을 찾거나 만듭니다. -
api.yaml
파일에 다음 구성을 추가합니다.code language-yaml kind: "API" version: "1.0" metadata: envTypes: ["dev", "stage", "prod"] data: allowedClientIDs: author: - "<ADC Project's Credentials ClientID>"
<ADC Project's Credentials ClientID>
을(를) ADC 프로젝트의 자격 증명 값의 실제 ClientID로 바꿉니다. 이 자습서에서 사용되는 API 끝점은 작성자 계층에서만 사용할 수 있지만 다른 API의 경우 yaml 구성에는 publish 또는 미리보기 노드도 있을 수 있습니다.note caution CAUTION 데모 목적으로 모든 환경에 동일한 ClientID가 사용됩니다. 더 나은 보안 및 제어를 위해 환경(개발, 단계, 프로덕션)별로 별도의 ClientID를 사용하는 것이 좋습니다. -
구성 변경 사항을 커밋하고 Cloud Manager 파이프라인이 연결된 원격 Git 저장소에 변경 사항을 푸시합니다.
-
Cloud Manager의 구성 파이프라인 을 사용하여 위의 변경 사항을 배포합니다. 명령줄 도구를 사용하여 RDE에
api.yaml
파일을 설치할 수도 있습니다.
다음 단계
AEM 인스턴스가 ADC 프로젝트 통신을 활성화하도록 구성되면 OpenAPI 기반 AEM API를 사용할 수 있습니다. 다양한 OAuth 인증 방법을 사용하여 OpenAPI 기반 AEM API를 사용하는 방법을 알아봅니다.
OAuth 서버 간 인증을 사용하여 사용자 정의 NodeJS 애플리케이션에서 OpenAPI 기반 AEM API를 호출하는 방법을 알아봅니다.
OAuth 웹 앱 인증을 사용하여 사용자 정의 웹 애플리케이션에서 OpenAPI 기반 AEM API를 호출하는 방법을 알아봅니다.
OAuth 2.0 PKCE 흐름을 사용하여 사용자 지정 SPA(단일 페이지 앱)에서 OpenAPI 기반 AEM API를 호출하는 방법에 대해 알아봅니다.