클라우드 서비스 구성

구성은 서비스 구성을 저장하는 논리 및 구조를 제공하도록 설계되었습니다.

기존 인스턴스를 확장하여 고유한 구성을 만들 수 있습니다.

개념

구성 개발에 사용되는 원칙은 다음 개념을 기반으로 했습니다.

  • 서비스/어댑터는 구성을 검색하는 데 사용됩니다.
  • 구성(예: 속성/단락)은 상위 항목에서 상속됩니다.
  • 경로별로 analytics 노드에서 참조됩니다.
  • 쉽게 확장할 수 있습니다.
  • Adobe Analytics과 같은 더 복잡한 구성을 처리할 수 있는 유연성을 제공합니다.
  • 종속성 지원(예:Adobe Analytics 플러그인에는 Adobe Analytics 구성이 필요합니다.

구조

구성의 기본 경로는 다음과 같습니다.

/etc/cloudservices.

각 구성 유형에 대해 템플릿과 구성 요소가 제공됩니다.이렇게 하면 사용자 지정된 후 대부분의 요구 사항을 충족할 수 있는 구성 템플릿이 있을 수 있습니다.

새 서비스에 대한 구성을 제공하려면 다음을 수행해야 합니다.

  • 에서 서비스 페이지 만들기

    /etc/cloudservices

  • 아래와 같이 변경하는 것을 의미합니다.

    • 구성 템플릿
    • 구성 구성 요소

템플릿과 구성 요소는 기본 템플릿에서 sling:resourceSuperType을 상속해야 합니다.

cq/cloudserviceconfigs/templates/configpage

또는 기본 구성 요소 각각

cq/cloudserviceconfigs/components/configpage

서비스 공급자는 서비스 페이지도 제공해야 합니다.

/etc/cloudservices/<service-name>

템플릿

템플릿이 기본 템플릿을 확장합니다.

cq/cloudserviceconfigs/templates/configpage

및 은 사용자 지정 구성 요소를 가리키는 resourceType 을 정의합니다.

/libs/cq/analytics/templates/sitecatalyst
sling:resourceSuperType = cq/cloudserviceconfigs/templates/configpage
allowedChildren = /libs/cq/analytics/templates/sitecatalyst
allowedPaths = /etc/cloudservices/analytics/*, /etc/cloudservices/analytics/.*
componentReference = cq/analytics/components/sitecatalyst
jcr:content/
cq:designPath = /etc/designs/cloudservices
sling:resourceType = cq/analytics/components/sitecatalystpage

/libs/cq/analytics/templates/generictracker
sling:resourceSuperType = cq/cloudservices/templates/configpage
allowedChildren = /libs/cq/analytics/templates/generictracker
allowedPaths = /etc/cloudservices/analytics/*, /etc/cloudservices/analytics/.*
jcr:content/
cq:designPath = /etc/designs/cloudservices
sling:resourceType = cq/analytics/components/generictrackerpage

구성 요소

구성 요소는 기본 구성 요소를 확장해야 합니다.

cq/cloudserviceconfigs/templates/configpage

/libs/cq/analytics/components/sitecatalystpage

/libs/cq/analytics/components/generictrackerpage

템플릿 및 구성 요소를 설정한 후 아래에 하위 페이지를 추가하여 구성을 추가할 수 있습니다.

/etc/cloudservices/<service-name>

컨텐츠 모델

컨텐츠 모델은 다음 위치에 cq:Page로 저장됩니다.

/etc/cloudservices/<service-name>(/*)

/etc/cloudservices
/etc/cloudservices/service-name
/etc/cloudservices/service-name/config
/etc/cloudservices/service-name/config/inherited-config

구성은 하위 노드 jcr:content 아래에 저장됩니다.

  • 대화 상자에 정의된 속성이 jcr:node에 직접 저장되어야 하는 문제를 해결했습니다.
  • 동적 요소(parsys 또는 iparsys 사용)는 하위 노드를 사용하여 구성 요소 데이터를 저장합니다.
/etc/cloudservices/service/config/jcr:content as nt:unstructured
propertyname
*
par/component/ as cq:Component
propertyname
*

API

API에 대한 참조 설명서는 com.day.cq.wcm.webservicessupport을 참조하십시오.

AEM 통합

사용 가능한 서비스는 foundation/components/page 또는 wcm/mobile/components/page에서 상속되는 모든 페이지의 페이지 속성 대화 상자의 Cloud Services 탭에 나열됩니다.

이 탭에서는 다음 작업도 제공됩니다.

  • 서비스를 활성화할 수 있는 위치에 대한 링크
  • 경로 필드에서 구성(서비스의 하위 노드)을 선택합니다

암호 암호화

서비스에 대한 사용자 자격 증명을 저장할 때 모든 암호는 암호화되어야 합니다.

숨겨진 양식 필드를 추가하여 이 작업을 수행할 수 있습니다. 이 필드에는 속성 이름에 주석 @Encrypted이 있어야 합니다.즉, password 필드의 이름은 다음과 같이 작성됩니다.

password@Encrypted

그러면 속성이 EncryptionPostProcessor에 의해 자동으로 암호화됩니다( CryptoSupport 서비스 사용).

노트

이는 표준 [SlingPostServlet](https://sling.apache.org/site/manipulating-content-the-slingpostservlet-servletspost.html) 주석과 유사합니다.

노트

기본적으로 EcryptionPostProcessor/etc/cloudservices에 대한 POST 요청만 암호화합니다.

서비스 페이지 jcr:content 노드에 대한 추가 속성

속성 설명
componentReference 페이지에 자동으로 포함할 구성 요소에 대한 참조 경로입니다.
추가 기능 및 JS 포함에 사용됩니다.
여기에는 포함된 페이지의 구성
cq/cloudserviceconfigs/components/servicecomponents
요소(일반적으로 body 태그 앞)가 포함됩니다.
Analytics 및 Target의 경우 방문자 행동을 추적하기 위한 JavaScript 호출과 같은 추가 기능을 포함하도록 이 기능을 사용합니다.
설명 서비스에 대한 간략한 설명입니다.
descriptionExtended 서비스에 대한 확장된 설명입니다.
등급 목록에 사용할 서비스 등급입니다.
selectableChildren 페이지 속성 대화 상자에 구성을 표시하기 위한 필터입니다.
serviceUrl 서비스 웹 사이트의 URL.
serviceUrlLabel 서비스 URL에 대한 레이블입니다.
thumbnailPath 서비스에 대한 축소판 그림 경로.
표시 페이지 속성 대화 상자의 가시성기본적으로 표시(선택 사항)

사용 사례

이러한 서비스는 기본적으로 제공됩니다.

노트

이 페이지에서는