在ruby项目中添加其他语言文件的最佳实践

时间:2013-03-25 06:53:50

标签: ruby jar gem

我有一个纯粹用红宝石写的ruby项目。现在我想要包含一个java archive(jar)文件,该文件具有我的用户想要的一些功能。将文件放在其中一个目录中并捆绑为gem是一件好事吗?有没有与此相关的安全问题?任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:1)

答案是它取决于用例。

如果这是一个宝石,用户将纯粹用于他们自己的目的,并且它不是通过网络广播,那么安全问题相当小 - 它们将更多地与系统安全性相关。

如果您的程序的一部分涉及绑定到端口并接受TCP / UDP连接,那么您必须真正开始考虑网络安全性。另一个可能的问题是,如果您正在为非特权用户提供文件系统访问权限(例如,如果这是一个rails gem,并且JAR提供了操作文件系统的功能,并且由于某种原因您将其传递给站点用户 - 有点愚蠢的例子,但我希望你能看到我得到的东西。)

然而,至于运行java JAR文件,除非存在特定JAR的已知安全漏洞,否则没有任何天生的不安全感。

最后,它取决于gem的最终用户。明确宝石的作用,他们可以决定是否要使用宝石。