クラウドサービスの設定 cloud-service-configurations
設定は、サービス設定を保存するためのロジックと構造を提供するように設計されています。
既存のインスタンスを拡張して、独自の設定を作成できます。
概念 concepts
設定の開発に使用する原則は、次の概念に基づいています。
- サービス/アダプタは、構成を取得するために使用されます。
- 設定(例:プロパティ/段落)は親から継承されます。
- パスで Analytics ノードから参照されます。
- 容易に拡張可能。
- 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
使用可能なサービスが、(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
は、/etc/cloudservices
に対する POST
リクエストのみを暗号化します。サービスページの jcr:content ノード用の追加プロパティ additional-properties-for-service-page-jcr-content-nodes
ユースケース use-cases
これらのサービスは、デフォルトで提供されています。
- トラッカースニペット (Google、WebTrends など )
- Adobe Analytics
- Test&Target
- Dynamic Media