Configuraciones de Cloud Service cloud-service-configurations
Las configuraciones están diseñadas para proporcionar la lógica y la estructura para almacenar configuraciones de servicio.
Puede ampliar las instancias existentes para crear sus propias configuraciones.
Conceptos concepts
Los principios utilizados para desarrollar las configuraciones se han basado en los siguientes conceptos:
- Los servicios o adaptadores se utilizan para recuperar las configuraciones.
- Las configuraciones (por ejemplo, propiedades/párrafos) se heredan de los elementos principales.
- Referido desde nodos de análisis por ruta.
- Fácilmente extensible.
- Tiene la flexibilidad de adaptarse a configuraciones más complejas, como Adobe Analytics.
- Compatibilidad con dependencias (por ejemplo, los complementos de Adobe Analytics necesitan una configuración de Adobe Analytics).
Estructura structure
La ruta base de las configuraciones es:
/etc/cloudservices
.
Para cada tipo de configuración, se proporciona una plantilla y un componente. Esto permite tener plantillas de configuración que pueden satisfacer la mayoría de las necesidades después de personalizarse.
Para proporcionar una configuración para nuevos servicios, haga lo siguiente:
-
Creación de una página de servicio en
/etc/cloudservices
-
En esta sección:
- una plantilla de configuración
- un componente de configuración
La plantilla y el componente deben heredar sling:resourceSuperType
de la plantilla base:
cq/cloudserviceconfigs/templates/configpage
O componente base respectivamente
cq/cloudserviceconfigs/components/configpage
El proveedor de servicios también debe proporcionar la página de servicio:
/etc/cloudservices/<service-name>
Plantilla template
La plantilla amplía la plantilla base:
cq/cloudserviceconfigs/templates/configpage
Y defina un resourceType
que apunte al componente personalizado.
/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
Componentes components
El componente debe ampliar el componente base:
cq/cloudserviceconfigs/templates/configpage
/libs/cq/analytics/components/sitecatalystpage
/libs/cq/analytics/components/generictrackerpage
Después de configurar la plantilla y el componente, puede agregar la configuración añadiendo subpáginas en:
/etc/cloudservices/<service-name>
Modelo de contenido content-model
El modelo de contenido se almacena como cq:Page
en:
/etc/cloudservices/<service-name>(/*)
/etc/cloudservices
/etc/cloudservices/service-name
/etc/cloudservices/service-name/config
/etc/cloudservices/service-name/config/inherited-config
Las configuraciones se almacenan en el subnodo jcr:content
.
- Las propiedades fijas definidas en un cuadro de diálogo deben almacenarse directamente en
jcr:node
. - Los elementos dinámicos (que utilizan
parsys
oiparsys
) utilizan un subnodo para almacenar los datos del componente.
/etc/cloudservices/service/config/jcr:content as nt:unstructured
propertyname
*
par/component/ as cq:Component
propertyname
*
API api
Para obtener documentación de referencia sobre la API, consulte com.day.cq.wcm.webserviceSupport.
AEM Integración de aem-integration
Los servicios disponibles se enumeran en la ficha Cloud Service del cuadro de diálogo Propiedades de página (de cualquier página que herede de foundation/components/page
o wcm/mobile/components/page
).
La pestaña también proporciona lo siguiente:
- un vínculo a la ubicación donde puede habilitar el servicio
- elija una configuración (subnodo del servicio) en un campo de ruta
Cifrado de contraseña password-encryption
Al almacenar las credenciales de usuario del servicio, se deben cifrar todas las contraseñas.
Puede conseguirlo si agrega un campo de formulario oculto. Este campo debe tener la anotación @Encrypted
en el nombre de propiedad; es decir, para el campo password
el nombre se escribiría como:
password@Encrypted
La propiedad será cifrada automáticamente (mediante el servicio CryptoSupport
) por el EncryptionPostProcessor
.
[SlingPostServlet](https://sling.apache.org/site/manipulating-content-the-slingpostservlet-servletspost.html)
.EcryptionPostProcessor
solo cifra POST
solicitudes realizadas a /etc/cloudservices
.Propiedades adicionales para la página de servicio jcr:nodos de contenido additional-properties-for-service-page-jcr-content-nodes
Casos de uso use-cases
Estos servicios se proporcionan de forma predeterminada:
- Fragmentos de seguimiento (Google, WebTrends, etc.)
- API de Rest
- Test&Target