【发布时间】:2013-07-30 04:37:46
【问题描述】:
我想将端口号映射到用户(正在运行绑定到端口的进程的 Linux 用户)。 我怎么能在java中做到这一点?
我知道我可以进入 shell 并运行 bash 命令,将端口映射到 PID,然后将 PID 映射到用户,但如果可以的话,我想将其保留在 java 中。
更一般的问题是:我有一个从 localhost 接收请求的 webapp 应用程序,我想知道哪个本地用户执行了 HttpServletRequest,因此我可以为其附加适当的权限。
背景:
我正在为所有远程连接使用 Spring Security。但是,我有一小部分应用程序(与 webapp 分离)在本地与应用程序服务器一起运行,并且该应用程序使用 linux 用户机制进行身份验证。因此,出于这个原因,我绕过了 localhost 的服务器身份验证规则(假设允许所有 localhost 访问)。问题在于授权 - 我需要识别运行 localhost 请求的用户。知道如何实现这一目标吗?
【问题讨论】:
标签: java web-applications localhost port