Configurações do Cloud Service cloud-service-configurations
As configurações são projetadas para fornecer a lógica e a estrutura para armazenar configurações de serviço.
É possível estender as instâncias existentes para criar suas próprias configurações.
Conceitos concepts
Os princípios usados no desenvolvimento das configurações foram baseados nos seguintes conceitos:
- Serviços/adaptadores são usados para recuperar as configurações.
- As configurações (por exemplo, propriedades/parágrafos) são herdadas dos pais.
- Referenciado a partir de nós do Analytics por caminho.
- Facilmente extensível.
- Tem flexibilidade para atender a configurações mais complexas, como Adobe Analytics.
- Suporte para dependências (por exemplo, Adobe Analytics Os plug-ins do precisam de um Adobe Analytics configuração).
Estrutura structure
O caminho base das configurações é:
/etc/cloudservices
.
Para cada tipo de configuração, um modelo e um componente são fornecidos. Isso possibilita ter modelos de configuração que podem atender à maioria das necessidades após a personalização.
Para fornecer uma configuração para novos serviços, faça o seguinte:
-
Criar uma página de serviço no
/etc/cloudservices
-
Nesta seção:
- um modelo de configuração
- um componente de configuração
O modelo e o componente devem herdar o sling:resourceSuperType
a partir do modelo base:
cq/cloudserviceconfigs/templates/configpage
Ou componente base, respectivamente
cq/cloudserviceconfigs/components/configpage
O provedor de serviços também deve fornecer a página de serviço:
/etc/cloudservices/<service-name>
Modelo template
Seu modelo estende o modelo base:
cq/cloudserviceconfigs/templates/configpage
E definir um resourceType
que aponta para o 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
Seu componente deve estender o componente básico:
cq/cloudserviceconfigs/templates/configpage
/libs/cq/analytics/components/sitecatalystpage
/libs/cq/analytics/components/generictrackerpage
Depois de definir o modelo e o componente, é possível adicionar a configuração adicionando subpáginas em:
/etc/cloudservices/<service-name>
Modelo de conteúdo content-model
O modelo de conteúdo é armazenado como cq:Page
em:
/etc/cloudservices/<service-name>(/*)
/etc/cloudservices
/etc/cloudservices/service-name
/etc/cloudservices/service-name/config
/etc/cloudservices/service-name/config/inherited-config
As configurações são armazenadas no subnó jcr:content
.
- As propriedades fixas, definidas em uma caixa de diálogo, devem ser armazenadas no
jcr:node
diretamente. - Elementos dinâmicos (uso de
parsys
ouiparsys
) usar um subnó para armazenar os dados do componente.
/etc/cloudservices/service/config/jcr:content as nt:unstructured
propertyname
*
par/component/ as cq:Component
propertyname
*
API api
Para obter a documentação de referência sobre a API, consulte com.day.cq.wcm.webservicesupport.
Integração com o AEM aem-integration
Os serviços disponíveis estão listados na Cloud Services guia do Propriedades da página caixa de diálogo (de qualquer página que herde de foundation/components/page
ou wcm/mobile/components/page
).
A guia também fornece:
- um link para o local onde você pode habilitar o serviço
- escolha uma configuração (subnó do serviço) em um campo de caminho
Criptografia de senha password-encryption
Ao armazenar credenciais de usuário para o serviço, todas as senhas devem ser criptografadas.
Você pode fazer isso adicionando um campo de formulário oculto. Este campo deve ter a anotação @Encrypted
no nome da propriedade; ou seja, para a variável password
o nome seria escrito como:
password@Encrypted
A propriedade será criptografada automaticamente (usando o CryptoSupport
serviço) pela EncryptionPostProcessor
.
[SlingPostServlet](https://sling.apache.org/site/manipulating-content-the-slingpostservlet-servletspost.html)
anotações.EcryptionPostProcessor
somente criptografa POST
pedidos feitos a /etc/cloudservices
.Propriedades adicionais para a página de serviço jcr:nós de conteúdo additional-properties-for-service-page-jcr-content-nodes
Casos de uso use-cases
Esses serviços são fornecidos por padrão:
- Trechos do rastreador (Google, WebTrends e outros)
- Adobe Analytics
- Test&Target