XRM ツールの接続文字列を使用して Dynamics 365に接続する

 

公開日: 2017年1月

対象: Dynamics 365 (online)、Dynamics 365 (on-premises)、Dynamics CRM 2016、Dynamics CRM Online

Microsoft Dynamics 365 (オンラインおよび設置型) によって、XRM ツールによる接続文字列を使用した Dynamics 365 インスタンスへの接続が可能になります。 これは、Microsoft SQL Server で使用される接続文字列の概念と似ています。 接続文字列は、最大限のセキュリティを得るために構成セクションを暗号化する機能を含むネイティブ サポートを、構成ファイルに備えています。 これにより、Dynamics 365 インスタンスに接続する際に、使用しているアプリケーションにハード コーディングしない Dynamics 365 接続を展開時に構成することができます。

このトピックの内容

接続文字列の作成

接続文字列パラメーター

接続文字列の例

接続状態を決定する

接続文字列の作成

以下の例のように、この接続文字列をプロジェクトの app.config または web.config ファイルで指定します。

<connectionStrings>
    <add name="MyCRMServer" connectionString="AuthType=AD;Url=http://contoso:8080/Test;" />
</connectionStrings>
System_CAPS_security セキュリティ メモ

app.config ファイルまたは web.config ファイルにアカウント パスワードなどの機密情報を追加する場合は、適切なセキュリティ対策を講じてその情報を保護してください。

接続文字列を作成したら、それを使用して CrmServiceClient オブジェクトを作成します。

//Use the connection string named "MyCRMServer"
//from the configuration file
CrmServiceClient crmSvc = new CrmServiceClient(ConfigurationManager.ConnectionStrings["MyCRMServer"].ConnectionString);

注意

コード内の以下の using ディレクティブを使用して、System.Configuration 名前空間を参照し、コード内の接続文字列にアクセスする必要があります: using System.Configuration;

CrmServiceClient オブジェクトを作成したら、そのオブジェクトを使用して Dynamics 365 でアクションを実行することができます。詳細:XRM を使用して Dynamics 365 でアクションを実行

接続文字列パラメーター

接続文字列には、セミコロンで区切られた一連の名前=値の組が含まれまています。 次の表は、任意の受注で入力できる、サポートされるパラメーターを一覧表示しています。

パラメーター名

説明

ServiceUri, Service Uri, Url, or Server

Microsoft Dynamics 365 Server への URL を指定します。 URL は、https または http プロトコルを使用することができ、ポートはオプションです。http プロトコルの既定ポートは 80 で、 https の既定ポートは 443 です。 通常、サーバー URL は設置型 Dynamics 365の場合は http://crm-server:port/organization-name および https://organization-name の形式です。Dynamics 365 (オンライン) 用 crm.dynamics.com

組織名は必須です。 接続する組織には、わかりやすい名前または一意の名前を指定できます。

例: http://contoso/test, http://contoso:5555/test, https://contoso/test, https://test.crm.dynamics.com または http://10.10.10.2/test.

Domain

ユーザーの資格情報を検証するドメインを指定します。

UserName, User Name, UserId, or User Id

資格情報に関連付けられたユーザーの ID 名を指定します。

Password

資格情報に関連付けられたユーザー名のパスワードを指定します。

HomeRealmUri またはホームレルムのUri

ホーム レルムの Uri を指定します。

AuthenticationType または AuthType

Dynamics 365 インスタンスに接続するための認証の種類を指定します。 有効な値は次のとおりです: AD, IFD (AD FS 有効化)、OAuth または Office365

  • AD および IFD は、Dynamics 365 設置型インスタンスでのみ許可されています。

  • OAuth は、Dynamics 365 (オンライン) および設置型インスタンスでのみ許可されています。

  • Office365 は、 Dynamics 365 (オンライン) インスタンスにのみ許可されています。

RequireNewInstance

接続がまだアクティブの間に再呼び出しされた場合に、既存の接続を再利用するかどうかを指定します。 既定値は既存の接続が再利用されることを示す false です。true に設定した場合、これによりシステムは強制的に固有の接続を作成します。

ClientId、AppId または ApplicationId

Microsoft Azure Active Directory または Active Directory フェデレーション サービス (AD FS) にアプリケーションを登録した際に割り当てられる ClientID を指定します。

このパラメータは認証の種類が OAuth として指定されている場合にのみ適用されます。

RedirectUri または ReplyUrl

Microsoft Azure Active Directory または Active Directory フェデレーション サービス (AD FS) に登録したアプリケーションのリディレクト URI を指定します。

このパラメータは認証の種類が OAuth として指定されている場合にのみ適用されます。

TokenCacheStorePath

ユーザー トークンのキャッシュに保存する必要がある場所の完全なパスを指定します。 実行プロセスには指定されたパスへのアクセス権があるべきです。 このパスを設定し構成することが、このプロセスの役割です。

このパラメータは認証の種類が OAuth として指定されている場合にのみ適用されます。

LoginPrompt

資格情報が提供されていない場合に資格情報の入力を促すかどうかを指定します。 有効な値は:

  • Always: 常に資格情報を指定するようユーザーを促す。

  • Auto: プロンプトを表示するかどうかを、ログイン コントロール インターフェースで選択することをユーザーに許可する。

  • Never: 資格情報を指定するようユーザーを促さない。 使用している接続方法にユーザー インターフェースがない場合は、この値を使用してください。

このパラメータは認証の種類が OAuth として指定されている場合にのみ適用されます。

接続文字列の例

次の例は、別の展開および認証シナリオに接続するための接続文字列の使用方法を示しています。

統合設置型認証

<add name="MyCRMServer" connectionString="AuthType=AD;Url=http://contoso:8080/Test;" />

設置型認証を使用している取引先企業

<add name="MyCRMServer" connectionString="AuthType=AD;Url=http://contoso:8080/Test; Domain=CONTOSO; Username=jsmith; Password=passcode" />

Office 365 を使用している取引先企業

<add name="MyCRMServer" connectionString="AuthType=Office365;Username=jsmith@contoso.onmicrosoft.com; Password=passcode;Url=https://contoso.crm.dynamics.com"/>

認証のプロンプトに Office 365 で UX と一緒に取引先企業を使用している OAth

<add name="MyCRMServer" connectionString="AuthType=OAuth;Username=jsmith@contoso.onmicrosoft.com; Password=passcode;Url=https://contosotest.crm.dynamics.com;AppId=<GUID>;RedirectUri =app://<GUID>;TokenCacheStorePath =c:\MyTokenCache;LoginPrompt=Auto"/>

認証のプロンプトに Dynamics 365 で UX と一緒に取引先企業を使用している OAth

<add name="MyCRMServer" connectionString="AuthType=OAuth;Username=jsmith@contoso.onmicrosoft.com; Password=passcode;Url=https://contoso:8080/Test;AppId=<GUID>;RedirectUri=app://<GUID>;TokenCacheStorePath =c:\MyTokenCache;LoginPrompt=Auto"/>

サブ部門への委任に取引先企業を使用している IFD

<add name="MyCRMServer" connectionString="AuthType=IFD;Url=http://contoso:8080/Test; HomeRealmUri=https://server-1.server.com/adfs/services/trust/mex/;Domain=CONTOSO; Username=jsmith; Password=passcode" />

接続状態を決定する

接続要求が成功したかどうかを決定するには、CrmServiceClientIsReady プロパティの値を確認します。true の場合、接続が成功し、実行する準備ができています。 それ以外の場合は、接続失敗の原因として、CrmServiceClient. LastCrmError プロパティと CrmServiceClient.LastCrmException プロパティの値を確認します。

関連項目

CrmServiceClient
XRM ツールを使用して Windows のクライアント アプリケーションを作成する
CrmServiceClient コンストラクターを使用した Dynamics 365 への接続
XRM を使用して Dynamics 365 でアクションを実行

Microsoft Dynamics 365

© 2017 Microsoft. All rights reserved. 著作権