接続の確立
接続プロファイルの設定
[CData]リボンから[データの取得]をクリックし、[取得元:Microsoft Dynamics 365 Business Central]> 設定済みの接続 を選択してCData クエリウィンドウを起動します。新しい接続を設定するには、[新しいMicrosoft Dynamics 365 Business Central 接続]をクリックします。ここでは、接続の設定、接続のテスト、および接続プロファイルの保存を行うことができます。
Microsoft Dynamics 365 Business Central への接続
クラウドエンドポイント
データに接続するには、OrganizationUrl を指定します。OrganizationUrl は、以下のいずれかです。
- https://businesscentral.dynamics.com/abc123/ などのBusiness Central アカウントへのエンドポイント。
- Web サービスのルート。
- カスタムAPI のベースURL。
オンプレミスエンドポイント
以下はオンプレミスのエンドポイントの例です。
https://base URL:port/serverinstance/api/API publisher/API group/API version/ https://base URL:port//serverinstance/ODataV4 https://myInstance/.local:7048/BC220/ODataV4URL はデフォルトでブロックされているため、管理者がアクセスを許可する必要があります。
OrganizationUrl を指定する方法、および利用可能なエンドポイントについては、Business Central エンドポイント を参照してください。
組織内に複数の会社がある場合は、Company を指定して接続先の会社を特定できます。 Company を空白のままにすると、本製品 はすべての会社を個別のスキーマとして取得します。
ユーザーおよびアクセスキー
Note: クラウド版ではユーザーおよびアクセスキー認証はサポート対象外となりました。 Web Service Access Key(Basic 認証)は、オンプレミスインスタンスでは引き続きサポートされています。
Microsoft では、テストや開発にはユーザーおよびアクセスキーの使用を推奨していますが、本番環境での使用は推奨していません。
User およびAccessKey の値を取得するには、Microsoft Dynamics 365 Business Central の[ユーザー]ページに移動して[編集]をクリックします。User Name および Web Service Access Key の値は、User およびPassword 接続文字列プロパティとして入力する値です。User Name はE メールアドレス ではありません。短縮されたユーザー名です。
アクセスキー認証を使用するには、次のプロパティを設定します。
- AuthScheme:アクセスキー
- User:ログインユーザー名。
- AccessKey:アクセスキー。
Microsoft Dynamics 365 Business Central への認証
Microsoft Dynamics 365 Business Central データソースを認証する前に、OrganizationUrl を接続先の組織のURL に設定する必要があります。 v1とv2のどちらを使用しているかによって、見え方が異なります。 OrganizationUrl の各種フォーマットについては、Business Central エンドポイント を参照してください。以下のいずれかの方法で、Microsoft Dynamics 365 Business Central への認証を行うことができます。
アクセスキー
User およびAccessKey を設定し、Microsoft Dynamics 365 Business Central データソースへ認証します。
Azure AD
Azure AD は、Microsoft のマルチテナント、クラウドベースのディレクトリおよびID 管理サービスです。これはユーザーベースの認証で、AuthScheme をAzureAD に設定する必要があります。Web アプリケーションを介したAzure AD への認証には、必ずカスタムOAuth アプリケーションの作成が必要です。詳細はAzure AD アプリケーションの作成 を参照してください。
デスクトップアプリケーション
CData は、デスクトップアプリケーションからAzure AD への接続を簡略化する埋め込みOAuth アプリケーションを提供します。カスタムOAuth アプリケーションを使用して、デスクトップアプリケーションで認証することもできます。(詳しくは、Azure AD アプリケーションの作成 を参照してください。) Azure AD 経由で認証するには、以下のパラメータを設定します。
- AuthScheme:AzureAD。
-
カスタムアプリケーションのみ:
- OAuthClientId:カスタムOAuth アプリケーションの登録時に割り当てられたクライアントId。
- OAuthClientSecret:カスタムOAuth アプリケーションの登録時に割り当てられたクライアントシークレット。
- CallbackURL:カスタムOAuth アプリケーションの登録時に定義したリダイレクトURI。
接続すると、本製品 はデフォルトブラウザでMicrosoft Dynamics 365 Business Central のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。
本製品 はOAuth プロセスを完了し、Microsoft Dynamics 365 Business Central からアクセストークンを取得してそれを使ってデータをリクエストします。 OAuth 値はOAuthSettingsLocation で指定されたパスに保存されます。これらの値は接続間で永続化されます。
アクセストークンの期限が切れたときは、本製品 は自動でアクセストークンをリフレッシュします。
Azure サービスプリンシパル
サービスプリンシパルは、Azure AD アプリケーション内のセキュリティオブジェクトであり、特定のAzure AD テナント内でそのアプリケーションができることを定義します。 サービスプリンシパルは、Azure サービスポータルで作成します。 作成プロセスの過程で、サービスプリンシパルがクライアントシークレットまたは証明書のどちらを経由してAzure AD リソースにアクセスするかも指定します。サービスプリンシパルの権限は、特定のユーザーに紐づくのではなく、割り当てられたロールに基づきます。 リソースへのアプリケーションのアクセスは、割り当てられたロールの権限によって制御されます。
Azure サービスプリンシパルを使用して認証する場合、サービスプリンシパルによるAzure AD アプリケーションの作成 で説明するようにAzure AD テナントにアプリケーションを登録する必要があります。
次のサブセクションで説明するプロパティを設定すれば、接続の準備は完了です。これらは、クライアントシークレットで認証するか、証明書で認証するかによって異なります。
クライアントシークレットによる認証
- AuthScheme:AzureServicePrincipal。
- AzureTenant:接続するAzure AD テナント。
- OAuthGrantType:CLIENT。
- OAuthClientId:アプリケーション設定のクライアントId。
- OAuthClientSecret:アプリケーション設定のクライアントシークレット。
証明書による認証
- AuthScheme:AzureServicePrincipalCert。
- AzureTenant:接続するAzure AD テナント。
- OAuthGrantType:CLIENT。
- OAuthClientId:アプリケーション設定のクライアントId。
- OAuthJWTCert:JWT 証明書のストア。
- OAuthJWTCertType:JWT 証明書ストアの種類。
Managed Service Identity (MSI)
Azure VM 上でMicrosoft Dynamics 365 Business Central を実行しており、MSI を利用して接続したい場合は、AuthScheme をAzureMSI に設定します。
User-Managed Identities
マネージドID のトークンを取得するには、OAuthClientId プロパティを使用してマネージドID の"client_id" を指定します。VM に複数のユーザーが割り当てられたマネージドID がある場合は、OAuthClientId も指定する必要があります。
NTLM
Windows 認証情報を使用して認証するには、AuthScheme をNTLM に設定します。
Negotiate
認証メカニズムをサーバーとネゴシエートするには、AuthScheme を直接本製品 に設定します。 Kerberos で認証する際に使用されます。Kerberos 経由でMicrosoft Dynamics 365 Business Central への認証を行うには、認証プロパティを定義し、Kerberos が認証チケットを取得する方法を選択する必要があります。
Kerberos を使用してMicrosoft Dynamics 365 Business Central への認証を行うには、次のプロパティを設定します。
- hive.server2.authentication:Kerberos。
- AuthScheme:NEGOTIATE。
- KerberosKDC:Kerberos KDC マシンのホスト名またはIP アドレス。
- KerberosRealm:Microsoft Dynamics 365 Business Central Kerberos プリンシパルのレルム。この値は、主たる値の'@' 記号のすぐ後にあります。
- KerberosSPN:Microsoft Dynamics 365 Business Central のKerberos プリンシパルのサービスとホスト。この値は、主たる値の'@' 記号のすぐ前にあります。
認証値に加えて、以下を設定します。
- Server:接続するMicrosoft Dynamics 365 Business Central サーバーのアドレス。
- Platform:Microsoft Dynamics 365 Business Central バージョン。
- Schema:EWS.A。
サービス間認証の有効化
Service-to-Service(S2S)認証は、統合が特定のユーザーアカウントに縛られることなく、単独で実行される必要がある場合に使用されます。S2S 認証は、多要素認証(MFA)に使用されるようなOAuth の削除されたフローではなく、クライアント資格情報を使用したOAuth 認証フローを使用します。サービス間認証を設定するには、まず、Business Central に対するAPI コールを認証するために、Azure AD テナントにアプリケーションを登録する必要があります。
Azure AD テナントに必要なアプリを登録したら、以下を実行します。
- Business Central クライアントで、Microsoft Entra applications を検索します。
- ページを開きます。
- New を選択します。Business Central クライアントは、Microsoft Entra アプリケーションカードを開きます。
- 登録したアプリケーションのアプリケーション(クライアント)ID を入力します。
- Description フィールドを完成させます。このアプリケーションがパートナーによって設定されたものである場合、このパートナーによって設定されたすべてのアプリケーションを必要に応じて将来追跡できるように、十分な識別情報を提供するようにしてください。
- State をEnabled に設定します。
- 必要に応じてオブジェクトに権限を割り当てます。
(詳しくは、https://learn.microsoft.com/ja-jp/dynamics365/business-central/ui-define-granular-permissions を参照してください。)
Note: D365 AUTOMATION とEXTEND. MGT. - ADMIN システム権限セットとユーザーグループは、オートメーションで使用されるほとんどの典型的なオブジェクトへのアクセスを可能にします。(EXTEND. MGT. - ADMIN は、以前のバージョンのD365 EXTENSION MGT アクセス許可セットの代替となります。)
- (オプション:)これまでAzure ポータルで同意の付与を行っていない場合は、Grant Consent を選択してウィザードに従います。このウィザードを開始する前に、カスタムAzure AD アプリケーションでリダイレクトURL が設定済みであることを確認してください。
接続プロパティ
最後に、Connection プロパティを参照してください。接続の確立に使用できるさまざまなオプションの説明があります。
接続の管理
Microsoft Dynamics 365 Business Central への認証に成功すると、インポートするデータをカスタマイズすることができます。詳しくは、接続の管理 を参照してください。
関連項目
- データのクエリ:[データ選択]ウィザードを使用してスプレッドシートにデータをプルします。また、ここではスケジュールされたデータのリフレッシュも設定できます。
- Excel アドインの使用:利用可能なCData Excel 関数 を使用するなど、Microsoft Dynamics 365 Business Central データとやり取りする他の方法が見つかります。