Websphere-httpRequest.getRemoteUser()返回NULL

Websphere-httpRequest.getRemoteUser()返回NULL,websphere,httprequest,Websphere,Httprequest,我使用WAS8.0和虚拟成员管理器作为身份验证机制。问题是httpRequest.getRemoteUser总是返回null,即使我成功登录 我检查我是否成功登录了名为Snoop的默认应用程序 下面给出了详细的问题描述和答案 我应用了给定的解决方案,这意味着在WAS控制台中启用了应用程序安全性。但它仍然返回NULL。知道为什么吗 Web.xml: 您需要将web.xml添加到问题中。唯一的原因可能是您正在访问未受保护的页面,并且未设置使身份验证数据在未受保护的页面上可用的设置,或者使用某些自定义

我使用WAS8.0和虚拟成员管理器作为身份验证机制。问题是httpRequest.getRemoteUser总是返回null,即使我成功登录

我检查我是否成功登录了名为Snoop的默认应用程序

下面给出了详细的问题描述和答案

我应用了给定的解决方案,这意味着在WAS控制台中启用了应用程序安全性。但它仍然返回NULL。知道为什么吗

Web.xml:


您需要将web.xml添加到问题中。唯一的原因可能是您正在访问未受保护的页面,并且未设置使身份验证数据在未受保护的页面上可用的设置,或者使用某些自定义登录机制,这无法正确设置身份验证数据。我假设您在启用应用程序安全性后重新启动了服务器。Gas,我根据您的评论编辑了我的问题。是的,我使用的是一种自定义登录机制,即Virtual Member Manager VMM。我正在使用名为Snoop的默认应用程序来测试我的身份验证机制,它可以工作,并显示远程用户名是什么,例如:admin。最后一个问题是肯定的。服务器已重新启动。因此,如果这是完整的web.xml,则您的应用程序没有任何安全约束,因此它不受保护,这就是为什么会出现NULL。寻找一些关于如何定义元素以保护应用程序的其他问题。是的,这是完整的web.xml。我不认为这是关于安全建设的。因为当我在Linux服务器上部署应用程序时,它会按预期工作。使用相同的web.xml创建相同的项目。然而,这在当地并不奏效。也许彪马API可以在那里提供帮助?与WPS使用,这是工作
  <web-app xmlns="http://java.sun.com/xml/ns/javaee" version="2.5">
    <servlet>
       <servlet-name>RecordPersonaServlet</servlet-name>
       <servlet-class>com.persona.recordPersonaServlet</servlet-class>
    </servlet>
    <servlet-mapping>
       <servlet-name>RecordPersonaServlet</servlet-name>
       <url-pattern>/persona/*</url-pattern>
    </servlet-mapping>
  </web-app>