Cloud Service 配置 cloud-service-configurations
配置旨在提供用于存储服务配置的逻辑和结构。
您可以扩展现有实例以创建您自己的配置。
概念 concepts
在开发配置时使用的原则基于以下概念:
- 服务/适配器用于检索配置。
- 配置(如属性/段落)从父级继承。
- 按路径从分析节点引用。
- 易于扩展。
- 具有灵活性,可满足更复杂的配置(例如 Adobe Analytics.
- 支持依赖项(例如 Adobe Analytics 插件需要 Adobe Analytics 配置)。
结构 structure
配置的基本路径是:
/etc/cloudservices
。
对于每种类型的配置,都将提供一个模板和一个组件。这样,配置模板就可以在自定义后满足大多数需求。
要为新服务提供配置,您需要:
-
创建服务页
/etc/cloudservices
-
下:
- 配置模板
- 配置组件
模板和组件必须继承 sling:resourceSuperType
从基本模板:
cq/cloudserviceconfigs/templates/configpage
或基元
cq/cloudserviceconfigs/components/configpage
服务提供商还应提供服务页面:
/etc/cloudservices/<service-name>
模板 template
您的模板将扩展基本模板:
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
组件 components
您的组件应扩展基本组件:
cq/cloudserviceconfigs/templates/configpage
/libs/cq/analytics/components/sitecatalystpage
/libs/cq/analytics/components/generictrackerpage
设置模板和组件后,您可以通过在下添加子页面来添加配置:
/etc/cloudservices/<service-name>
内容模型 content-model
内容模型将存储为 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
有关API的参考文档,请参阅 com.day.cq.wcm.webservicesupport.
AEM集成 aem-integration
可用服务列在 Cloud Services 选项卡 页面属性 对话框(从 foundation/components/page
或 wcm/mobile/components/page
)。
选项卡还提供:
- 可在其中启用服务的位置的链接
- 从路径字段中选择配置(服务的子节点)
密码加密 password-encryption
存储服务的用户凭据时,应加密所有密码。
您可以通过添加隐藏的表单字段来实现此目的。 此字段应具有注释 @Encrypted
在资产名称中;例如 password
字段名称将写为:
password@Encrypted
然后,该属性将自动加密(使用 CryptoSupport
服务) EncryptionPostProcessor
.
[SlingPostServlet](https://sling.apache.org/site/manipulating-content-the-slingpostservlet-servletspost.html)
批注。EcryptionPostProcessor
仅加密 POST
发出的请求 /etc/cloudservices
.“服务”页jcr:content节点的其他属性 additional-properties-for-service-page-jcr-content-nodes
用例 use-cases
默认情况下,会提供以下服务:
- 跟踪器片段 (Google、WebTrends等)
- Adobe Analytics
- Test&Target
- Dynamic Media