【发布时间】:2017-06-30 09:45:29
【问题描述】:
我有带有 SSL 的 Azure 应用服务。
移动应用(Xamarin android、ios)通过 MobileServiceClient 使用服务 API。
MobileServiceClient 中没有添加证书的选项。
我用谷歌搜索了它,但没有用单个文档来解决这个问题。
MobileServiceClient如何实现SSL pinning?
【问题讨论】:
我有带有 SSL 的 Azure 应用服务。
移动应用(Xamarin android、ios)通过 MobileServiceClient 使用服务 API。
MobileServiceClient 中没有添加证书的选项。
我用谷歌搜索了它,但没有用单个文档来解决这个问题。
MobileServiceClient如何实现SSL pinning?
【问题讨论】:
正如您提到的,似乎不支持在 MobileServiceClient 中添加证书。
如果我们尝试这样做,根据我的理解,我们需要覆盖服务器端身份验证流程。更多细节请参考tutorial。我还找到了另一个与此相关的SO thread。 我们还需要覆盖客户端的 DelegatingHandler。
另外,这里有一些有用的教程:
Code sample AzureWebApiClientCertAuthSample
Azure App Service and Client Certificate Authentication
此外,我们还可以将我们的 feedback 提供给 Azure App 团队。
【讨论】:
我知道我参加这个聚会已经很晚了,但是对于其他人来说,我可以通过执行以下操作来添加客户端证书:
X509Certificate2 cert = GetCertificate();
HttpClientHandler httpClientHandler = new HttpClientHandler();
httpClientHandler.ClientCertificates.Add(cert);
client = new MobileServiceClient(Constants.ApplicationURL, httpClientHandler);
【讨论】: