Configuraciones de Cloud Service cloud-service-configurations
Las configuraciones están diseñadas para proporcionar la lógica y estructura para almacenar configuraciones de servicio.
Puede ampliar las instancias existentes para crear sus propias configuraciones.
Conceptos concepts
Los principios utilizados en el desarrollo de las configuraciones se han basado en los siguientes conceptos:
- Los servicios/adaptadores se utilizan para recuperar las configuraciones.
- Las configuraciones (p. ej., propiedades/párrafos) se heredan de los elementos principales.
- Se hace referencia desde los nodos de análisis por ruta.
- Fácilmente extensible.
- Tiene la flexibilidad para adaptarse a configuraciones más complejas, como Adobe Analytics.
- Compatibilidad con dependencias (p. ej. Adobe Analytics los complementos necesitan una Adobe Analytics configuración).
Estructura structure
La ruta base de las configuraciones es:
/etc/cloudservices
.
Para cada tipo de configuración se proporcionará una plantilla y un componente.Esto permite tener plantillas de configuración que puedan satisfacer la mayoría de las necesidades después de personalizarse.
Para proporcionar una configuración para un nuevo servicio, debe:
-
cree 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 el 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 una resourceType
que señala 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 añadir 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 bajo el subnodo jcr:content
.
- Las propiedades fijas definidas en un cuadro de diálogo deben almacenarse en la variable
jcr:node
directamente. - Elementos dinámicos (mediante
parsys
oiparsys
) utilice 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.
Integración AEM aem-integration
Los servicios disponibles se enumeran en la sección Cloud Services de la pestaña Propiedades de página cuadro de diálogo (de cualquier página que herede de foundation/components/page
o wcm/mobile/components/page
).
La pestaña también proporciona:
- un vínculo a la ubicación en la que puede activar el servicio
- elegir una configuración (subnodo del servicio) de un campo de ruta
Cifrado de contraseña password-encryption
Al almacenar las credenciales de usuario para el servicio, todas las contraseñas deben cifrarse.
Para conseguirlo, agregue un campo de formulario oculto. Este campo debe tener la anotación @Encrypted
en el nombre de la propiedad; es decir, para la variable password
field el nombre se escribirá como:
password@Encrypted
A continuación, la propiedad se cifrará automáticamente (utilizando la variable CryptoSupport
por el EncryptionPostProcessor
.
[SlingPostServlet](https://sling.apache.org/site/manipulating-content-the-slingpostservlet-servletspost.html)
anotaciones.EcryptionPostProcessor
solo cifra POST
solicitudes realizadas /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 rastreador (Google, WebTrends, etc.)
- API de Rest
- Test&Target
- Dynamic Media