java - 如何使用 Java web 服务器实现 "privilege separation"的一些度量?

标签 java ssl jetty privileges

我正在努力主动解决我的 Jetty 网络服务器盒的安全问题——尤其是在存储 SSL key 信息方面,尽管我想要一个通用的解决方案。 Apache 使用 privilege separation以便它以 root 身份启动,以便它可以读取 protected SSL key 文件(和其他安全配置),然后切换到一些普通用户以实际服务器 HTTP 请求。但是 Java 没有执行此操作的机制。

关于如何在 Java 网络应用程序中实现相同级别的安全性有什么建议吗?我的要求包括:

  • secret 信息只能由 root 读取。

  • 任何解锁 key 等的密码都不应配置到代码中,以免与服务器具有相同用户级别权限的人无法轻易获得它们。

  • 我在 Amazon EC2 下运行,所以我希望安全性尽可能自动化——即运算符(operator)无需输入交互式密码。

一种可能性是使用 ~LDAP 将 secret 信息与应用程序分开,并且只将 LDAP 访问用户名/密码烘焙到应用程序中。但我正在寻找更好的解决方案。

感谢您提供任何信息。

编辑:

我希望解决方案涵盖 SSL 但考虑到我想限制访问的其他 secret 。我在最初的帖子中没有说清楚。

最佳答案

您描述的 Apache 技术由可选的 jetty-setuid 功能提供。

参见 http://www.eclipse.org/jetty/documentation/current/setuid.html

关于java - 如何使用 Java web 服务器实现 "privilege separation"的一些度量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16071578/

相关文章:

macos - mvn无法安装Jetty

java - Jetty 重启时执行 "generate-resources"构建阶段?

java - 使用哪个平台可以实现最快的 Neo4j 图遍历?

java - 捕获数组异常

java - java注释如何与spring一起工作,它们是在运行时还是在启动时扫描的?

java - 在客户端上使用 ftp4j 忽略 CentOS 上的自签名 ssl 证书

GitLab SSL Read error, decryption failed or bad record mac

java - 如何在 aws linux 机器上为 tomcat 服务器安装 ssl 证书

java - 对于 Java 中的每个循环都有字数

java - 集成 Atmosphere(版本 1.0.13)所需的 java/scala 配置是什么?