Uploaded image for project: 'Application Server 3  4  5 and 6'
  1. Application Server 3 4 5 and 6
  2. JBAS-1824

JACC: <role-name>*</role-name> in web.xml should allow configurable authorization bypass

XMLWordPrintable

    • Icon: Feature Request Feature Request
    • Resolution: Done
    • Icon: Major Major
    • JBossAS-4.2.0.CR1
    • JBossAS-4.0.2 Final
    • Security
    • None
    • Medium

      In some cases I wish to do authentication without authorisation. For example everybody has access to my web-resource, but I want to know who she/he is.
      Therefore the accessing user must login.

      So my web.xml contains the following snippet:
      ...
      <security-constraint>
      <web-resource-collection>
      <web-resource-name>Protected Helloworld example</web-resource-name>
      <description/>
      <url-pattern>/servlet/HelloWorldExample</url-pattern>
      <http-method>POST</http-method>
      <http-method>GET</http-method>
      </web-resource-collection>
      <auth-constraint>
      <role-name>*</role-name>
      </auth-constraint>
      </security-constraint>

      <login-config>
      <auth-method>BASIC</auth-method>
      <realm-name>public</realm-name>
      </login-config>
      ...

      The web app runs with this configuration in Tomcat 5.5.8 standalone but not in Jboss.
      To run it in Jboss I have to add the following element:

      <security-role>
      <role-name>aRole</role-name>
      </security-role>

      The JACC spec (section 3.1.3.1, paragraph 3)states :
      " ?. When an auth-constraint names the reserved role-name, "*", all of the patterns in the containing security-constraint must be combined with all of the roles defined in the web application."

      JBoss implemented this by combining all of the patterns with all roles defined in the web.xml and assumes that each role has to be defined in the web.xml.

      But the web applications roles are probably defined in other files than the web.xml. In our case we use JACC with an external authentication provider. And each time, the roles changes, I also would have to modify the web.xml.

      It is desirable if the auth-contraint with the role-name "*" acceppts "all" roles and not only those that are defined in the web.xml.

      Or is this a JACC spec issue?

      Regards,
      Andrea

              anil.saldhana Anil Saldanha (Inactive)
              wv-javacoder Roland Räz (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Estimated:
                  Original Estimate - 4 hours
                  4h
                  Remaining:
                  Remaining Estimate - 4 hours
                  4h
                  Logged:
                  Time Spent - Not Specified
                  Not Specified