带有身份验证的Windows phone BackgroundTransferRequest

时间:2014-01-08 13:13:53

标签: c# asp.net-mvc-3 windows-phone-8 forms-authentication background-transfer

我想使用BackgroundTransferRequest对象下载一些大型文档,但我无法找到如何输入用户名和密码等凭据来访问文档。我有ASP.NET MVC 3控制器,它给我文档。

2 个答案:

答案 0 :(得分:0)

您只能下载可以使用GET请求获取的数据。保证某些“安全性”的唯一方法是让服务器接受URL中的用户名和密码作为GET参数。

答案 1 :(得分:0)

您应该能够使用基本的HTTP身份验证。我对BackgroundTransferRequest对象没有太多经验,但看起来它允许您设置请求标头。因此,对于基本的http auth,您需要添加标题“Authorization:Basic xxxxx”,其中xxxxx是base64编码的userid:password。您显然必须将IIS配置为使用MVC应用程序的基本身份验证

在URL中发送凭据是一个非常糟糕的主意,因为它们以明文形式传递。电话和Web服务器之间的每个基础架构都将查看并记录您的凭据。这些网络日志最有可能最终被Google编入索引。标头中的发送密码受SSL保护,假设您正在使用它。

即使在标题中发送密码也不理想,因为您必须将凭据存储在手机某处。如果手机不受信任,那么你就会在路上遇到问题。