我想把我的webapp从cloudfoundry迁移到heroku。但还有一件事让我感到困惑。
每次你想把你的应用程序部署到heroku上,你必须把你的源代码推到他们的git库中。这个存储库有多安全?如果我不想把我的源代码交给别人怎么办?
你对此有何看法?
发布于 2012-06-20 18:24:22
问题所在
您不了解解释型语言或托管提供商是如何工作的。如果您使用的是像Ruby这样的解释型语言,则需要在服务平台上提供源代码。即使您的代码是压缩的、混淆的或字节编译的,它也必须在服务平台上提供服务,所以这对于任何语言或托管提供商都是一个问题。
您还没有理解字节码的本质。一个字节码解释器可以读取你的文件。此外,还有一些Java反编译器可以将字节码转换回源代码。搜索堆栈溢出将向您显示posts discussing Java decompilers。除非您认为“通过模糊实现安全性”是有用的,否则您应该停止以任何有意义的方式将字节码视为安全的想法。
解决方案
Herku上的Git存储库并不像你在GitHub上找到的那样是公共存储库。它的“安全性”丝毫不亚于通过任何其他方式传输文件,当然也比许多服务平台上常见的FTP上传更安全。
安全性始终是一种权衡。这当然很重要,但除非你定义了一个比一般不信任更好的威胁模型,否则你将无法开发出足够的控制。
发布于 2012-06-21 16:48:52
那得看情况
要衡量“安全”,你必须考虑可能的“风险”。从这样一个平台上窃取源代码的调查值得吗?那么,人们能从你的源代码中获得多少价值呢?
我认为没有人会仅仅通过窃取源代码来获得真正的成功。这更多的是关于窃取想法。维护和扩展你没有写过的代码是很困难的。您需要时间熟悉源代码(月/年,取决于代码库)。失去了所有的时间和精力。学得更快的专家也可以从头开始,也许他们会得到更好的结果。
但是,如果几个单一的技术算法是您的核心业务(密码软件、图形驱动算法等)而且它们很容易被采用,所以可能值得去偷它。
数据与代码
您可以担心的事情:在哪里存储敏感的客户信息?大多数人对出售电子邮件地址、电话号码、姓名、关于你的企业和客户的财务信息有更大的兴趣。但是..。如果你没有足够的合理数据,你就没有兴趣。那么,您的应用程序是否包含1亿个Sony Network信用卡帐户?;)
好吧,如果应用程序包含了IPhone 5和6的所有蓝图、数据、秘密想法和设计,这可能也很有趣。
发布于 2012-06-20 16:56:02
您正在使用某人的服务来运行您的应用程序。无论你使用什么服务,如果不把你的代码交给他们,就不可能做到这一点。即使您忘记了云,并托管您自己的服务器,它仍将掌握在运行您的数据中心的人员手中。
https://stackoverflow.com/questions/11115918
复制相似问题