【问题标题】:SkyDrive as patcher storage serverSkyDrive 作为修补程序存储服务器
【发布时间】:2012-04-26 03:12:53
【问题描述】:

最近,我们开始了一个相当大的项目(C# XNA 游戏)。
将所有文件存储在远程服务器中,使用数据库存储文件“版本”并让修补程序下载较新版本并删除任何过时的文件,这似乎是一个非常明显的解决方案。
现在理论上这一切都很好,我们甚至找到了一个有空间的服务(SkyDrive 提供 25GB 的报价)。 当涉及到文件操作时,问题就出现了。

我们正在寻找:

  • 可以以编程方式将文件下载/上传到 SkyDrive 或从 SkyDrive 上传。
  • 具有包含 uname/pass 的安全方式。

请允许我解释一下。

问题是,我们必须在我的个人帐户上制作 SkyDrive(因为 25gb 优惠仅适用于老用户)。我对有人获得我的密码不太满意,即使我显然会将其更改为完全过时的东西,但他们仍然可以访问我的大多数其他 hotmail/msn 相关内容。 (我想这是重新制作这一切的理由吗?)。因此,如果可能的话,我会确保程序中的实际 uname/pass 安全。因为它是.NET 并且是按需编译的(并且可以很容易地被反编译),所以我怀疑在这种情况下真正的安全性是不可能的(如果可以确保安全,请告诉我如何)。

除此之外,没有高效且官方的 SkyDrive API。这意味着存在更大的安全漏洞(参见上一段),并且通信不一定按预期工作)。这也意味着通信可能会很慢 - 如果您有 1000 个用户下载同一个文件,那就很糟糕了。

所以要制定所有这些:

考虑到它已链接到我的个人帐户,(读取 API) 使用 SkyDrive 作为修补程序的存储服务器的正确方法是什么?

小旁注,如果必须的话,我可以是邪恶的,让我们的慢艺术家来托管服务器

编辑 1:
我们的想法是让任何人都能够下载客户端,但启动任何东西都需要我们数据库上的活动帐户。因此,每个人都可以阅读文件本身并没有问题。因此,我将添加以下内容:如果文件是公开的,如何以编程方式从 SkyDrive 直接下载?当前链接指向他们的 Web UI。我的意思是以编程方式(可能在上传期间)以避免手动完成所有操作。

【问题讨论】:

  • 这是一个坏主意。您无法在分布式程序中保护您的密码。
  • 从技术上讲,数据库连接的工作方式类似。我会“作废”该帐户并转移到一个新帐户。
  • Here is the API for accessing SkyDrive contentSkyCmd 是一个使用它的示例程序。

标签: c# .net networking patch onedrive


【解决方案1】:
  1. 这是个坏主意。

给定 #1:

  1. 使用公用文件夹来存储您的资产并授予每个人访问它的权限
  2. 使用 httpclient 在您的修补程序客户端中匿名下载公用文件夹中的文件
  3. 使用 SkyDrive 桌面客户端从“构建”计算机同步公用文件夹

【讨论】:

  • 好的,所以公共链接直接下载。对吗?
  • skydrive 公共 url 不是直接下载,但是您可以使用此处提供的算法将公共 url 转换为直接下载:bit.ly/IG2eiK
猜你喜欢
  • 1970-01-01
  • 2018-11-09
  • 2010-09-21
  • 1970-01-01
  • 1970-01-01
  • 2016-11-25
  • 2018-11-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多