我用IIS和mututal SSL配置了一个本地SSAS-server。
通过浏览器连接到https://127.0.0.1/OLAP/msmdpump.dll与客户端证书工作正常。
但我觉得那个工具
- 电子表格
- 表
- 功率BI
- SQL Server管理工作室
可以提供连接到服务器的客户端证书。
所以我尝试了最"原始"的方法:使用Microsoft.AnalysisServices.AdomdClient.NetCore.retail.amd64/19.55.3.1
的一个小. net-core7项目
AdomdConnection conn = new AdomdConnection("DataSource=https://127.0.0.1/OLAP/msmdpump.dll;Catalog=Analysis Services Tutorial"))
conn.Open();
效应
---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 403 (Forbidden).
at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
at Microsoft.AnalysisServices.AdomdClient.HttpStream.HttpChannelController.GetResponseMessageImpl(HttpStream owner, Object context, Task`1 pendingResponse)
at Microsoft.AnalysisServices.AdomdClient.HttpStream.HttpChannelController.CompleteHttpClientBasedOperation(HttpStream owner, Object context, Task`1 pendingResponse)
at Microsoft.AnalysisServices.AdomdClient.HttpStream.HttpXmlaOperation.HttpClientOperationManager.GetResponse(HttpXmlaOperation operation)
at Microsoft.AnalysisServices.AdomdClient.HttpStream.LegacyController.HttpClientXmlaOperation.GetResponseImpl()
at Microsoft.AnalysisServices.AdomdClient.HttpStream.HttpXmlaOperation.EnsureCanRead()
at Microsoft.AnalysisServices.AdomdClient.HttpStream.LegacyController.LegacyXmlaOperation.EnsureCanRead()
at Microsoft.AnalysisServices.AdomdClient.HttpStream.HttpXmlaOperation.GetResponseDataType()
at Microsoft.AnalysisServices.AdomdClient.HttpStream.GetResponseDataType()
此时,我没有看到任何操作httpSteam
/httpClient
的方法,因此我可以添加一个要在连接中使用的客户端证书。
关于MutualSSL<->SSAS
-配置,您有什么想法或示例吗?
1条答案
按热度按时间tcomlyy61#
SSAS客户端支持NTLM、Kerberos和(仅在使用数据泵时)HTTP基本身份验证。在连接到Azure Analysis Services和Power BI时,它们还支持Azure Active Directory身份验证,但不支持SSAS。AAS/PBI和SSAS之间存在XMLA协议差异。
因此,唯一真实的的可扩展点是让客户机使用HTTP Basic,并将Windows用户名/密码以外的内容传递给某种HTTP代理。
下面是一个老的例子:SSASProxy Custom HTTP Security Sample