【问题标题】:Configuring an exception in web.xml security-constraint在 web.xml 安全约束中配置异常
【发布时间】:2017-10-13 11:34:56
【问题描述】:

我知道已经有其他类似我的疑问的帖子,但问题是我无法解决问题。 我有一个必须用名称“passport.jsp”映射的 servlet,因为外部应用程序(不能更改调用)通过 URL http://myipserver:portserver/nameApplication/passport.jsp?xxx 发出请求 我的 web.xml 在这里:

<servlet-mapping>
    <servlet-name>PortalServlet</servlet-name>
    <url-pattern>/passport.jsp</url-pattern>
</servlet-mapping>

问题是我的安全约束的映射覆盖了servlet passport.jsp的定义,因为是映射“*.jsp”。

<security-constraint>
    <display-name>EsconderJSP</display-name>
    <web-resource-collection>
        <web-resource-name>JSP</web-resource-name>
        <description/>
        <url-pattern>*.jsp</url-pattern>
        <http-method>GET</http-method>
        <http-method>POST</http-method>
    </web-resource-collection>
    <auth-constraint>
        <description/>
        <role-name>jsps</role-name>
    </auth-constraint>
</security-constraint>

有谁知道如何解决这个问题?您可以将 servlet“/passport.jsp”添加为例外。

感谢您的关注。

【问题讨论】:

    标签: java tomcat servlets web.xml security-constraint


    【解决方案1】:

    我解决了在我的 web.xml 中添加一个新标签(其他安全约束)

    <security-constraint>
        <web-resource-collection>
            <web-resource-name>free pages</web-resource-name>
            <url-pattern>/passport.jsp</url-pattern>
        </web-resource-collection>
    </security-constraint>
    

    安它正在工作。谢谢

    【讨论】:

      【解决方案2】:

      您可以在其上方添加另一个没有保护的安全约束

      <security-constraint>
          <web-resource-collection>
              <url-pattern>/passport.jsp</url-pattern>
          </web-resource-collection>
          <auth-constraint>
              <role-name>*</role-name>
          </auth-constraint>
          <user-data-constraint>
              <transport-guarantee>NONE</transport-guarantee>
          </user-data-constraint>
      </security-constraint>
      

      或者您可以更改应用程序请求以从不同的受保护内容开始。这将使护照申请不受保护。

      http://myipserver:portserver/nameApplication/otherRequests/foobar.jsp
      
      http://myipserver:portserver/nameApplication/passport.jsp
      

      那就只保护/otherRequests/*

      <url-pattern>/otherRequests/*</url-pattern>
      

      【讨论】:

      • 嗨!感谢您的关注。我用你的小费解决了我的问题。我把 free pages/passport.jsp资源集合>
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-18
      • 2012-11-23
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 2015-08-07
      相关资源
      最近更新 更多