任何可以使用 Microsoft Entra 身份验证连接到Azure SQL Database的库和应用程序也可以连接到Azure Data Explorer。 此功能可通过Azure Data Explorer的符合 TDS 的终结点实现,该终结点模拟Microsoft SQL Server。 终结点支持 TDS 版本 7.x 和 8.0。
使用SQL Server仿真,可以通过各种方法连接到Azure Data Explorer,包括 ODBC、JDBC 和 common apps,如 LINQPad。
身份验证
Azure Data Explorer需要通过Microsoft Entra ID进行身份验证。
若要对应用程序主体进行身份验证,需要在优化选项中包含租户 ID。 有关示例,请参阅使用 ODBC 进行连接。
可以在群集级别配置 Microsoft Entra 租户 ID,并且无需从客户端指定此 ID。 若要在群集级别更改租户 ID,请在 Azure portal 中打开支持请求,了解如何使用所需的租户 ID 配置 SecuritySettings.TdsEndpointDefaultAuthority。
优化选项
若要根据特定要求自定义Azure Data Explorer,可能需要提供标准SQL Server连接配置不支持的某些信息。
若要允许此类参数,Azure Data Explorer可将这些值输入到 TDS Language 和 Application 属性中。 建议尽可能使用 Language 属性。
支持的优化选项
下表描述了支持的优化选项。 若要了解如何使用这些选项,请参阅语法说明。
| 优化选项 | 说明 |
|---|---|
MaxStringSize |
Azure Data Explorer的默认行为是将字符串值视为 NVARCHAR(MAX)。 对于不太适合使用 NVARCHAR(MAX) 类型的应用程序,可以将数据强制转换为 NVARCHAR(n。 |
AadAuthority |
用于指定身份验证时所需的 Microsoft Entra 租户 ID。 |
语法
[ Language | Application ] =ExpectedArguments@TuningOptions
详细了解语法约定。
参数
| 客户 | 类型 | 必需 | 说明 |
|---|---|---|---|
| ExpectedArguments | string |
✔️ | TDS 中 Language 或 Application 字段的预期值。 |
| TuningOptions | string |
零个或多个以逗号分隔的受支持优化选项。 每个优化选项的格式必须为 TuningOptionNameTuningOptionValue。 |
示例
以下示例使用 Language 属性和 AadAuthority 优化选项指定 ODBC connection string 中的 Microsoft Entra 租户 ID。
Driver={ODBC Driver 17 for SQL Server};Server=myadxcluster.chinaeast2.kusto.chinacloudapi.cn;Database=mydatabase;Authentication=ActiveDirectoryServicePrincipal;Language=any@AadAuthority:57B489CD-590C-417F-A8B9-E75D2F9A04C8,MaxStringSize:5000;UID=A9BCAB99-8AAD-4411-A232-37E2116B935E;PWD=mysecret