OpenAPI 기반 AEM API 설정

OpenAPI 기반 AEM API에 액세스할 수 있도록 AEM as a Cloud Service 환경을 설정하는 방법을 알아봅니다.

이 예제에서는 서버 간 인증 방법을 사용하는 AEM Assets API​를 사용하여 OpenAPI 기반 AEM API 설정 프로세스를 보여 줍니다. 기타 OpenAPI 기반 AEM API를 설정하는 유사한 단계를 따를 수 있습니다.

상위 레벨 설정 프로세스에는 다음 단계가 포함됩니다.

  1. AEM as a Cloud Service 환경의 현대화.
  2. AEM API 액세스를 활성화합니다.
  3. Adobe Developer Console(ADC) 프로젝트를 만듭니다.
  4. ADC 프로젝트를 구성합니다.
  5. ADC 프로젝트 통신을 사용하도록 AEM 인스턴스를 구성합니다.

사전 요구 사항

  • Cloud Manager 및 AEM as a Cloud Service 환경 액세스
  • Adobe Developer Console(ADC)에 대한 액세스 권한.
  • api.yaml 파일에서 API 구성을 추가하거나 업데이트하는 AEM 프로젝트입니다.

AEM as a Cloud Service 환경 현대화 modernization-of-aem-as-a-cloud-service-environment

AEM as a Cloud Service 환경의 현대화는 다음 단계를 포함하는 환경당 1회 활동​입니다. AEM as a Cloud Service 환경을 이미 현대화한 경우 이 단계를 건너뛸 수 있습니다.

  • AEM 릴리스 2024.10.18459.20241031T210302Z 이상으로 업데이트합니다.
  • 릴리스 2024.10.18459.20241031T210302Z 전에 환경이 생성된 경우 새 제품 프로필을 추가합니다.

AEM 인스턴스 업데이트 update-aem-instance

  • AEM 인스턴스를 업데이트하려면 Adobe Cloud Manager에 로그인한 후 환경 섹션으로 이동하여 환경 이름 옆에 있는 줄임표 아이콘을 선택한 다음 업데이트 옵션을 선택하십시오.

AEM 인스턴스 업데이트

  • 그런 다음 제출 단추를 클릭하고 제안 Fullstack 파이프라인을 실행합니다.

최신 AEM 릴리스 버전 선택

Fullstack 파이프라인의 이름은 Dev :: Fullstack-Deploy​이고 AEM 환경의 이름은 wknd-program-dev​입니다. 이름이 다를 수 있습니다.

새 제품 프로필 추가 add-new-product-profiles

  • AEM 인스턴스에 새 제품 프로필을 추가하려면 Adobe Cloud Manager환경 섹션에서 환경 이름 옆에 있는 줄임표 아이콘을 선택하고 제품 프로필 추가 옵션을 선택합니다.

새 제품 프로필 추가

  • 환경 이름 옆에 있는 줄임표 아이콘을 클릭하고 액세스 관리 > 작성자 프로필​을 선택하여 새로 추가된 제품 프로필을 검토하십시오.

  • Admin Console 창에 새로 추가된 제품 프로필이 표시됩니다. AEM Assets, AEM Sites, AEM Forms 등과 같은 AEM 권한에 따라 다른 제품 프로필이 표시될 수 있습니다. 예를 들어, 본인의 경우 AEM Assets 및 Sites 권한이 있으므로 다음 제품 프로필이 표시됩니다.

새 제품 프로필 검토

  • 위의 단계는 AEM as a Cloud Service 환경의 현대화를 완료합니다.

AEM API 액세스 활성화 enable-aem-apis-access

새 제품 프로필​이 있으면 Adobe Developer Console(ADC)에서 OpenAPI 기반 AEM API 액세스가 가능합니다. 이러한 제품 프로필이 없으면 ADC(Adobe Developer Console)에서 OpenAPI 기반 AEM API를 설정할 수 없습니다.

새로 추가된 제품 프로필은 미리 정의된 ACL(액세스 제어 목록)이 있는 AEM 사용자 그룹​을 나타내는 서비스​와(과) 연결되어 있습니다. 서비스​를 사용하여 AEM API에 대한 액세스 수준을 제어합니다. 제품 프로필과 연결된 서비스​를 선택하거나 선택 해제하여 액세스 수준을 줄이거나 늘릴 수도 있습니다.

제품 프로필 이름 옆에 있는 세부 정보 보기 아이콘을 클릭하여 연결을 검토하십시오. 다음 스크린샷에서는 AEM Sites 콘텐츠 관리자 - 작성자 - 프로그램 XXX - 환경 XXX 제품 프로필과 AEM Sites 콘텐츠 관리자 서비스의 연결을 확인할 수 있습니다. 다른 제품 프로필 및 해당 서비스와의 연관성을 검토하십시오.

제품 프로필과 연결된 서비스 검토

AEM Assets API 액세스 활성화 enable-aem-assets-apis-access

이 예제에서는 AEM Assets API​를 사용하여 OpenAPI 기반 AEM API 설정 프로세스를 보여 줍니다. 그러나 기본적으로 AEM Assets API 사용자 서비스는 제품 프로필과 연결되어 있지 않습니다. 원하는 제품 프로필과 연결해야 합니다.

새로 추가된 AEM Assets Collaborator 사용자 - 작성자 - 프로그램 XXX - 환경 XXX 제품 프로필 또는 AEM Assets API 액세스에 사용하려는 다른 제품 프로필과 연결합니다.

AEM Assets API 사용자 서비스를 제품 프로필과 연결

서버 간 인증 활성화

원하는 OpenAPI 기반 AEM API에 대해 서버 간 인증을 활성화하려면 Adobe Developer Console(ADC)를 사용하여 통합을 설정하는 사용자를 서비스​가 연결된 제품 프로필​에 개발자로 추가해야 합니다.

예를 들어 AEM Assets API에 대해 서버 간 인증을 사용하려면 사용자를 AEM Assets Collaborator 사용자 - 작성자 - 프로그램 XXX - 환경 XXX 제품 프로필​에 개발자로 추가해야 합니다.

제품 프로필에 개발자 연결

이 연결 후에 ADC 프로젝트 자산 작성자 API​에서 원하는 서버 간 인증을 설정하고 (다음 단계에서 생성된) ADC 프로젝트의 인증 계정을 제품 프로필과 연결할 수 있습니다.

IMPORTANT
위의 단계는 원하는 AEM API에 대해 서버 간 인증을 활성화하는 데 중요합니다. 이 연결이 없으면 AEM API를 서버 간 인증 방법과 함께 사용할 수 없습니다.

위의 모든 단계를 수행하면 OpenAPI 기반 AEM API 액세스를 활성화하기 위한 AEM as a Cloud Service 환경이 준비됩니다. 다음으로, OpenAPI 기반 AEM API를 설정하려면 Adobe Developer Console(ADC) 프로젝트를 만들어야 합니다.

Adobe Developer Console(ADC) 프로젝트 만들기 adc-project

Adobe Developer Console(ADC) 프로젝트는 OpenAPI 기반 AEM API를 설정하는 데 사용됩니다. Adobe Developer Console(ADC)은(는) Adobe API, SDK, 실시간 이벤트, 서버리스 기능 등에 액세스하기 위한 개발자 허브입니다.

ADC 프로젝트는 원하는 API를 추가하고, 인증을 설정하고, 인증 계정을 제품 프로필과 연결하는 데 사용됩니다.

ADC 프로젝트를 만들려면 다음을 수행하십시오.

  1. Adobe ID을 사용하여 Adobe Developer Console에 로그인합니다.

    Adobe Developer Console

  2. 빠른 시작 섹션에서 새 프로젝트 만들기 단추를 클릭합니다.

    새 프로젝트 만들기

  3. 기본 이름으로 새 프로젝트를 만듭니다.

    새 프로젝트 생성됨

  4. 오른쪽 상단의 프로젝트 편집 단추를 클릭하여 프로젝트 이름을 편집합니다. 의미 있는 이름을 입력하고 저장​을 클릭합니다.

    프로젝트 이름 편집

ADC 프로젝트 구성 configure-adc-project

ADC 프로젝트를 만든 후 원하는 AEM API를 추가하고, 인증을 설정하고, 인증 계정을 제품 프로필과 연결해야 합니다.

이 경우 AEM Assets API​를 사용하여 OpenAPI 기반 AEM API 설정 프로세스를 보여 줍니다. 그러나 유사한 단계에 따라 AEM Sites API, AEM Forms API 등과 같은 다른 OpenAPI 기반 AEM API를 추가할 수 있습니다. AEM 권한은 ADC(Adobe Developer Console)에서 사용 가능한 API를 결정합니다.

  1. AEM API를 추가하려면 API 추가 단추를 클릭합니다.

    API 추가

  2. API 추가 대화 상자에서 Experience Cloud​을(를) 기준으로 필터링하고 원하는 AEM API를 선택합니다. 예를 들어 이 경우 자산 작성자 API​가 선택됩니다.

    AEM API 추가

    note tip
    TIP
    원하는 AEM API 카드​가 비활성화되어 있고 비활성화된 이유는 무엇입니까? 정보에 라이선스 필요 메시지가 표시되어 있습니다. 그 이유 중 하나는 AEM as a Cloud Service 환경을 현대화하지 않았기 때문일 수 있습니다. 자세한 내용은 AEM as a Cloud Service 환경 현대화를 참조하십시오.
  3. 그런 다음 API 구성 대화 상자에서 원하는 인증 옵션을 선택합니다. 예를 들어 이 경우 서버 간 인증 옵션이 선택됩니다.

    인증 선택

    서버 간 인증은 사용자 상호 작용 없이 API 액세스가 필요한 백엔드 서비스에 이상적입니다. 웹 앱 및 단일 페이지 앱 인증 옵션은 사용자를 대신하여 API 액세스가 필요한 애플리케이션에 적합합니다. 자세한 내용은 OAuth 서버 간 자격 증명과 웹 앱 간 자격 증명 및 단일 페이지 앱 자격 증명 간의 차이점을 참조하십시오.

    note tip
    TIP
    서버 간 인증 옵션이 표시되지 않으면 통합을 설정하는 사용자가 서비스가 연결된 제품 프로필에 개발자로 추가되지 않은 것입니다. 자세한 내용은 서버 간 인증 사용을 참조하십시오.
  4. 필요한 경우 보다 쉽게 식별할 수 있도록 API의 이름을 변경할 수 있습니다. 데모 목적으로 기본 이름이 사용됩니다.

    자격 증명 이름 바꾸기

  5. 이 경우 인증 방법은 OAuth 서버 간​이므로 인증 계정을 제품 프로필과 연결해야 합니다. AEM Assets Collaborator 사용자 - 작성자 - 프로그램 XXX - 환경 XXX 제품 프로필을 선택하고 저장​을 클릭합니다.

    제품 프로필 선택

  6. AEM API 및 인증 구성을 검토하십시오.

    AEM API 구성

    인증 구성

OAuth 웹 앱 또는 OAuth 단일 페이지 앱 인증 방법을 선택하는 경우 제품 프로필 연결 메시지가 표시되지 않지만 응용 프로그램 리디렉션 URI가 필요합니다. 응용 프로그램 리디렉션 URI는 인증 코드로 인증한 후 사용자를 응용 프로그램으로 리디렉션하는 데 사용됩니다. 관련 사용 사례 튜토리얼에서는 이러한 인증 특정 구성을 간략하게 설명합니다.

ADC 프로젝트 통신을 사용하도록 AEM 인스턴스 구성 configure-aem-instance

그런 다음 위의 ADC 프로젝트 통신을 활성화하도록 AEM 인스턴스를 구성해야 합니다. 이 구성에서는 ADC 프로젝트의 ClientID가 AEM 인스턴스와 통신할 수 없어 403 금지 오류가 발생합니다. 이 구성을 허용된 ClientID만 AEM 인스턴스와 통신할 수 있도록 하는 방화벽 규칙으로 생각해 보십시오.

위의 ADC 프로젝트 통신을 활성화하도록 AEM 인스턴스를 구성하는 단계를 따라 살펴보겠습니다.

  1. 로컬 컴퓨터에서 AEM 프로젝트로 이동하거나 아직 복제하지 않은 경우 복제하여 config 폴더를 찾습니다.

  2. AEM 프로젝트에서 api.yaml 폴더에서 config 파일을 찾거나 만듭니다. 이 예제에서는 AEM WKND Sites 프로젝트를 사용하여 OpenAPI 기반 AEM API 설정 프로세스를 보여 줍니다.

    API YAML 찾기

  3. ADC 프로젝트의 ClientID가 AEM 인스턴스와 통신할 수 있도록 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를 사용하는 것이 좋습니다.
  4. 구성 변경 사항을 커밋하고 Cloud Manager 파이프라인이 연결된 원격 Git 저장소에 변경 사항을 푸시합니다.

  5. Cloud Manager에서 구성 파이프라인을 사용하여 위의 변경 사항을 배포합니다.

    YAML 배포

api.yaml 파일은 RDE, 명령줄 도구 사용에도 설치할 수 있습니다. 이 기능은 구성 변경 사항을 프로덕션 환경에 배포하기 전에 테스트하는 데 유용합니다.

다음 단계

AEM 인스턴스가 ADC 프로젝트 통신을 활성화하도록 구성되면 OpenAPI 기반 AEM API를 사용할 수 있습니다. 다양한 OAuth 인증 방법을 사용하여 OpenAPI 기반 AEM API를 사용하는 방법을 알아봅니다.

서버 간 인증을 사용하여 API 호출

서버 간 인증을 사용하여 API 호출

OAuth 서버 간 인증을 사용하여 사용자 정의 NodeJS 애플리케이션에서 OpenAPI 기반 AEM API를 호출하는 방법을 알아봅니다.

자세히 알아보기

웹 앱 인증을 사용하여 API 호출

웹 앱 인증을 사용하여 API 호출

OAuth 웹 앱 인증을 사용하여 사용자 정의 웹 애플리케이션에서 OpenAPI 기반 AEM API를 호출하는 방법을 알아봅니다.

자세히 알아보기

단일 페이지 앱 인증을 사용하여 API 호출

단일 페이지 앱 인증을 사용하여 API 호출

OAuth 2.0 PKCE 흐름을 사용하여 사용자 지정 SPA(단일 페이지 앱)에서 OpenAPI 기반 AEM API를 호출하는 방법에 대해 알아봅니다.

자세히 알아보기

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