CData Sync App は、Azure Synapse データをデータベース、データレイク、またはデータウェアハウスに継続的にパイプライン化する簡単な方法を提供し、分析、レポート、AI、および機械学習で簡単に利用できるようにします。
Azure Synapse コネクタはCData Sync アプリケーションから使用可能で、Azure Synapse からデータを取得して、サポートされている任意の同期先に移動できます。
Sync App はAzure Synapse への連携をTDS プロトコルを介して実現します。
データはAzure Blob へのCSV データのアップロードを経由してAzure Synapse に転送され、Azure Synapse にコピーされます。
必須プロパティについては、設定タブを参照してください。
通常必須ではない接続プロパティについては、高度な設定タブを参照してください。
Azure Synapse データベースに接続するには、認証に加えて(下記参照)、次のプロパティを設定します。
次のプロパティを使用してAzure Synapse に接続します。
Web アプリケーションを介したAzure AD への認証には、 常にカスタムOAuth アプリケーションの作成が必要です。
カスタムOAuthアプリケーションの作成の詳細については、Azure AD アプリケーションの作成 を参照してください。
Azure サービスプリンシパルは、ロールに基づいたアプリケーションベースの認証です。これは、認証がユーザーごとではなく、アプリケーションごとに行われることを意味します。 アプリケーションで実行されるすべてのタスクは、デフォルトユーザーコンテキストなしで、割り当てられたロールに基づいて実行されます。 リソースへのアプリケーションのアクセスは、割り当てられたロールの権限によって制御されます。
Azure サービスプリンシパル認証の設定方法については、サービスプリンシパルによるAzure AD アプリの作成 を参照してください。
Azure VM 上でAzure Synapse を実行しており、マネージドID(MSI)認証情報を自動的に取得して接続したい場合は、AuthScheme を AzureMSI に設定します。
VM に複数のユーザーが割り当てられたマネージドID がある場合は、OAuthClientId も指定する必要があります。
このセクションでは、Azure Synapse Sync App の高度な機能を厳選して説明します。
SSL の設定 を使用して、Sync App が証明書のネゴシエーションをどのように扱うかを調整します。さまざまな証明書形式を選択できます。詳しくは、「接続文字列オプション」にあるSSLServerCert プロパティを参照してください。
Windows プロキシを含むファイアウォールとプロキシ に合致するようSync App を設定します。トンネル接続を設定することもできます。
To enable TLS, set Encrypt to True.
With this configuration, the Sync App attempts to negotiate TLS with the server. The server certificate is validated against the default system trusted certificate store. You can override how the certificate gets validated using the SSLServerCert connection property.
別の証明書を指定するには、SSLServerCert 接続プロパティを参照してください。
Azure Synapse Sync App はクライアント証明書の設定もサポートしています。次を設定すれば、クライアント証明書を使って接続できます。
次のプロパティを設定します。
| プロパティ | 説明 |
| AuthScheme | The scheme used for authentication. Accepted entries are Password, AzureAD, AzureServicePrincipal, AzureServicePrincipalCert, AzureMSI, AzurePassword. |
| Server | The name of the server running Synapse. |
| User | 認証するAzure Synapse ユーザーアカウントのユーザーID を指定します。 |
| Password | 認証するユーザーアカウントのパスワードを指定します。 |
| Port | The port of the Synapse. |
| Database | The name of the Synapse database. |
| Encrypt | This field sets whether SSL is enabled and whether the 'Strict' encryption type is used. |
| プロパティ | 説明 |
| BatchMode | The Batch Mode of Azure Synapse bulkInsert. |
| StorageAccountLocation | The Storage Account Location for staging your data. |
| AzureSASToken | The string value of the Azure Blob shared access signature. |
| プロパティ | 説明 |
| AzureTenant | データにアクセスするために使用されるAzure Synapse テナントを、名前(例えば、contoso.omnicrosoft.com)またはID で識別します。(条件付き) |
| AzureEnvironment | 接続するAzure ネットワーク環境を指定します。Azure アカウントが追加されたネットワークと同じである必要があります。 |
| プロパティ | 説明 |
| OAuthClientId | カスタムOAuth アプリケーションの作成時に割り当てられたクライアントId を指定します。(コンシューマーキーとも呼ばれます。)このID は、カスタムアプリケーションをOAuth 認可サーバーに登録します。 |
| OAuthClientSecret | カスタムOAuth アプリケーションの作成時に割り当てられたクライアントシークレットを指定します。( コンシューマーシークレット とも呼ばれます。)このシークレットは、カスタムアプリケーションをOAuth 認可サーバーに登録します。 |
| OAuthGrantType | 選択したOAuth フローのグラント種別を指定します。 この値は、OAuth カスタムアプリケーション作成時に設定されたグラント種別と同じである必要があります。 |
| プロパティ | 説明 |
| OAuthJWTCert | JWT 証明書のストア。 |
| OAuthJWTCertType | JWT 証明書を格納するキーストアの種類。 |
| OAuthJWTCertPassword | OAuth JWT 証明書のパスワード。パスワードを必要とする証明書ストアにアクセスするために使用されます。証明書ストアがパスワードを必要としない場合は、このプロパティを空白のままにします。 |
| OAuthJWTCertSubject | OAuth JWT 証明書のサブジェクトで、ストアで一致する証明書を検索するために使用されます。部分一致と、先頭の証明書を選択するためのワイルドカード '*' をサポートします。 |
| プロパティ | 説明 |
| SSLClientCert | SSL クライアント認証(2-way SSL)のためのTLS/SSL クライアント証明書ストアを指定します。このプロパティは、他のSSL 関連プロパティと連動して、セキュアな接続を確立します。 |
| SSLClientCertType | SSL クライアント認証用のTLS/SSL クライアント証明書を格納するキーストアの種類を指定します。プラットフォームや証明書のソースに応じて、さまざまなキーストア形式から選択できます。 |
| SSLClientCertPassword | TLS/SSL クライアント証明書ストアにアクセスするために必要なパスワードを指定します。選択した証明書ストアの種類がアクセスにパスワードを必要とする場合、このプロパティを使用します。 |
| SSLClientCertSubject | TLS/SSL クライアント証明書のサブジェクトを指定し、証明書ストアで場所を検索します。 CN=www.server.com, C=US のように、識別名フィールドのカンマ区切りのリストを使用します。ワイルドカード * は、ストアの先頭の証明書を選択します。 |
| SSLServerCert | TLS/SSL を使用して接続する際に、サーバーが受け入れ可能な証明書を指定します。 |
| プロパティ | 説明 |
| FirewallType | provider がプロキシベースのファイアウォールを介してトラフィックをトンネリングするために使用するプロトコルを指定します。 |
| FirewallServer | ファイアウォールを通過し、ユーザーのクエリをネットワークリソースに中継するために使用されるプロキシのIP アドレス、DNS 名、またはホスト名を識別します。 |
| FirewallPort | プロキシベースのファイアウォールで使用するTCP ポートを指定します。 |
| FirewallUser | プロキシベースのファイアウォールに認証するアカウントのユーザーID を識別します。 |
| FirewallPassword | プロキシベースのファイアウォールで認証するユーザーアカウントのパスワードを指定します。 |
| プロパティ | 説明 |
| LogModules | ログファイルに含めるコアモジュールを指定します。セミコロンで区切られたモジュール名のリストを使用します。デフォルトでは、すべてのモジュールがログに記録されます。 |
| プロパティ | 説明 |
| Location | テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリの場所を指定します。サービスの要件に応じて、これは絶対パスまたは相対パスのいずれかで表されます。 |
| BrowsableSchemas | レポートされるスキーマを利用可能なすべてのスキーマのサブセットに制限するオプション設定。例えば、 BrowsableSchemas=SchemaA,SchemaB,SchemaC です。 |
| Tables | レポートされるテーブルを利用可能なすべてのテーブルのサブセットに制限するオプション設定。例えば、 Tables=TableA,TableB,TableC です。 |
| Views | レポートされたビューを使用可能なテーブルのサブセットに制限するオプション設定。例えば、 Views=ViewA,ViewB,ViewC です。 |
| プロパティ | 説明 |
| CustomizeDateFormat | Configure the Date format. |
| ApplicationIntent | Expresses the client application's request to be directed either to a read-write or read-only version of an availability group database. |
| EnableTransaction | Determines whether transactions are enabled. |
| MaxRows | 集計やGROUP BY を使用しないクエリで返される最大行数を指定します。 |
| Other | 特定のユースケースに対して追加の隠しプロパティを指定します。これらは通常のprovider の機能では必要ありません。複数のプロパティを定義するには、セミコロンで区切られたリストを使用します。 |
| QueryPassthrough | このオプションは、クエリをAzure Synapse サーバーにas-is で渡します。 |
| Timeout | provider がタイムアウトエラーを返すまでにサーバーからの応答を待機する最大時間を秒単位で指定します。デフォルトは60秒です。タイムアウトを無効にするには0を設定します。 |
このセクションでは、本プロバイダーの接続文字列で設定可能なAuthentication プロパティの全リストを提供します。
| プロパティ | 説明 |
| AuthScheme | The scheme used for authentication. Accepted entries are Password, AzureAD, AzureServicePrincipal, AzureServicePrincipalCert, AzureMSI, AzurePassword. |
| Server | The name of the server running Synapse. |
| User | 認証するAzure Synapse ユーザーアカウントのユーザーID を指定します。 |
| Password | 認証するユーザーアカウントのパスワードを指定します。 |
| Port | The port of the Synapse. |
| Database | The name of the Synapse database. |
| Encrypt | This field sets whether SSL is enabled and whether the 'Strict' encryption type is used. |
The scheme used for authentication. Accepted entries are Password, AzureAD, AzureServicePrincipal, AzureServicePrincipalCert, AzureMSI, AzurePassword.
Azure AD で認証するためのカスタムアプリケーションの作成方法については、Azure AD アプリケーションの作成 を参照してください。
Azure AD サービスプリンシパルで認証するためのカスタムアプリケーションの作成方法については、サービスプリンシパルによるAzure AD アプリの作成 を参照してください。
Together with Password and User, this field is used to authenticate against the server. Password is the default option. Use the following options to select your authentication scheme:
The name of the server running Synapse.
Set this property to the name or network address of the Synapse instance.
The name of the Synapse database.
The name of the Synapse database running on the specified Server.
This field sets whether SSL is enabled and whether the 'Strict' encryption type is used.
This field sets whether the Sync App will attempt to negotiate TLS/SSL connections to the server. By default, the Sync App checks the server's certificate against the system's trusted certificate store. To specify another certificate, set SSLServerCert. 'Strict' encryption enforces good security practices and makes SQL Server traffic manageable by standard network appliances.
このセクションでは、本プロバイダーの接続文字列で設定可能なBulk プロパティの全リストを提供します。
| プロパティ | 説明 |
| BatchMode | The Batch Mode of Azure Synapse bulkInsert. |
| StorageAccountLocation | The Storage Account Location for staging your data. |
| AzureSASToken | The string value of the Azure Blob shared access signature. |
The Batch Mode of Azure Synapse bulkInsert.
COPY utilizes an external storage account to load data into and then copy into your Azure Synapse table. You will also need to set the StorageAccountLocation and the AzureSASToken, which only supports INSERT statement. BCP transfers data to Azure Synapse directly with BulkLoadBCP protocol through the TCP communication between client and server, which only supports INSERT statements. STANDARD uses standard INSERT, UPDATE and DELETE statements for batch operations.
The Storage Account Location for staging your data.
Specify the file location in AzureBlob(only for COPY mode).
"myaccount" here is your Azure Blob account name, "myblobcontainer" is the Blob container you want to use. For example: https://myaccount.blob.core.windows.net/myblobcontainer/...
The string value of the Azure Blob shared access signature.
The string value of the Azure Blob shared access signature.
You can go to "Shared access signature" in "Settings" section for your Azure Blob container through Azure Portal, then click "Generate SAS token and URL" and copy the value from "Blob SAS token" textbox. Please be cautionus to select the proper permission (Create, Write, Delete) in "Permissions" dropdown list and validity of Start and Expiry time before you generate SAS token.
このセクションでは、本プロバイダーの接続文字列で設定可能なAzure Authentication プロパティの全リストを提供します。
| プロパティ | 説明 |
| AzureTenant | データにアクセスするために使用されるAzure Synapse テナントを、名前(例えば、contoso.omnicrosoft.com)またはID で識別します。(条件付き) |
| AzureEnvironment | 接続するAzure ネットワーク環境を指定します。Azure アカウントが追加されたネットワークと同じである必要があります。 |
データにアクセスするために使用されるAzure Synapse テナントを、名前(例えば、contoso.omnicrosoft.com)またはID で識別します。(条件付き)
テナントは、主にドメイン(例えば、microsoft.com)に関連付けられた、組織のデジタル表現です。 テナントは、Tenant ID(ディレクトリID とも呼ばれる)によって管理されます。これは、Azure リソースへのアクセスや管理権限をユーザーに割り当てる際に指定します。
Azure ポータルでディレクトリID を見つけるには、Azure Active Directory -> プロパティに移動します。
AuthScheme = AzureServicePrincipal またはAzureServicePrincipalCert のいずれかである場合、またはAzureTenant = AzureAD であり、ユーザーが複数のテナントに属している場合は、AzureTenant を指定する必要があります。
接続するAzure ネットワーク環境を指定します。Azure アカウントが追加されたネットワークと同じである必要があります。
Azure アカウントがGlobal ネットワークとは異なるネットワーク(China、USGOVT、USGOVTDOD など)の一部である場合は、必要です。
このセクションでは、本プロバイダーの接続文字列で設定可能なOAuth プロパティの全リストを提供します。
| プロパティ | 説明 |
| OAuthClientId | カスタムOAuth アプリケーションの作成時に割り当てられたクライアントId を指定します。(コンシューマーキーとも呼ばれます。)このID は、カスタムアプリケーションをOAuth 認可サーバーに登録します。 |
| OAuthClientSecret | カスタムOAuth アプリケーションの作成時に割り当てられたクライアントシークレットを指定します。( コンシューマーシークレット とも呼ばれます。)このシークレットは、カスタムアプリケーションをOAuth 認可サーバーに登録します。 |
| OAuthGrantType | 選択したOAuth フローのグラント種別を指定します。 この値は、OAuth カスタムアプリケーション作成時に設定されたグラント種別と同じである必要があります。 |
カスタムOAuth アプリケーションの作成時に割り当てられたクライアントId を指定します。(コンシューマーキーとも呼ばれます。)このID は、カスタムアプリケーションをOAuth 認可サーバーに登録します。
OAuthClientId は、ユーザーがOAuth 経由で認証を行う前に設定する必要があるいくつかの接続パラメータの1つです。詳細は接続の確立を参照してください。
カスタムOAuth アプリケーションの作成時に割り当てられたクライアントシークレットを指定します。( コンシューマーシークレット とも呼ばれます。)このシークレットは、カスタムアプリケーションをOAuth 認可サーバーに登録します。
OAuthClientSecret は、ユーザーがOAuth 経由で認証を行う前に設定する必要があるいくつかの接続パラメータの1つです。詳細は接続の確立を参照してください。
選択したOAuth フローのグラント種別を指定します。 この値は、OAuth カスタムアプリケーション作成時に設定されたグラント種別と同じである必要があります。
ほとんどの場合、デフォルトのグラント種別は変更すべきではありません。 最も一般的なOAuth グラント種別とそれぞれのメリット・デメリットについては、https://oauth.net/2/grant-types/ を参照してください。
このセクションでは、本プロバイダーの接続文字列で設定可能なJWT OAuth プロパティの全リストを提供します。
| プロパティ | 説明 |
| OAuthJWTCert | JWT 証明書のストア。 |
| OAuthJWTCertType | JWT 証明書を格納するキーストアの種類。 |
| OAuthJWTCertPassword | OAuth JWT 証明書のパスワード。パスワードを必要とする証明書ストアにアクセスするために使用されます。証明書ストアがパスワードを必要としない場合は、このプロパティを空白のままにします。 |
| OAuthJWTCertSubject | OAuth JWT 証明書のサブジェクトで、ストアで一致する証明書を検索するために使用されます。部分一致と、先頭の証明書を選択するためのワイルドカード '*' をサポートします。 |
JWT 証明書のストア。
クライアント証明書のための証明書ストア名。
OAuthJWTCertType フィールドは、OAuthJWTCert により指定された証明書ストアの種類を指定します。 ストアがパスワードで保護されている場合は、OAuthJWTCertPassword でパスワードを指定します。
OAuthJWTCert は、OAuthJWTCertSubject フィールドとともにクライアント証明書を指定するために使われます。 OAuthJWTCert に値がある場合で、OAuthJWTCertSubject が設定されている場合は、証明書の検索が始まります。 詳しくは、OAuthJWTCertSubject フィールドを参照してください。
証明書ストアの指定はプラットフォームに依存します。
Windows の共通のユーザとシステム証明書ストアの指定は以下のとおりです。
| MY | 個人証明書と関連付けられた秘密キーを格納している証明書ストア。 |
| CA | 証明機関の証明書。 |
| ROOT | ルート証明書。 |
| SPC | ソフトウェア発行元証明書。 |
Javaでは、証明書ストアは通常、証明書および任意の秘密キーを含むファイルです。
証明書ストアの種類がPFXFile の場合は、このプロパティにファイル名を設定します。 PFXBlob の場合は、このプロパティをPFX ファイルのバイナリコンテンツ(例えば、PKCS12証明書ストア)に設定する必要があります。
JWT 証明書を格納するキーストアの種類。
このプロパティには次の値の一つを設定できます。
| USER | Windows の場合、現在のユーザーにより所有された証明書ストアであることを指定します。 Note:この種類はJava では利用できません。 |
| MACHINE | Windows の場合、この証明書ストアがシステムストアであることを指定します。 Note:この種類はJava では利用できません。 |
| PFXFILE | この証明書ストアは、証明書を含むPFX(PKCS12)ファイルの名前です。 |
| PFXBLOB | この証明書ストアは、PFX(PKCS12)形式の証明書ストアを表すBase-64でエンコードされた文字列です。 |
| JKSFILE | この証明書ストアは、証明書を含むJava key store(JKS)ファイルの名前です。 Note:この種類はJava のみで利用できます。 |
| JKSBLOB | この証明書ストアは、Java key store(JKS)形式の証明書ストアを表すBase-64でエンコードされた文字列です。 Note:この種類はJava のみで利用できます。 |
| PEMKEY_FILE | この証明書ストアは、秘密キーと任意の証明書を含むPEM でエンコードされたファイルの名前です。 |
| PEMKEY_BLOB | この証明書ストアは、秘密キーと任意の証明書を含むBase-64でエンコードされた文字列です。 |
| PUBLIC_KEY_FILE | この証明書ストアは、PEM またはDER でエンコードされた公開キーの証明書を含むファイルの名前です。 |
| PUBLIC_KEY_BLOB | この証明書ストアは、PEM またはDER でエンコードされた公開キーの証明書を含むBase-64でエンコードされた文字列です。 |
| SSHPUBLIC_KEY_FILE | この証明書ストアは、SSH 公開キーを含むファイルの名前です。 |
| SSHPUBLIC_KEY_BLOB | この証明書ストアは、SSH 公開キーを含むBase-64でエンコードされた文字列です。 |
| P7BFILE | この証明書ストアは、証明書を含むPKCS7 ファイルの名前です。 |
| PPKFILE | この証明書ストアは、PuTTY 秘密キー(PPK)を含むファイルの名前です。 |
| XMLFILE | この証明書ストアは、XML 形式の証明書を含むファイルの名前です。 |
| XMLBLOB | この証明書ストアは、XML 形式の証明書を含む文字列の名前です。 |
| BCFKSFILE | この証明書ストアは、Bouncy Castle キーストアを含むファイルの名前です。 |
| BCFKSBLOB | この証明書ストアは、Bouncy Castle キーストアを含む文字列(Base-64エンコード)です。 |
OAuth JWT 証明書のパスワード。パスワードを必要とする証明書ストアにアクセスするために使用されます。証明書ストアがパスワードを必要としない場合は、このプロパティを空白のままにします。
このプロパティは、証明書ストアを開くために必要なパスワードを指定します。ただし、ストアの種類がパスワードを必要とする場合に限ります。 パスワードが必要かどうかを判断するには、ご利用の証明書ストアのドキュメントまたは設定を参照してください。
OAuth JWT 証明書のサブジェクトで、ストアで一致する証明書を検索するために使用されます。部分一致と、先頭の証明書を選択するためのワイルドカード '*' をサポートします。
このプロパティの値は、ストアで一致する証明書を検索するために使用されます。検索プロセスは以下のように動作します。
値を '*' に設定すると、ストアの先頭の証明書が自動的に選択されます。 証明書のサブジェクトは識別名フィールドおよび値のカンマ区切りのリストです。 例:CN=www.server.com, OU=test, C=US, [email protected]。一般的なフィールドには以下のものが含まれます。
| フィールド | 説明 |
| CN | 共通名。一般的には、www.server.com のようなホスト名です。 |
| O | 法人名 |
| OU | 法人の部署名 |
| L | 法人の住所(市町村名) |
| S | 法人の住所(都道府県) |
| C | 国名 |
| E | E メールアドレス |
フィールド値にカンマが含まれる場合は、引用符で囲んでください。例:"O=ACME, Inc."。
このセクションでは、本プロバイダーの接続文字列で設定可能なSSL プロパティの全リストを提供します。
| プロパティ | 説明 |
| SSLClientCert | SSL クライアント認証(2-way SSL)のためのTLS/SSL クライアント証明書ストアを指定します。このプロパティは、他のSSL 関連プロパティと連動して、セキュアな接続を確立します。 |
| SSLClientCertType | SSL クライアント認証用のTLS/SSL クライアント証明書を格納するキーストアの種類を指定します。プラットフォームや証明書のソースに応じて、さまざまなキーストア形式から選択できます。 |
| SSLClientCertPassword | TLS/SSL クライアント証明書ストアにアクセスするために必要なパスワードを指定します。選択した証明書ストアの種類がアクセスにパスワードを必要とする場合、このプロパティを使用します。 |
| SSLClientCertSubject | TLS/SSL クライアント証明書のサブジェクトを指定し、証明書ストアで場所を検索します。 CN=www.server.com, C=US のように、識別名フィールドのカンマ区切りのリストを使用します。ワイルドカード * は、ストアの先頭の証明書を選択します。 |
| SSLServerCert | TLS/SSL を使用して接続する際に、サーバーが受け入れ可能な証明書を指定します。 |
SSL クライアント認証(2-way SSL)のためのTLS/SSL クライアント証明書ストアを指定します。このプロパティは、他のSSL 関連プロパティと連動して、セキュアな接続を確立します。
このプロパティは、SSL クライアント認証のためのクライアント証明書ストアを指定します。 このプロパティは、証明書ストアの種類を定義するSSLClientCertType、およびパスワードで保護されたストア用のパスワードを指定するSSLClientCertPassword と一緒に使用します。 SSLClientCert が設定され、SSLClientCertSubject が設定されている場合、ドライバーは指定されたサブジェクトに一致する証明書を検索します。
証明書ストアの指定はプラットフォームによって異なります。 Windowsでは、証明書ストアはMY(個人証明書)などの名前で識別されますが、Java では、証明書ストアは通常、証明書とオプションの秘密キーを含むファイルです。
Windows の共通のユーザとシステム証明書ストアの指定は以下のとおりです。
| MY | 個人証明書と関連付けられた秘密キーを格納している証明書ストア。 |
| CA | 証明機関の証明書。 |
| ROOT | ルート証明書。 |
| SPC | ソフトウェア発行元証明書。 |
PFXFile タイプの場合、このプロパティをファイル名に設定します。PFXBlob タイプの場合は、このプロパティをPKCS12 形式のファイルのバイナリコンテンツに設定します。
SSL クライアント認証用のTLS/SSL クライアント証明書を格納するキーストアの種類を指定します。プラットフォームや証明書のソースに応じて、さまざまなキーストア形式から選択できます。
このプロパティは、クライアント証明書を指定するために使用されるキーストアの形式と場所を決定します。 サポートされている値には、プラットフォーム固有およびユニバーサルなキーストア形式があります。 有効な値と使用方法は以下のとおりです。
| USER - デフォルト | Windows の場合、現在のユーザーにより所有された証明書ストアであることを指定します。この種類はJava では利用できませんので注意してください。 |
| MACHINE | Windows の場合、この証明書ストアがシステムストアであることを指定します。この種類はJava では利用できませんので注意してください。 |
| PFXFILE | この証明書ストアは、証明書を含むPFX(PKCS12)ファイルの名前です。 |
| PFXBLOB | この証明書ストアは、PFX(PKCS12)形式の証明書ストアを表すBase-64でエンコードされた文字列です。 |
| JKSFILE | この証明書ストアは、証明書を含むJava key store(JKS)ファイルの名前です。この種類はJava でのみ利用できますので注意してください。 |
| JKSBLOB | この証明書ストアは、Java key store(JKS)形式の証明書ストアを表すBase-64でエンコードされた文字列です。この種類はJava でのみ利用できますので注意してください。 |
| PEMKEY_FILE | この証明書ストアは、秘密キーと任意の証明書を含むPEM でエンコードされたファイルの名前です。 |
| PEMKEY_BLOB | この証明書ストアは、秘密キーと任意の証明書を含むBase-64でエンコードされた文字列です。 |
| PUBLIC_KEY_FILE | この証明書ストアは、PEM またはDER でエンコードされた公開キーの証明書を含むファイルの名前です。 |
| PUBLIC_KEY_BLOB | この証明書ストアは、PEM またはDER でエンコードされた公開キーの証明書を含むBase-64でエンコードされた文字列です。 |
| SSHPUBLIC_KEY_FILE | この証明書ストアは、SSH 公開キーを含むファイルの名前です。 |
| SSHPUBLIC_KEY_BLOB | この証明書ストアは、SSH 公開キーを含むBase-64でエンコードされた文字列です。 |
| P7BFILE | この証明書ストアは、証明書を含むPKCS7 ファイルの名前です。 |
| PPKFILE | この証明書ストアは、PuTTY 秘密キー(PPK)を含むファイルの名前です。 |
| XMLFILE | この証明書ストアは、XML 形式の証明書を含むファイルの名前です。 |
| XMLBLOB | この証明書ストアは、XML 形式の証明書を含む文字列の名前です。 |
| BCFKSFILE | この証明書ストアは、Bouncy Castle キーストアを含むファイルの名前です。 |
| BCFKSBLOB | この証明書ストアは、Bouncy Castle キーストアを含む文字列(Base-64エンコード)です。 |
TLS/SSL クライアント証明書ストアにアクセスするために必要なパスワードを指定します。選択した証明書ストアの種類がアクセスにパスワードを必要とする場合、このプロパティを使用します。
このプロパティは、パスワードで保護された証明書ストアを開くために必要なパスワードを指定します。 このプロパティは、PFX やJKS タイプのストアによく推奨されるように、復号化のためにパスワードを必要とする証明書ストアを使用する場合に必要です。
証明書ストアの種類がパスワードを必要としない場合(Windows のUSER やMACHINE など)、このプロパティは空白のままにできます。 認証エラーを回避するため、パスワードが指定された証明書ストアに関連付けられたものと一致していることを確認してください。
TLS/SSL クライアント証明書のサブジェクトを指定し、証明書ストアで場所を検索します。 CN=www.server.com, C=US のように、識別名フィールドのカンマ区切りのリストを使用します。ワイルドカード * は、ストアの先頭の証明書を選択します。
このプロパティは、サブジェクトに基づいてロードするクライアント証明書を決定します。Sync App は、指定されたサブジェクトに完全に一致する証明書を検索します。 完全に一致するものが見つからない場合、Sync App はサブジェクトの値を含む証明書を検索します。 一致する証明書がない場合、証明書は選択されません。
サブジェクトは、識別名フィールドと値のカンマ区切りリストという標準の形式に従うべきです。 例えば、CN=www.server.com, OU=Test, C=US です。一般的なフィールドには以下のものが含まれます。
| フィールド | 説明 |
| CN | 共通名。一般的には、www.server.com のようなホスト名です。 |
| O | 法人名 |
| OU | 法人の部署名 |
| L | 法人の住所(市町村名) |
| S | 法人の住所(都道府県) |
| C | 国名 |
| E | E メールアドレス |
Note: フィールドにカンマなどの特殊文字が含まれている場合は、値を引用符で囲む必要があります。例:CN="Example, Inc.", C=US。
TLS/SSL を使用して接続する際に、サーバーが受け入れ可能な証明書を指定します。
TLS/SSL 接続を使用する場合は、このプロパティを使用して、サーバーが受け入れるTLS/SSL 証明書を指定できます。コンピュータによって信頼されていない他の証明書はすべて拒否されます。
このプロパティは、次のフォームを取ります:
| 説明 | 例 |
| フルPEM 証明書(例では省略されています) | -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE----- |
| 証明書を保有するローカルファイルへのパス。 | C:\cert.cer |
| 公開鍵(例では省略されています) | -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY----- |
| MD5 Thumbprint (hex 値はスペースおよびコロン区切り) | ecadbdda5a1529c58a1e9e09828d70e4 |
| SHA1 Thumbprint (hex 値はスペースおよびコロン区切り) | 34a929226ae0819f2ec14b4a3d904f801cbb150d |
これを指定しない場合は、マシンが信用するすべての証明書が受け入れられます。
すべての証明書の受け入れを示すには、'*'を使用します。セキュリティ上の理由から、これはお勧めできません。
このセクションでは、本プロバイダーの接続文字列で設定可能なFirewall プロパティの全リストを提供します。
| プロパティ | 説明 |
| FirewallType | provider がプロキシベースのファイアウォールを介してトラフィックをトンネリングするために使用するプロトコルを指定します。 |
| FirewallServer | ファイアウォールを通過し、ユーザーのクエリをネットワークリソースに中継するために使用されるプロキシのIP アドレス、DNS 名、またはホスト名を識別します。 |
| FirewallPort | プロキシベースのファイアウォールで使用するTCP ポートを指定します。 |
| FirewallUser | プロキシベースのファイアウォールに認証するアカウントのユーザーID を識別します。 |
| FirewallPassword | プロキシベースのファイアウォールで認証するユーザーアカウントのパスワードを指定します。 |
provider がプロキシベースのファイアウォールを介してトラフィックをトンネリングするために使用するプロトコルを指定します。
プロキシベースのファイアウォール(またはプロキシファイアウォール)は、ユーザーのリクエストとそれがアクセスするリソースの間に介在するネットワークセキュリティデバイスです。 プロキシは認証済みのユーザーのリクエストを受け取り、ファイアウォールを通過して適切なサーバーにリクエストを送信します。
プロキシは、リクエストを送信したユーザーに代わってデータバケットを評価し転送するため、ユーザーはサーバーに直接接続することなく、プロキシのみに接続します。
次の表は、サポートされている各プロトコルのポート番号情報です。
| プロトコル | デフォルトポート | 説明 |
| TUNNEL | 80 | Sync App がAzure Synapse への接続を開くポート。トラフィックはこの場所のプロキシを経由して行き来します。 |
| SOCKS4 | 1080 | Sync App がAzure Synapse への接続を開くポート。SOCKS 4 は次にFirewallUser 値をプロキシに渡し、接続リクエストが許容されるかどうかを決定します。 |
| SOCKS5 | 1080 | Sync App がAzure Synapse にデータを送信するポート。SOCKS 5 プロキシに認証が必要な場合には、FirewallUser およびFirewallPassword をプロキシが認識する認証情報に設定します。 |
ファイアウォールを通過し、ユーザーのクエリをネットワークリソースに中継するために使用されるプロキシのIP アドレス、DNS 名、またはホスト名を識別します。
プロキシベースのファイアウォール(またはプロキシファイアウォール)は、ユーザーのリクエストとそれがアクセスするリソースの間に介在するネットワークセキュリティデバイスです。 プロキシは認証済みのユーザーのリクエストを受け取り、ファイアウォールを通過して適切なサーバーにリクエストを送信します。
プロキシは、リクエストを送信したユーザーに代わってデータバケットを評価し転送するため、ユーザーはサーバーに直接接続することなく、プロキシのみに接続します。
プロキシベースのファイアウォールで使用するTCP ポートを指定します。
プロキシベースのファイアウォール(またはプロキシファイアウォール)は、ユーザーのリクエストとそれがアクセスするリソースの間に介在するネットワークセキュリティデバイスです。 プロキシは認証済みのユーザーのリクエストを受け取り、ファイアウォールを通過して適切なサーバーにリクエストを送信します。
プロキシは、リクエストを送信したユーザーに代わってデータバケットを評価し転送するため、ユーザーはサーバーに直接接続することなく、プロキシのみに接続します。
プロキシベースのファイアウォールに認証するアカウントのユーザーID を識別します。
プロキシベースのファイアウォール(またはプロキシファイアウォール)は、ユーザーのリクエストとそれがアクセスするリソースの間に介在するネットワークセキュリティデバイスです。 プロキシは認証済みのユーザーのリクエストを受け取り、ファイアウォールを通過して適切なサーバーにリクエストを送信します。
プロキシは、リクエストを送信したユーザーに代わってデータバケットを評価し転送するため、ユーザーはサーバーに直接接続することなく、プロキシのみに接続します。
プロキシベースのファイアウォールで認証するユーザーアカウントのパスワードを指定します。
プロキシベースのファイアウォール(またはプロキシファイアウォール)は、ユーザーのリクエストとそれがアクセスするリソースの間に介在するネットワークセキュリティデバイスです。 プロキシは認証済みのユーザーのリクエストを受け取り、ファイアウォールを通過して適切なサーバーにリクエストを送信します。
プロキシは、リクエストを送信したユーザーに代わってデータバケットを評価し転送するため、ユーザーはサーバーに直接接続することなく、プロキシのみに接続します。
このセクションでは、本プロバイダーの接続文字列で設定可能なLogging プロパティの全リストを提供します。
| プロパティ | 説明 |
| LogModules | ログファイルに含めるコアモジュールを指定します。セミコロンで区切られたモジュール名のリストを使用します。デフォルトでは、すべてのモジュールがログに記録されます。 |
ログファイルに含めるコアモジュールを指定します。セミコロンで区切られたモジュール名のリストを使用します。デフォルトでは、すべてのモジュールがログに記録されます。
このプロパティは、含めるログモジュールを指定することでログファイルの内容をカスタマイズすることができます。 ログモジュールは、クエリ実行、メタデータ、SSL 通信などの異なる領域にログ情報を分類します。 各モジュールは4文字のコードで表され、文字の名前の場合は末尾にスペースが必要なものもあります。
例えば、EXEC はクエリ実行をログに記録し、INFO は一般的なプロバイダーメッセージをログに記録します。 複数のモジュールを含めるには、次のように名前をセミコロンで区切ります:INFO;EXEC;SSL。
Verbosity 接続プロパティは、このプロパティで指定されたモジュールベースのフィルタリングよりも優先されます。 Verbosity レベルを満たし、指定されたモジュールに属するログエントリのみが記録されます。 利用可能なすべてのモジュールをログファイルに含めるには、このプロパティを空白のままにします。
利用可能なモジュールの完全なリストとログの設定に関する詳細な手引きについては、ログ の「高度なログの記録」セクションを参照してください。
このセクションでは、本プロバイダーの接続文字列で設定可能なSchema プロパティの全リストを提供します。
| プロパティ | 説明 |
| Location | テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリの場所を指定します。サービスの要件に応じて、これは絶対パスまたは相対パスのいずれかで表されます。 |
| BrowsableSchemas | レポートされるスキーマを利用可能なすべてのスキーマのサブセットに制限するオプション設定。例えば、 BrowsableSchemas=SchemaA,SchemaB,SchemaC です。 |
| Tables | レポートされるテーブルを利用可能なすべてのテーブルのサブセットに制限するオプション設定。例えば、 Tables=TableA,TableB,TableC です。 |
| Views | レポートされたビューを使用可能なテーブルのサブセットに制限するオプション設定。例えば、 Views=ViewA,ViewB,ViewC です。 |
テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリの場所を指定します。サービスの要件に応じて、これは絶対パスまたは相対パスのいずれかで表されます。
Location プロパティは、定義をカスタマイズしたり(例えば、カラム名を変更する、カラムを無視するなど)、新しいテーブル、ビュー、またはストアドプロシージャでデータモデルを拡張する場合にのみ必要です。
指定しない場合、デフォルトの場所は%APPDATA%\\CData\\AzureSynapse Data Provider\\Schema となり、%APPDATA%はユーザーのコンフィギュレーションディレクトリに設定されます:
| プラットフォーム | %APPDATA% |
| Windows | APPDATA 環境変数の値 |
| Linux | ~/.config |
レポートされるスキーマを利用可能なすべてのスキーマのサブセットに制限するオプション設定。例えば、 BrowsableSchemas=SchemaA,SchemaB,SchemaC です。
利用可能なデータベーススキーマをすべてリストすると余分な時間がかかり、パフォーマンスが低下します。 接続文字列にスキーマのリストを指定することで、時間を節約しパフォーマンスを向上させることができます。
レポートされるテーブルを利用可能なすべてのテーブルのサブセットに制限するオプション設定。例えば、 Tables=TableA,TableB,TableC です。
データベースによっては、利用可能なすべてのテーブルをリストするのに時間がかかり、パフォーマンスが低下する場合があります。 接続文字列にテーブルのリストを指定することで、時間を節約しパフォーマンスを向上させることができます。
利用可能なテーブルがたくさんあり、すでに作業したいテーブルが決まっている場合、このプロパティを使用して対象のテーブルのみに表示を制限することができます。これを行うには、カンマ区切りのリストで使用したいテーブルを指定します。各テーブルは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space` です。
Note:複数のスキーマまたはカタログを持つデータソースに接続する場合は、表示する各テーブルを完全修飾名で指定する必要があります。これにより、複数のカタログやスキーマに存在するテーブルが混同されることを防ぎます。
レポートされたビューを使用可能なテーブルのサブセットに制限するオプション設定。例えば、 Views=ViewA,ViewB,ViewC です。
データベースによっては、利用可能なすべてのビューをリストするのに時間がかかり、パフォーマンスが低下する場合があります。 接続文字列にビューのリストを指定することで、時間を節約しパフォーマンスを向上させることができます。
利用可能なビューがたくさんあり、すでに作業したいビューが決まっている場合、このプロパティを使用して対象のビューのみに表示を制限することができます。これを行うには、カンマ区切りのリストで使用したいビューを指定します。各ビューは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space` です。
Note:複数のスキーマまたはカタログを持つデータソースに接続する場合は、確認する各ビューを完全修飾名で指定する必要があります。これにより、複数のカタログやスキーマに存在するビューが混同されることを防ぎます。
このセクションでは、本プロバイダーの接続文字列で設定可能なMiscellaneous プロパティの全リストを提供します。
| プロパティ | 説明 |
| CustomizeDateFormat | Configure the Date format. |
| ApplicationIntent | Expresses the client application's request to be directed either to a read-write or read-only version of an availability group database. |
| EnableTransaction | Determines whether transactions are enabled. |
| MaxRows | 集計やGROUP BY を使用しないクエリで返される最大行数を指定します。 |
| Other | 特定のユースケースに対して追加の隠しプロパティを指定します。これらは通常のprovider の機能では必要ありません。複数のプロパティを定義するには、セミコロンで区切られたリストを使用します。 |
| QueryPassthrough | このオプションは、クエリをAzure Synapse サーバーにas-is で渡します。 |
| Timeout | provider がタイムアウトエラーを返すまでにサーバーからの応答を待機する最大時間を秒単位で指定します。デフォルトは60秒です。タイムアウトを無効にするには0を設定します。 |
Configure the Date format.
The Date format can be customized by this property.
Expresses the client application's request to be directed either to a read-write or read-only version of an availability group database.
To use read-only routing, a client must use an application intent of read-only in the connection string when connecting to the availability group listener. Without the read-only application intent, connections to the availability group listener are directed to the database on the primary replica.
ApplicationIntent allows you to connect to a read-only secondary when connecting to an Availability Group Listener.
Determines whether transactions are enabled.
Determines whether transactions are enabled. When set to false, any operation that would involve a transaction is treated as a no-op. Serverless SQL pools do not support transactions, so this property is required to be false when working with tools that utilize transactions. Dedicated SQL pools do support transactions, so this option can be enabled if transaction support is required.
集計やGROUP BY を使用しないクエリで返される最大行数を指定します。
このプロパティは、集計やGROUP BY 句を含まないクエリに対してSync App が返す行数の上限を設定します。 この制限により、クエリがデフォルトで過度に大きな結果セットを返さないようにします。
クエリにLIMIT 句が含まれている場合、クエリで指定された値がMaxRows 設定よりも優先されます。 MaxRows が"-1" に設定されている場合、LIMIT 句が明示的にクエリに含まれていない限り、行の制限は行われません。
このプロパティは、非常に大きなデータセットを返す可能性のあるクエリを実行する際に、パフォーマンスを最適化し過剰なリソース消費を防ぐのに役立ちます。
特定のユースケースに対して追加の隠しプロパティを指定します。これらは通常のprovider の機能では必要ありません。複数のプロパティを定義するには、セミコロンで区切られたリストを使用します。
このプロパティは、シニアユーザーが特定のシナリオに対して隠しプロパティを設定できるようにします。 これらの設定は通常のユースケースには必要ありませんが、特定の要件に対応したり、追加の機能を提供したりすることができます。 複数のプロパティをセミコロン区切りのリストで定義できます。
Note: 特定のシナリオや問題に対処するためにサポートチームから助言があった場合にのみ、これらのプロパティを設定することを強く推奨します。
複数のプロパティをセミコロン区切りリストで指定します。
| DefaultColumnSize | データソースがメタデータにカラムの長さを提供しない場合に、文字列フィールドのデフォルトの長さを設定します。デフォルト値は2000です。 |
| ConvertDateTimeToGMT | 日時の値を、マシンのローカルタイムではなくGMT グリニッジ標準時に変換するかどうかを決定します。 |
| RecordToFile=filename | 基底のソケットデータ転送を指定のファイルに記録します。 |
このオプションは、クエリをAzure Synapse サーバーにas-is で渡します。
これが設定されていると、クエリはAzure Synapse に直接渡されます。
provider がタイムアウトエラーを返すまでにサーバーからの応答を待機する最大時間を秒単位で指定します。デフォルトは60秒です。タイムアウトを無効にするには0を設定します。
このプロパティは、Sync App が操作をキャンセルする前に操作の完了を待機する最大時間を秒単位で制御します。 操作の完了前にタイムアウト時間が経過すると、Sync App は操作をキャンセルして例外をスローします。
タイムアウトは、クエリや操作全体ではなくサーバーとの個々の通信に適用されます。 例えば、各ページング呼び出しがタイムアウト制限内に完了する場合、クエリは60秒を超えて実行を続けることができます。
このプロパティを0に設定するとタイムアウトが無効になり、操作が成功するか、サーバー側のタイムアウト、ネットワークの中断、またはサーバーのリソース制限などの他の条件で失敗するまで無期限に実行されます。 このプロパティは慎重に使用してください。長時間実行される操作がパフォーマンスを低下させたり、応答しなくなる可能性があるためです。