【发布时间】:2014-06-16 12:06:09
【问题描述】:
这个问题和我觉得有点类似:What is the use of Default Issuer and Default Key in Windows Azure Service Bus? Does the key need to be secured?
我有一个 PC 应用程序,我想在其中访问“Azure 存储表”和“Azure 服务总线主题”。两者都通过使用“访问密钥”进行访问。 (这是 Microsoft 设计的。)现在访问密钥嵌入在我的 .NET 代码中。 我估计反编译 .NET 程序集、提取访问密钥并获得对存储和服务总线命名空间的完全访问权限大约需要 5 分钟。 如果我想阻止用户完全访问我的数据,我该如何保护它?
- 我可以构建一个非托管 dll 来代替 .NET 程序集吗?在这种情况下,需要 10 分钟才能中断。
- 我可以使用自定义密码加密访问密钥并存储在磁盘或云中。在这种情况下,假设用户可以访问自定义密码,反编译和破解仍然需要大约 10 分钟。
- 我可以为所有用户创建单独的存储帐户。这样,如果一个帐户(被用户)泄露,他将只能访问自己的帐户。但是,这可以防止诸如“共享系统数据”之类的概念。而且我不确定我是否有无限数量的存储帐户。 (现在我的门户中显示最多 20 个。)
- 我可以混淆 .NET 程序集吗?不过,我非常不喜欢混淆 .NET 程序集。它通常会带来很多额外的问题。而且我猜您仍然可以通过内存调试器提取密钥。
您通常如何保护这种“系统帐户访问”?
【问题讨论】:
标签: .net azure azureservicebus azure-storage