获取登录用户';来自Java服务器的NT ID

获取登录用户';来自Java服务器的NT ID,java,spring,Java,Spring,我将在服务器上托管我的应用程序。我只想获取登录到我的应用程序的用户的NT ID。如果有人有答案,请分享 system.getremoteUser()和system.getProperty将返回托管计算机名。如果您对在Java中获取NT ID有明确要求,这可能会起作用 com.sun.security.auth.module.NTSystem NTSystem = new com.sun.security.auth.module.NTSystem(); System

我将在服务器上托管我的应用程序。我只想获取登录到我的应用程序的用户的NT ID。如果有人有答案,请分享


system.getremoteUser()
system.getProperty
将返回托管计算机名。

如果您对在
Java
中获取NT ID有明确要求,这可能会起作用

com.sun.security.auth.module.NTSystem NTSystem = new
            com.sun.security.auth.module.NTSystem();
    System.out.println(NTSystem.getName());
    System.out.println(NTSystem.getDomain());
    System.out.println(NTSystem.getUserSID());
但对于具有NTLM身份验证的webapplication上下文,也应该将NTLM(Windows)用户作为应用程序用户(这是一种常见情况)

在通过NTLM对用户进行身份验证时,最好查询NTLMRealm(在Tomcat中)或在上下文中存储用户标识(SID等)(这可以是基于会话的或特定的自定义服务器端实现)。现在,使用此上下文检索登录用户(SID、GroupID等)的NTLM属性