2

对于本地分析服务(参考https://docs.microsoft.com/en-us/sql/analysis-services/instances/configure-http-access-to-analysis-services-on-iis-8-0)可以配置 http 端点(可用于实现自定义身份验证)。有没有办法为 azure 版本的分析服务公开 http 端点?

我尝试使用 msmdpump.ini,但得到的只是各种错误。

更新 查看反射Microsoft.AnalysisServices.AdomdClient.dll- 天蓝色端点实际上是 http 端点。沟通是这样的:

POST https://[yourregion].asazure.windows.net/webapi/clusterResolve
{"serverName":"your_as_server_name"}

回复:

{"clusterFQDN":"[prefix]-[yourregion].asazure.windows.net",
 "coreServerName":"your_as_server_name",
  "tenantId":"... tenantID"}

接着

POST https://[prefix]-[yourregion].asazure.windows.net/webapi/xmla
Authorization: Bearer your_azure_ad_jwt_here
x-ms-xmlaserver: your_as_server_name
// xmla request inside the body

所以理论上应该能够利用它来创建一个http代理。然而,这些都没有记录/官方支持。

4

1 回答 1

1

我尝试了这个并使其适用于 Execute 的情况(您可以对大多数任务使用 Execute + Statement)对于第二个请求,您需要另外三个标头(不确定 User-Agent):

User-Agent: XmlaClient
SOAPAction: urn:schemas-microsoft-com:xml-analysis:Execute
x-ms-xmlacaps-negotiation-flags: 1,0,0,0,0
于 2019-06-19T01:14:32.970 回答