接続の確立
接続プロファイルの設定
[CData]リボンから[データの取得]をクリックし、[取得元:Microsoft Exchange]> 設定済みの接続 を選択してCData クエリウィンドウを起動します。新しい接続を設定するには、[新しいMicrosoft Exchange 接続]をクリックします。ここでは、接続の設定、接続のテスト、および接続プロファイルの保存を行うことができます。
Microsoft Exchange への接続
Exchange への接続には2つのスキーマがあります。
- Exchange Web Services(EWS)は現在更新されていませんが、Exchange OnPremise とExchange Online の両方で利用できます。
Note:Microsoft は、Exchange Online ユーザーに対してMicrosoft Graph への切り替えを推奨しています。 - Microsoft Graph
それぞれのスキーマのデータモデルについては、[データモデル]を参照してください。
EWS とMicrosoft Graph を切り替えるには、Schema をEWS またはMSGraph に設定します。
EWS の使用を続けるExchange Online ユーザーは、Schema をEWS に設定し、Platform をExchange_Online に設定します。
Exchange OnPremise
Microsoft Exchange OnPremise のデフォルトでは、User、Password、およびAuthScheme を設定してBasic 認証をサポートします。しかし、 OnPremise はWindows(NTLM)、Kerberos(後述)による認証もサポートしています。
Exchange Online
Exchange Online は、以下で説明するようにOAuth による認証をサポートしています。(Azure AD およびAzure サービスプリンシパルは、認証にカスタムOAuth アプリケーションも使用します。)
EWS を介してExchange Online プラットフォームに接続する場合は、AuthScheme をAzureAD、AzureServicePrincipal、 AzureMSI のいずれかに設定します。
Microsoft Graph を介してExchange Online に接続する場合は、Schema をMSGraph に設定します。 Schema がMSGraph に設定されている場合、Platform は無視されます。
Microsoft Exchange への認証
Microsoft Exchange は、OAuth(Azure AD およびAzure サービスプリンシパル)、Managed Service Identity(MSI)、Kerberos を使用する認証をサポートします。OAuth
Azure AD およびAzure サービスプリンシパルは、どちらもOAuth ベースの認証を必要とします。
Azure AD
Azure AD は、Microsoft のマルチテナント、クラウドベースのディレクトリおよびID 管理サービスです。これはユーザーベースの認証で、AuthScheme をAzureAD に設定する必要があります。Microsoft Exchange は埋め込みOAuth クレデンシャルを提供しており、デスクトップアプリケーション からの接続を簡単にします。Web アプリケーションから接続するには、カスタムOAuth アプリケーションの作成 で説明するようにカスタムOAuth アプリケーションを作成する必要があります。
すべての認証フローで、OAuth 経由で接続するにはAuthScheme をOAuth に設定する必要があります。
以下のサブセクションでは、該当するすべての認証フローからのMicrosoft Exchange への認証について詳しく説明します。 カスタムOAuth アプリケーションの作成についての情報と、すでに埋め込みOAuth 認証情報を持つ認証フローでもカスタムOAuth アプリケーションを作成したほうがよい場合の説明については、カスタムOAuth アプリケーションの作成 を参照してください。Microsoft Exchange で利用可能な接続文字列プロパティの全リストは、Connection を参照してください。
デスクトップアプリケーション
CData は、デスクトップでの認証を簡単にする埋め込みOAuth アプリケーションを提供します。例えば、ユーザーがインターネットに接続されていないローカルサーバーを使用しているような場合に利用できます。また、Microsoft Exchange コンソールで設定および登録するカスタムOAuth アプリケーションを介してデスクトップから認証することもできます。詳しくは、カスタムOAuth アプリケーションの作成 を参照してください。
接続の前に、以下の変数を設定します。
- InitiateOAuth: GETANDREFRESH。OAuthAccessToken を自動的に取得およびリフレッシュするために使用します。
CData は、デスクトップでの認証を簡単にする埋め込みOAuth アプリケーションを提供します。例えば、ユーザーがインターネットに接続されていないローカルサーバーを使用しているような場合に利用できます。
また、Microsoft Exchange コンソールで設定および登録するカスタムOAuth アプリケーションを介してデスクトップから認証することもできます。詳しくは、カスタムOAuth アプリケーションの作成 を参照してください。
- カスタムAzure AD アプリケーションのみ:
- OAuthClientId:カスタムOAuth アプリケーションの登録時に割り当てられたクライアントId。
- OAuthClientSecret:カスタムOAuth アプリケーションの登録時に割り当てられたクライアントシークレット。
- CallbackURL:カスタムOAuth アプリケーションの登録時に定義されたリダイレクトURI。
接続すると、本製品 はデフォルトブラウザでMicrosoft Exchange のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。
アクセストークンの期限が切れたときは、本製品 は自動でアクセストークンをリフレッシュします。
Azure サービスプリンシパル
Azure サービスプリンシパルは、ロールに基づいたアプリケーションベースの認証です。これは、認証がユーザーごとではなく、アプリケーションごとに行われることを意味します。 アプリケーションで実行されるすべてのタスクは、デフォルトユーザーコンテキストなしで、割り当てられたロールに基づいて実行されます。 リソースへのアプリケーションのアクセスは、割り当てられたロールの権限によって制御されます。Azure サービスプリンシパル認証の設定方法については、カスタムOAuth アプリケーションの作成 を参照してください。
クライアントシークレットによる認証
OAuth は、認証のためのクライアント資格情報の使用をサポートします。クライアント資格情報のOAuth フローでは、認証するアプリケーション自身の資格情報が作成されます。認証フローは通常の認証フローと同じように動作しますが、関連するユーザーに対して資格情報の提供を求めるプロンプトは表示されません。 アプリケーションで受理されるすべてのタスクは、デフォルトユーザーコンテキストなしで実行されます。Note: 埋め込まれたOAuth 資格情報はユーザーごとに認証されるため、クライアントOAuth フローで使用することはできません。 クライアント資格情報を使用するには、必ずカスタムOAuth アプリケーションを作成する必要があります。
クライアント資格情報で認証するには、カスタムOAuth アプリケーションを使用する必要があります。詳しくは、カスタムOAuth アプリケーションの作成 を参照してください。
次のパラメータを設定して、接続してください。
- AuthScheme:AzureServicePrincipal。
- InitiateOAuth:GETANDREFRESH。InitiateOAuth を使うと、OAuth 交換の繰り返しや、手動でのOAuthAccessToken 設定を避けられます。
- AzureTenant:接続するテナント。
- OAuthGrantType:CLIENT。
- OAuthClientId:アプリケーション設定のクライアントId。
- OAuthClientSecret:アプリケーション設定のクライアントシークレット。
クライアント資格情報での認証は、他の接続同様に自動的に行われますが、ユーザーにログインを促すウィンドウは表示されません。ユーザーコンテキストがないため、ブラウザのポップアップは必要ないからです。接続は内部で行われ、処理されます。
Managed Service Identity (MSI)
Azure VM 上でMicrosoft Exchange を実行しており、MSI を利用して接続したい場合は、AuthScheme をAzureMSI に設定します。
User-Managed Identities
マネージドID のトークンを取得するには、OAuthClientId プロパティを使用してマネージドID の"client_id" を指定します。VM に複数のユーザーが割り当てられたマネージドID がある場合は、OAuthClientId も指定する必要があります。
Kerberos
Kerberos 経由でMicrosoft Exchange への認証を行うには、認証プロパティを定義し、Kerberos が認証チケットを取得する方法を選択する必要があります。Kerberos を使用してMicrosoft Exchange への認証を行うには、次のプロパティを設定します。
- hive.server2.authentication: Kerberos。
- AuthScheme:NEGOTIATE。
- KerberosKDC:Kerberos KDC マシンのホスト名またはIP アドレス。
- KerberosRealm:Microsoft Exchange Kerberos プリンシパルのレルム。この値は、主たる値の'@' 記号のすぐ後にあります。
- KerberosSPN:Microsoft Exchange のKerberos プリンシパルのサービスとホスト。この値は、主たる値の'@' 記号のすぐ前にあります。
Kerberos をMicrosoft Exchange 環境で使用する方法の詳細については、Kerberos の使用 を参照してください。
接続プロパティ
最後に、Connection プロパティを参照してください。接続の確立に使用できるさまざまなオプションの説明があります。
接続の管理
Microsoft Exchange への認証に成功すると、インポートするデータをカスタマイズすることができます。詳しくは、接続の管理 を参照してください。
関連項目
- データのクエリ:[データ選択]ウィザードを使用してスプレッドシートにデータをプルします。また、ここではスケジュールされたデータのリフレッシュも設定できます。
- Excel アドインの使用:利用可能なCData Excel 関数 を使用するなど、Microsoft Exchange データとやり取りする他の方法が見つかります。