AEM as a Cloud Service: 오류 응답에서 저장소 메타데이터 노출 방지

이 문서에서는 사용자 지정 오류 처리기 구성이 오류 응답에 저장소 메타데이터를 표시하는 Adobe Experience Manager as a Cloud Service의 문제를 해결하는 방법에 대해 설명합니다. 해결 방법에는 오류 처리기를 업데이트하여 오류 페이지가 HTML으로 렌더링되도록 하는 작업이 포함됩니다.

설명 description

환경

Adobe Experience Manager as a Cloud Service (AEMaaCS)

증상

사용자 지정 오류 처리기에서 처리하는 오류 응답은 특히 오류 처리기에 .html 확장을 지정하지 않고 유지 관리 오류 페이지가 포함된 경우 jcr:primaryType, jcr:createdByjcr:created과(와) 같은 저장소 메타데이터를 노출합니다. 이 문제는 레거시 서블릿 경로(예: /bin/wcm/search/gql.servlet.json)에 대한 요청이 404 오류​를 반환하고 사용자 지정 오류 처리기 JSP(예: /apps/sling/servlet/errorhandler/default.jsp)에서 처리되는 경우에 발생합니다.

원인

오류 처리기에 .html 확장 없이 유지 관리 오류 페이지가 포함된 경우 응답이 원래 요청의 확장(예: .json)을 상속하므로 저장소 메타데이터가 응답 본문으로 직렬화됩니다. 자격 증명이나 중요한 비즈니스 데이터가 노출되지 않지만, 이로 인해 정보 공개 위험이 증가합니다.

해결 방법 resolution

아래 단계에 따라 문제를 해결하십시오.

  1. 프로젝트 코드베이스를 열고 일반적으로 /apps/sling/servlet/errorhandler/default.jsp에 있는 사용자 지정 오류 처리기 JSP 파일을 찾습니다.

  2. 유지 관리 오류 페이지가 포함된 라인을 식별합니다. 이는 다음과 같을 수 있습니다.

    <jsp:include page="/content/<your-site>/maintenance/maintenance-error" />

  3. .html 확장을 명시적으로 지정하도록 각 include 문을 업데이트합니다. 예:

    <jsp:include page="/content/<your-site>/maintenance/maintenance-error.html" />

  4. 변경 사항을 저장하고 표준 배포 프로세스를 사용하여 업데이트된 코드를 AEM as a Cloud Service 환경에 배포합니다.

  5. 영향을 받는 끝점(예: /bin/wcm/search/gql.servlet.json)에 액세스하여 수정 사항을 확인하고 오류 응답이 더 이상 저장소 메타데이터를 노출하지 않고 HTML 오류 페이지로 렌더링되는지 확인하십시오.

recommendation-more-help
experience-cloud-kcs-help-kbarticles