我想在我的用户运行我的 JSF 脚本时检索他们的 Windows 登录名。目标是避免向我的用户询问登录信息,只想让 Windows 登录抛出请求。
我试试这个如何获取请求头、远程地址和其他 HttpServletRequest 特定的信息?但我总是用 externalContext.getRemoteUser() 得到一个空字符串。
这是否意味着网络浏览器不发送远程用户信息?我必须更改浏览器的配置吗?是否有可能获得这些信息?
谢谢,
菲利普
我想在我的用户运行我的 JSF 脚本时检索他们的 Windows 登录名。目标是避免向我的用户询问登录信息,只想让 Windows 登录抛出请求。
我试试这个如何获取请求头、远程地址和其他 HttpServletRequest 特定的信息?但我总是用 externalContext.getRemoteUser() 得到一个空字符串。
这是否意味着网络浏览器不发送远程用户信息?我必须更改浏览器的配置吗?是否有可能获得这些信息?
谢谢,
菲利普
Spring security kerberos 插件将很好地实现这一点,但您将把 spring 框架作为依赖项。我在这里还假设您正在运行一个托管安全企业,您的用户在其中对域进行身份验证。
您想要实现的目标无法通过纯 Java EE 规范完成(有人证明并非如此)。该getRemoteUser
方法的目的是检索已通过 Webapp 容器或第三方 Web auth 框架进行身份验证的已验证用户的用户名。请参阅此处的规格
请参阅此答案以获取更多信息