Salesforce Connect で Dynamics 365 外部オブジェクトを編集・検索(API Server)

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
API Server を使用して、スマートデバイスやクラウドベースのアプリケーションにDynamics 365 のデータのセキュアな OData フィードを提供します。API Server と Salesforce Connect を使用して、アプリやダッシュボードからアクセスできる Dynamics 365 オブジェクトを作成します。

CData API Server を使用すると、Salesforce コンソールや Salesforce1 モバイルアプリなどのクラウドベースのアプリケーションからDynamics 365 のデータにアクセスできます。この記事では、API Server と Salesforce Connect を使用して、標準の Salesforce オブジェクトと一緒に Dynamics 365 外部オブジェクトにアクセスする方法を説明します。

Dynamics 365 データ連携について

CData は、Microsoft Dynamics 365 のライブデータへのアクセスと統合を簡素化します。お客様は CData の接続機能を以下の目的で活用しています:

  • Sales、Customer Service、Finance & Operations、Marketing など、Dynamics 365 エコシステム全体のデータの読み取りと書き込みができます。
  • カスタマイズ可能なキャッシュと、インテリジェントなクエリ集約・分離により、Dynamics CRM のネイティブ機能を拡張できます。
  • Azure Active Directory、Azure マネージド サービス ID 認証情報、クライアントシークレットまたは証明書を使用した Azure サービスプリンシパルなど、さまざまな方法で Dynamics 365 に安全に認証できます。
  • SQL ストアドプロシージャを使用して、Dynamics 365 エンティティを管理できます。エンティティ間の関連付けの一覧表示、作成、削除などが可能です。

CData のお客様は、データをデータウェアハウスにレプリケートしたい場合(他のデータソースと併せて)や、Microsoft エコシステム内のお気に入りのデータツール(Power BI、Excel など)または外部ツール(Tableau、Looker など)からライブ Dynamics 365 データを分析したい場合など、さまざまな理由で当社の Dynamics 365 接続ソリューションを使用しています。


はじめに


API Server のセットアップ

まだインストールしていない場合は、CData API Server をダウンロードしてください。API Server をインストールしたら、以下の手順に従ってセキュアな Dynamics 365 OData サービスの作成を開始します。

Dynamics 365 への接続

Salesforce Connect からDynamics 365 のデータを操作するには、まず Dynamics 365 への接続を作成・設定します。以下の手順で API Server を設定してDynamics 365 のデータに接続します。

  1. まず、Connections ページに移動します。
  2. Add Connection をクリックし、Dynamics 365 接続を検索して選択します。
  3. Dynamics 365 に接続するために必要な認証プロパティを入力します。

    Dynamics 365 接続プロパティの取得・設定方法

    Microsoft Dynamics 365 への接続

    Microsoft Dynamics 365 ドライバーは、以下のMicrosoft Dynamics 365 エディションへの接続をサポートしています。

    • CustomerService
    • FieldService
    • FinOpsOnline (デフォルト)
    • FinOpsOnPremise
    • HumanResources
    • Marketing
    • ProjectOperations
    • Sales

    Notes:

    • Supply Chain Management はFinance and Operations と同一です。これらのいずれかに接続するには、EditionFinOpsOnline またはFinOpsOnPremise のいずれかに設定します。
    • Microsoft Dynamics 365 Business Central については、個別のMicrosoft Dynamics 365 Business Central ドライバーを使用してください。
    サポートされているMicrosoft Dynamics 365 エディションのいずれか接続するには、次のパラメータを設定します。
    • OrganizationURL:お使いのMicrosoft Dynamics 365 組織のURL。例えば、https://orgcb42e1d0.crm.dynamics.com
    • Edition:上記のエディション一覧に示すとおり。

    Microsoft Dynamics 365 への認証

    Microsoft Dynamics 365 は、Microsoft Entra ID(Azure AD)、Azure サービスプリンシパル、Azure マネージドID(MSI)を経由する認証をサポートします。これらはすべてOAuth 規格に基づきます。 認証方法の詳細は、ヘルプドキュメントを参照してください。

  4. 接続を設定したら、 Save & Test をクリックして接続が成功したことを確認します。

API Server のユーザー設定

次に、API Server を通じてDynamics 365 のデータにアクセスするユーザーを作成します。Users ページでユーザーを追加・設定できます。以下の手順でユーザーを設定・作成します。

  1. Users ページで、 Add User をクリックして Add User ダイアログを開きます。
  2. 次に、RoleUsernamePrivileges プロパティを設定し、Add User をクリックします。
  3. その後、ユーザーの Authtoken が生成されます。各ユーザーの Authtoken やその他の情報は Users ページで確認できます。

Dynamics 365 用の API エンドポイントの作成

ユーザーを作成したら、Dynamics 365 テーブル用の API エンドポイントを作成します。

  1. まず、API ページに移動し、 Add Table をクリックします。
  2. アクセスしたい接続を選択し、Next をクリックします。
  3. 接続を選択した状態で、各テーブルを選択し、Confirm をクリックしてエンドポイントを作成します。

OData URL の取得

Dynamics 365 のデータへの接続を設定し、ユーザーを作成し、API Server にリソースを追加したので、これらのリソース用の OData プロトコルに基づいた簡単にアクセスできる REST API が利用可能になりました。API Server の API ページから、API の API エンドポイントを表示およびコピーできます。

Dynamics 365 のデータ を外部データソースとして接続

以下の手順に従って、API Server が生成するフィードに接続します。

  1. Salesforce にログインし、設定 -> 開発 -> 外部データソース をクリックします。
  2. 「新規外部データソース」をクリックします。
  3. 以下のプロパティの値を入力します:
    • 外部データソース:リストビューやレポートで使用するラベルを入力します。
    • 名前:一意の識別子を入力します。
    • 種類:「Salesforce Connect: OData 4.0」オプションを選択します。
    • URL:API Server の OData エンドポイントへの URL を入力します。URL の形式は https://your-server:your-port/api.rsc です。

      注意:プレーンテキストはテスト専用です。本番環境では TLS を使用してください。

  4. 「書き込み可能外部オブジェクト」オプションを選択します。
  5. 「形式」メニューで JSON を選択します。

  6. 「認証」セクションで、以下のプロパティを設定します:
    • ID 種類:組織のすべてのメンバーが同じ資格情報を使用して API Server にアクセスする場合は、「指定プリンシパル」を選択します。組織のメンバーが独自の資格情報で接続する場合は、「ユーザーごと」を選択します。
    • 認証プロトコル:Basic 認証を使用する場合は「パスワード認証」を選択します。
    • 証明書:Salesforce からサーバーへの通信を暗号化・認証するために使用する証明書を入力または参照します。
    • ユーザー名:API Server のユーザー名を入力します。
    • パスワード:ユーザーの Authtoken を入力します。

Dynamics 365 オブジェクトの同期

外部データソースを作成したら、以下の手順に従って、データソースの変更を反映する Dynamics 365 外部オブジェクトを作成します。Dynamics 365 外部オブジェクトの定義を Dynamics 365 テーブルの定義と同期します。

  1. 作成した外部データソースのリンクをクリックします。
  2. 「検証して同期」をクリックします。
  3. 外部オブジェクトとして操作する Dynamics 365 テーブルを選択します。

Dynamics 365 のデータ を Salesforce オブジェクトとしてアクセス

Dynamics 365 のデータ を外部データソースとして追加し、Dynamics 365 テーブルを Dynamics 365 外部オブジェクトと同期したら、標準の Salesforce オブジェクトと同様に外部オブジェクトを使用できます。

  • フィルターリストビューを持つ新しいタブを作成:

  • 標準 Salesforce オブジェクトと一緒に Dynamics 365 外部オブジェクトの関連リストを表示:

  • Salesforce ダッシュボードのタブから Dynamics 365 オブジェクトの作成、読み取り、更新、削除:

トラブルシューティング

一般的な接続の問題を避けるために、以下のチェックリストを使用できます:

  • サーバーにパブリックアクセス可能な IP アドレスがあることを確認してください。これに関連して、OS レイヤーで、ファイアウォールが API Server が実行されているポートを開いていることを確認する必要があります。アプリケーションレイヤーでは、管理コンソールの Settings -> Security タブで信頼できる IP アドレスを追加していることを確認してください。
  • 商用の信頼できる CA からの SSL 証明書で保護された接続を使用していることを確認してください。Salesforce は現在、自己署名証明書や内部 CA を受け入れていません。
  • API Server をホストしているサーバーが TLS 1.1 以上を使用していることを確認してください。.NET API Server を使用している場合は、.NET API Server の組み込みサーバーを使用することで実現できます。

    IIS を使用している場合、TLS 1.1 および 1.2 はサポートされていますが、デフォルトでは有効になっていません。これらのプロトコルを有効にするには、MSDN のハウツーMicrosoft 技術リファレンスを参照してください。

    Java エディションを使用している場合、TLS 1.2 は Java 8 ではデフォルトで有効ですが、Java 6 または 7 では有効ではありません。これらの以前のバージョンを使用している場合は、この Oracle ハウツーを参照してください。

はじめる準備はできましたか?

詳細はこちら、または無料トライアルにお申し込みください:

CData API Server お問い合わせ