Configurações do serviço de nuvem 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 o Adobe Analytics.
- Suporte para dependências (por exemplo, os plug-ins do Adobe Analytics precisam da configuração Adobe Analytics).
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 sling:resourceSuperType
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 defina um resourceType
que aponte 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 do 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. - Os elementos dinâmicos (que usam
parsys
ouiparsys
) usam 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 guia Cloud Service da caixa de diálogo Propriedades da Página (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 o campo password
, o nome seria gravado como:
password@Encrypted
A propriedade será criptografada automaticamente (usando o serviço CryptoSupport
) pelo EncryptionPostProcessor
.
[SlingPostServlet](https://sling.apache.org/site/manipulating-content-the-slingpostservlet-servletspost.html)
anotações padrão.EcryptionPostProcessor
criptografa somente POST
solicitações feitas para /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