AEM에서 컨텐츠 보안 정책 구성 충돌

CSP(엄격한 콘텐츠 보안 정책) 규칙은 종종 AEM 작성자 UI를 손상시키거나, 누락된 CSP 헤더에 대한 스캐너 경고를 트리거하거나, CSP를 작성자 및 게시 환경에 적용할 때 배포 문제를 일으킵니다. Dispatcher 또는 CDN 계층에서 CSP를 구성하고, 작성자 환경에 엄격한 정책을 적용하지 않고, 필요한 경우에만 CSP를 적용합니다.

설명 description

환경

  • Adobe Experience Manager as a Cloud Service (AEMaaCS)
  • AEM Managed Services
  • Adobe Developer App Builder

문제/증상

  • 작성자 UI 도구 모음, 구성 요소 또는 iframe을 로드할 수 없습니다.
  • 보안 스캐너에서 로그인 페이지의 CSP 헤더 누락을 보고합니다.
  • default-src 'self’와 같은 제한적인 CSP 지침을 적용하면 사이트 기능이 중지됩니다.
  • unsafe-inline 또는 unsafe-eval을 제한하는 CSP 지시문은 UI 오류를 발생시킵니다.
  • 기본 제공 CSP 보고 끝점을 사용할 수 없습니다.

원인

AEM은 즉시 포괄적인 CSP 지원을 제공하지 않습니다. 많은 핵심 클라이언트 라이브러리는 엄격한 CSP 정책과 호환되지 않는 인라인 JavaScript 및 동작에 의존합니다. CSP를 전역으로 적용하면 작성자 환경에 의도하지 않게 영향을 줄 수 있습니다. CSP 노드는 기본적으로 생성되지 않으며 사용자 지정 구현이 필요합니다. 또한 로그인 페이지에는 기본적으로 CSP 헤더가 포함되어 있지 않습니다.

해결 방법 resolution

이 문제를 해결하려면 다음 단계를 수행합니다.

  1. CDN, Dispatcher 또는 역방향 프록시 계층과 같이 CSP 헤더가 구성된 위치를 식별합니다.
  2. 작성자 및 게시 환경에 별도의 호스트 이름을 사용합니다.
  3. 작성 인터페이스 실패를 방지하기 위해 작성자 환경에서 CSP 헤더를 제거하거나 면제합니다.
  4. CSP를 게시 환경에만 적용합니다.
  5. 더 엄격한 정책이 필요한 경우 도메인 허용 목록을 사용하거나 사용자 지정 임시 솔루션을 구현하십시오.
  6. 보고가 필요한 경우 플랫폼 외부에서 CSP 보고 끝점을 호스팅합니다.
  7. 일관된 적용을 위해 CDN 또는 역방향 프록시와 같은 가장 바깥쪽 레이어에서 CSP를 적용합니다.
  8. 보안 검색 요구 사항을 충족하기 위해 필요한 경우에만 CSP 헤더를 로그인 페이지에 추가합니다.
  9. 필요한 리소스가 성공적으로 로드되고 중요한 CSP 위반이 발생하지 않는지 확인하여 구성을 확인합니다.

관련 읽기

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