本文内容
适用于:✅Azure 数据资源管理器
UI 深层链接是指在 Web 浏览器中打开时会通过预先选择所需的 Kusto 群集和(可选)数据库来自动打开 UI 工具(如 Kusto.Explorer 或 Kusto.WebExplorer)的 URI。
例如,当用户选择 https://help.chinaeast2.kusto.chinacloudapi.cn/Samples?query=print%20123 时,Kusto.WebExplorer 将打开到 help.chinaeast2.kusto.chinacloudapi.cn
群集,选择 Samples
数据库作为默认数据库,然后运行关联的查询。
UI 深层链接的工作方式是:让用户浏览器在向 URI 发出 GET 请求时接收重定向响应,然后根据浏览器设置来允许对此重定向进行处理。 (例如,指向 Kusto.Explorer 的 UI 深层链接要求将浏览器配置为允许启动 ClickOnce 应用程序。)
UI 深层链接必须是有效的 URI,并且具有以下格式:
https://
Cluster /
[DatabaseName] [?
Parameters]
其中:
Cluster 是群集自身的基址。 此部分是必需的,但可以通过在 Parameters 中指定查询参数
uri
进行替代。DatabaseName 是 Cluster 中要用作作用域内数据库的数据库的名称。 如果未设置此属性,该 UI 工具决定使用哪个数据库(如果有)。 (如果查询或命令是由 Parameters 指定的,建议在 URI 中包含 DatabaseName 的正确值。)
Parameters 可用于指定其他参数以控制 UI 深层链接的行为。 下表显示了所有 Kusto“官方”UI 工具支持的参数。 本文档稍后将介绍特定于工具的参数。
参数 描述 web
选择 UI 工具。 默认情况下,设置为 1
时,将使用 Kusto.WebExplorer。 如果设置为0
,将使用 Kusto.Explorer。 若设置为3
,则将使用没有预先存在的选项卡的 Kusto.WebExplorer。query
打开 UI 工具时将启动的查询或管理命令的文本。 querysrc
指向 Web 资源的 URI,该 Web 资源包含打开 UI 工具时将启动的查询或管理命令的文本。 name
连接群集的连接名称。 autorun
如果设置为 false
,则要求用户主动运行查询,而不是在单击链接时自动运行查询。query
的值可以使用标准的 HTTP 查询参数编码。 此外,还可以使用转换base64(gzip(text))
对其进行编码,从而按浏览器默认 URI 长度限制将长查询或管理命令压缩到 Git。
下面是一些链接示例:
https://help.chinaeast2.kusto.chinacloudapi.cn/
:当用户代理(如浏览器)发出GET /
请求时,该请求会被重定向到已配置的用来查询help
群集的默认 UI 工具。https://help.chinaeast2.kusto.chinacloudapi.cn/Samples
:当用户代理(如浏览器)发出GET /Samples
请求时,该请求会被重定向到已配置的用来查询help
群集Samples
数据库的默认 UI 工具。http://help.chinaeast2.kusto.chinacloudapi.cn/Samples?query=StormEvents
:当用户(如浏览器)发出GET /Samples?query=StormEvents
请求时,该请求会被重定向到已配置的用来查询help
群集Samples
数据库的默认 UI 工具,并发出StormEvents
查询。
备注
深层链接 URI 不需要进行身份验证,因为身份验证由用于重定向的 UI 工具执行。
任何 Authorization
HTTP 标头(如果已提供)都会被忽略。
重要
出于安全原因,UI 工具不会自动执行管理命令,即使在深层链接中指定了 query
或 querysrc
也是如此。
此 REST API 会执行重定向操作,该操作使用专门设计的启动参数(这些参数可打开与特定群集的连接并对该群集执行查询)来安装和运行 Kusto.Explorer 桌面客户端工具。
有关用于启动 Kusto.Explorer 的重定向 URI 语法的说明,请参阅与 Kusto.Explorer 的深层链接。
除了已提到的查询参数外,以下参数可能会显示在指向 Kusto.WebExplorer 的 UI 深层链接中:
参数 | 说明 |
---|---|
login_hint |
设置用户的用户登录名(电子邮件)。 |
tenant |
设置用户的 Microsoft Entra 租户 ID。 |
若要指示 Kusto.WebExplorer 将另一个 Microsoft Entra 租户中的用户登录,请指定用户的 login_hint
和 tenant
。
重定向指向以下 URI:
https://
BaseAddress /clusters/
Cluster [/databases/
DatabaseName] [?
Parameters]
当指定了 URI 查询字符串参数 query
时,必须根据 URI 查询字符串编码 HTML 规则对其进行编码。 也可通过 gzip 压缩查询或管理命令的文本,然后通过 base64 编码对其进行编码。 利用此功能,可以发送更长的查询或控制命令(因为后一种编码方法会生成较短的 URI)。
如果查询或管理命令很长,则即使使用 gzip/base64 对其进行编码,也仍可能会超过用户代理的最大 URI 长度。 也可提供 URI 查询字符串参数 querysrc
,其值是一个短 URI,指向保存查询或管理命令文本的 Web 资源。
例如,此值可以是 Azure Blob 存储所承载的文件的 URI。
备注
如果深层链接指向 Web 应用程序 UI 工具,则必须将提供查询或管理命令的 Web 服务(即提供 querysrc
URI 的服务)配置为支持将 CORS 用于 dataexplorer.azure.cn
。
此外,如果该服务需要身份验证/授权信息,则必须将其作为 URI 本身的一部分提供。
例如,如果 querysrc
指向 Azure Blob 存储中的 blob,则必须将存储帐户配置为支持 CORS,并使 blob 本身成为公共的(这样就可以在没有安全声明的情况下下载它),或将相应的 Azure 存储 SAS 添加到 URI。 可通过 Azure 门户或 Azure 存储资源管理器执行 CORS 配置。
请参阅 Azure 存储中的 CORS 支持。