クラウドサービス設定

設定は、サービス設定を保存するためのロジックと構造を提供するようにデザインされています。

既存のインスタンスを拡張して、独自の設定を作成できます。

概念

設定の作成に用いられる原則は、以下の概念に基づいています。

  • サービスやアダプターを使用して、設定を取得する。
  • 設定(プロパティや段落など)は、親から継承される。
  • パスによって、分析ノードから参照される。
  • 簡単に拡張できる。
  • Adobe Analyticsのように、より複雑な設定に対して柔軟に対応できます。
  • 依存関係のサポート(Adobe AnalyticsプラグインにはAdobe Analyticsの設定が必要です)。

構造

設定のベースパスは次のとおりです。

/etc/cloudservices

設定のタイプごとに、テンプレートとコンポーネントが提供されます。これによって、カスタマイズしてから大部分のニーズを満たせる設定テンプレートを作成できます。

新しいサービスの設定を指定するには、次の操作が必要です。

  • ~にサービスページを作る

    /etc/cloudservices

  • この下に次のコンポーネントを作成します。

    • 設定テンプレート
    • 設定コンポーネント

テンプレートとコンポーネントは、sling:resourceSuperType をそれぞれ次の場所から継承する必要があります。ベーステンプレート:

cq/cloudserviceconfigs/templates/configpage

ベースコンポーネント:

cq/cloudserviceconfigs/components/configpage

サービスプロバイダーは、サービスページも提供する必要があります。

/etc/cloudservices/<service-name>

テンプレート

テンプレートは、次のベーステンプレートを拡張します。

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

コンポーネント

コンポーネントは、次のベースコンポーネントを拡張します。

cq/cloudserviceconfigs/templates/configpage

/libs/cq/analytics/components/sitecatalystpage

/libs/cq/analytics/components/generictrackerpage

テンプレートとコンポーネントを設定したら、次の場所の下にサブページを追加して、設定を追加できます。

/etc/cloudservices/<service-name>

コンテンツモデル

コンテンツモデルはcq:Pageとして次の下に保存されます。

/etc/cloudservices/<service-name>(/*?lang=ja)

/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 に関する参考ドキュメントは、com.day.cq.wcm.webservicesupport を参照してください。

AEM の統合

使用可能なサービスは、ページのプロパティ​ダイアログの​Cloud Services​タブ(foundation/components/pageまたはwcm/mobile/components/pageから継承するページの)に一覧表示されます。

このタブでは以下についても表示されます。

  • サービスを有効にできる場所へのリンク
  • パスフィールドから設定(サービスのサブノード)を選択する

パスワードの暗号化

サービスのユーザー資格情報を保存する際は、すべてのパスワードを暗号化する必要があります。

非表示のフォームフィールドを追加することによって、パスワードを暗号化できます。このフィールドのプロパティ名には@Encryptedという注釈が必要です。例えば、passwordフィールドに対しては、名前は次のように書かれます。

password@Encrypted

すると、CryptoSupport によって、プロパティが(EncryptionPostProcessor サービスを使用して)自動的に暗号化されます。

メモ

これは、標準の [SlingPostServlet](https://sling.apache.org/site/manipulating-content-the-slingpostservlet-servletspost.html) アノテーションに似ています。

メモ

デフォルトでは、EcryptionPostProcessor/etc/cloudservicesに対するPOSTリクエストのみを暗号化します。

サービスページの jcr:content ノード用の追加プロパティ

プロパティ 説明
componentReference コンポーネントへの参照パスをページに自動的に含めます。
追加機能および JS インクルージョンに使用されます。
これには、ページ上のコンポーネントが含ま
cq/cloudserviceconfigs/components/servicecomponents
れます(通常は body タグの前)。
Analyticsとターゲットの場合は、これを使用して、訪問者の動作を追跡するJavaScript呼び出しなどの追加機能を含めます。
description サービスの簡単な説明。
descriptionExtended サービスの詳細な説明。
ranking 一覧表示に使用するサービスランキング。
selectableChildren ページのプロパティダイアログに設定を表示するためのフィルター。
serviceUrl サービス Web サイトへの URL。
serviceUrlLabel サービス URL のラベル。
thumbnailPath サービスのサムネールへのパス。
visible ページのプロパティダイアログでの表示/非表示。デフォルトでは表示(オプション)。

ユースケース

デフォルトでは、以下のサービスが提供されます。

メモ

カスタムクラウドサービスの作成も参照してください。

このページ

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now