データソースの設定

データ統合

AEM Forms のデータ統合機能により、複数の異なるデータソースを設定して接続することができます。次のタイプが標準でサポートされています。 ただし、これらの機能を少しカスタマイズするだけで、他のデータソースを統合することもできます。

  • リレーショナルデータベース - MySQL、Microsoft SQL Server、IBM DB2、Oracle RDBMS および Sybase
  • AEM ユーザープロファイル
  • RESTful Web サービス
  • SOAP ベースの web サービス
  • OData サービス

データ統合は、OAuth2.0(認証コード, クライアント資格情報)、基本認証、API キー認証の各認証タイプが標準で用意されており、Web サービスにアクセスするためのカスタム認証を実装できます。 RESTful サービス、SOAP ベースサービス、OData サービスは AEM クラウドサービスで設定し、リレーショナルデータベース用の JDBC と AEM ユーザープロファイル用のコネクターは、AEM Web コンソールで設定します。

リレーショナルデータベースの設定

リレーショナル・データベースは、AEM Web コンソール構成を使用して構成できます。 以下の操作を実行します。

  1. AEM web コンソール(https://server:host/system/console/configMgr)にアクセスします。

  2. を探す Apache Sling 接続プールに入れられたデータソース 設定。 その設定をタップして編集モードで開きます。

  3. 設定ダイアログで、設定するデータベースの詳細を指定します。例えば、以下のような詳細を指定します。

    • データソースの名前
    • データソース名を保存するデータソースサービスプロパティ
    • JDBC ドライバーの Java クラス名
    • JDBC 接続 URI
    • JDBC ドライバーとの接続を確立するためのユーザー名とパスワード
    メモ

    データソースを設定する前に、パスワードなどの機密情報を必ず暗号化してください。 暗号化するには:

    1. https://'[server]:[port]'/system/console/crypto に移動します。
    2. プレーンテキスト」フィールドに暗号化する文字列(パスワードなど)を入力して「保護」をタップします。

    暗号化されたテキストが「保護されたテキスト」フィールドに表示されます。このテキストを設定内で指定できます。

  4. 有効にする 借りてテスト または リターンテスト を指定して、オブジェクトをプールから借りる前またはプールに返す前に、オブジェクトを検証するように指定します。

  5. 検証クエリ」フィールドの SQL SELECT クエリを指定して、プールからの接続を検証します。クエリは、少なくとも 1 つのレコードを返す必要があります。データベースに応じて、次のいずれかを指定します。

    • SELECT 1(MySQL または MS SQL の場合)
    • SELECT 1 from dual(Oracle の場合)
  6. 保存」をタップして、設定内容を保存します。

    メモ

    Forms データモデルにリレーショナルデータベースの予約済みキーワードであるオブジェクトが含まれている場合、データの追加、更新または取得に関する問題が発生する可能性があります。そのため、そのようなオブジェクトはフォームデータモデルで使用しないようにしてください。

AEMユーザープロファイルの設定

AEM Web コンソールのユーザープロファイルコネクタ設定を使用して、AEMユーザープロファイルを設定できます。 以下の操作を実行します。

  1. AEM web コンソール(https://'[server]:[port]'system/console/configMgr)に移動します。

  2. AEM Forms データ統合 - ユーザープロファイルコネクター設定」という設定をタップして、この設定を編集モードで開きます。

  3. ユーザープロファイルコネクター設定ダイアログで、ユーザープロファイルプロパティの追加、削除または更新を行うことができます。ここで指定したプロパティは、フォームデータモデルで使用することができます。ユーザープロファイルのプロパティを指定する場合は、以下の形式で指定します。

    name=[property_name_with_location_in_user_profile],type=[property_type]

    例:

    • name=profile/phoneNumber,type=string
    • name=profile/empLocation/*/city,type=string
    メモ

    上記の「*」は、CRXDE 構造における AEM ユーザープロファイル内の profile/empLocation/ ノードに属するすべてのノードを表しています。この場合、profile/empLocation/ ノード配下のいずれかのノード内に存在する string タイプの city プロパティに、フォームデータモデルからアクセスすることができます。ただし、指定されたプロパティが存在するノードの構造が統一されている必要があります。

  4. 保存」をタップして、設定内容を保存します。

クラウドサービス設定用フォルダーの構成

メモ

RESTful サービス、SOAP サービス、OData サービスのクラウドサービスを設定するには、クラウドサービス用のフォルダーを設定する必要があります。

AEM におけるすべてのクラウドサービス設定は、AEM リポジトリの /conf フォルダー内に保存されます。デフォルトの場合、conf フォルダーには global フォルダーが含まれています。このフォルダーで、クラウドサービスの設定を作成できます。ただし、このフォルダーを手動でクラウド設定用に有効にする必要があります。追加のフォルダーを conf フォルダー内に作成して、クラウドサービスの作成と編集を行うこともできます。

クラウドサービス設定用のフォルダーを構成するには、以下の手順を実行します。

  1. ツール/一般/設定ブラウザー​に移動します。

  2. 以下の手順を実行して、global フォルダーをクラウド設定用に有効にします。クラウドサービス設定用に別のフォルダーを作成する場合は、この手順をスキップしてください。

    1. 設定ブラウザー​で、「global」フォルダーを選択して「プロパティ」をタップします。

    2. 設定プロパティ​ダイアログで、「クラウド設定」を有効にします。

    3. 保存して閉じる」をタップして設定内容を保存し、ダイアログを閉じます。

  3. 設定ブラウザー​で「作成」をタップします。

  4. 設定を作成 ダイアログで、フォルダーのタイトルを指定し、有効にします クラウド設定.

  5. 作成」をタップします。これで、クラウドサービス設定が有効になったフォルダーが作成されました。

RESTful Web サービスの設定

RESTful web サービスは、Swagger の仕様に従い、JSON 形式または YAML 形式で Swagger 定義ファイル内に記述することができます。AEM クラウドサービスで RESTful Web サービスを設定するには、ファイルシステム内に Swagger ファイルが存在しているか、Swagger ファイルがホストされる URL を指定する必要があります。

RESTful サービスを設定するには、以下の手順を実行します。

  1. ツール/Cloud Services/データソース​に移動します。クラウド設定の作成対象となるフォルダーをタップして選択します。

    クラウドサービス設定用フォルダーの作成方法と構成方法については、「クラウドサービス設定用フォルダーの構成」を参照してください。

  2. 作成」をタップして、データソース設定を作成​ウィザードを開きます。設定の名前と、必要に応じて設定のタイトルを指定し、「サービスタイプ」ドロップダウンで「RESTful サービス」を選択します。必要な場合は、設定のサムネール画像を選択して「次へ」をタップします。

  3. RESTful サービスの次の詳細を指定します。

    • 「Swagger ソース」ドロップダウンで「URL」または「ファイル」を選択します。「URL」を選択した場合は、Swagger 定義ファイルの Swagger URL を指定し、「ファイル」を選択した場合は、ローカルのファイルシステムから Swagger ファイルをアップロードします。

    • Swagger ソース入力にもとづいて、以下のフィールドに値が事前入力されます。

      • スキーム:REST API で使用される転送プロトコル。ドロップダウンリストに表示されるスキームの種類の数は、Swagger ソースで定義されているスキームによって異なります。

      • ホスト:REST API を提供するホストのドメイン名または IP アドレス。このフィールドは必須です。

      • 基本パス:すべての API パスの URL プリフィックス。これはオプションのフィールドです。\

        必要に応じて、これらのフィールドの事前入力された値を編集します。

    • 認証タイプの選択 — なし、OAuth2.0(認証コード, クライアント資格情報)、基本認証、API キー、カスタム認証、または相互認証:RESTful サービスにアクセスし、それに応じて認証の詳細を提供します。

    認証タイプとして API キー​を選択した場合は、API キーの値を指定します。API キーは、リクエストヘッダーまたはクエリパラメーターとして送信できます。「場所」ドロップダウンリストから次のオプションの 1 つを選択し、それに応じて「パラメーター名」フィールドにヘッダーまたはクエリパラメーターの名前を指定します。

    認証タイプとして「相互認証」を選択する場合は、RESTful web サービスと SOAP web サービスの証明書ベースの相互認証を参照してください。

  4. 作成」をタップして、RESTful サービス用のクラウド設定を作成します。

パフォーマンスを最適化するためのフォームデータモデル HTTP クライアント設定

データソースとして RESTful web サービスと統合する場合の Experience Manager Forms フォームデータモデルには、パフォーマンス最適化のための HTTP クライアント設定が含まれています。
フォームデータモデルの HTTP クライアントを設定するには、以下の手順を実行します。

  1. Experience Manager Forms オーサーインスタンスに管理者としてログインし、Experience Manager web コンソールバンドルに移動します。デフォルトの URL は https://localhost:4502/system/console/configMgr です。

  2. REST データソースのフォームデータモデル HTTP クライアント設定」をタップします。

  3. REST データソース用フォームデータモデル Http クライアント設定ダイアログで、

    • 接続制限(合計)​フィールドに、フォームデータモデルと RESTful web サービス間の接続許可数の上限を指定します。デフォルト値は 20 接続です。

    • ルートごとの接続制限​フィールドで、各ルートに許可される最大接続数を指定します。デフォルト値は 2 接続です。

    • Keep Alive フィールドで、持続的な HTTP 接続を維持する期間を指定します。デフォルト値は 15 秒です。

    • 接続タイムアウト​フィールドで、Experience Manager Forms サーバーが接続を確立するまでの待ち時間を指定します。デフォルト値は 10 秒です。

    • ソケットタイムアウト​フィールドに、2 つのデータパケット間の非アクティブの最大時間を指定します。デフォルト値は 30 秒です。

SOAP Web サービスの設定

SOAP ベースの web サービスは、Web Services Description Language(WSDL)の仕様に従って記述します。AEM クラウドサービスで SOAP ベースの Web サービスを設定するには、Web サービスの WSDL URL があることを確認し、次の手順を実行します。

  1. ツール/Cloud Services/データソース​に移動します。クラウド設定の作成対象となるフォルダーをタップして選択します。

    クラウドサービス設定用フォルダーの作成方法と構成方法については、「クラウドサービス設定用フォルダーの構成」を参照してください。

  2. 作成」をタップして、データソース設定を作成​ウィザードを開きます。設定の名前と、必要に応じて設定のタイトルを指定し、「サービスタイプ」ドロップダウンで「SOAP Web サービス」を選択します。必要な場合は、設定のサムネール画像を選択して「次へ」をタップします。

  3. SOAP web サービスに対して次の情報を指定します。

    • Web サービスの WSDL URL。

    • サービスエンドポイント。WSDL で指定されているサービスエンドポイントを上書きするには、このフィールドの値を指定します。

    • 認証タイプの選択 — なし、OAuth2.0(認証コード, クライアント資格情報)、基本認証、カスタム認証、X509 トークン、または相互認証:SOAP サービスにアクセスし、それに応じて認証の詳細を提供します。

      認証の種類として X509 トークン​を選択した場合は、X509 証明書を設定します。詳しくは、証明書の設定を参照してください。
      X509 証明書のキーストアエイリアスを​キーエイリアス​フィールドに指定します。有効期間​フィールドに、認証リクエストが有効なままになるまでの時間(秒)を指定します。オプションで、メッセージの本文、タイムスタンプヘッダーまたはその両方に署名することを選択します。

      認証タイプとして​相互認証​を選択した場合は、RESTful web サービスおよび SOAP web サービスの証明書ベースの相互認証を参照してください。

  4. 作成」をタップして、SOAP web サービス用のクラウド設定を作成します。

OData サービスの設定

OData サービスは、そのサービスのルート URL によって識別されます。AEM クラウドサービスで OData サービスを設定するには、そのサービスのサービスルート URL があることを確認し、次の手順を実行します。

メモ

フォームデータモデルがサポートする OData バージョン 4
オンラインまたはオンプレミスでMicrosoft Dynamics 365 を設定する手順については、 Microsoft Dynamics OData 設定.

  1. ツール/Cloud Services/データソース​に移動します。クラウド設定の作成対象となるフォルダーをタップして選択します。

    クラウドサービス設定用フォルダーの作成方法と構成方法については、「クラウドサービス設定用フォルダーの構成」を参照してください。

  2. 作成」をタップして、データソース設定を作成​ウィザードを開きます。設定の名前と、必要に応じて設定のタイトルを指定し、「サービスタイプ」ドロップダウンで「OData サービス」を選択します。必要な場合は、設定のサムネール画像を選択して「次へ」をタップします。

  3. OData サービスの次の詳細を指定します。

    • 設定する OData サービスのサービスルート URL。
    • 認証タイプの選択 — なし、OAuth2.0(認証コード, クライアント資格情報)、基本認証、またはカスタム認証:OData サービスにアクセスし、それに従って認証の詳細を提供します。
    メモ

    OData エンドポイントをサービスルートとして使用して Microsoft Dynamics サービスに接続する場合は、OAuth 2.0 認証を選択する必要があります。

  4. 作成」をタップして、OData サービス用のクラウド設定を作成します。

RESTful web サービスと SOAP web サービスの証明書ベースの相互認証

フォームデータモデルの相互認証を有効にすると、フォームデータモデルが実行されているデータソースとAEMサーバーの両方が、データを共有する前に、相互の ID を認証します。 REST および SOAP ベースの接続(データソース)に対して相互認証を使用できます。AEM Forms 環境でフォームデータモデルの相互認証を設定するには、次の手順を実行します。

  1. 秘密鍵(証明書)を AEM Forms サーバーにアップロードします。秘密鍵をアップロードするには:
    1. AEM Forms サーバーに管理者としてログインします。
    2. ツールセキュリティユーザー​に移動します。fd-cloudservice ユーザーを選択して「プロパティ」をタップします。
    3. キーストア」タブを開き、「キーストアファイルから秘密鍵を追加 」オプションを展開します。キーストアファイルをアップロードし、エイリアスとパスワードを指定して、「送信」をタップします。証明書がアップロードされます。秘密鍵のエイリアスは、証明書に指定され、証明書の作成時に設定されます。
  2. Global Trust Store に信頼する証明書をアップロードします。証明書をアップロードするには:
    1. ツールセキュリティTrust Store に移動します。
    2. CER ファイルから証明書を追加」オプションを展開し、「証明書ファイルを選択」をタップします。証明書をアップロードして、「送信」をタップします。
  3. データソースとして SOAP または RESTful web サービスを設定し、認証タイプとして「相互認証」を設定します。fd-cloudservice ユーザーに複数の自己署名証明書を設定する場合は、証明書のキーエイリアス名を指定します。

次の手順

上記の手順により、データソースが設定されました。次に、フォームデータモデルを作成できます。データソースが設定されていないフォームデータモデルが既に作成されている場合は、上記の手順で設定したデータソースにそのフォームデータモデルを関連付けることができます。詳しくは、フォームデータモデルの作成を参照してください。

このページ