Usar descritores de implementação Java EE para definir funções de segurança ausentes

Esta regra sinaliza auth-constraint, elementos role-name localizados no arquivo WEB-INF/web.xml que possuem o elemento security-role correspondente ausente. O servidor Apache Tomcat não requer que o elemento security-role seja definido, mas a especificação Java EE indica que deve ser definido.

Este é um exemplo de auth-constraint, elementos role-name que seriam sinalizados:
<web-app>
...
<security-constraint>
<display-name>ThisConstraint</display-name>
<web-resource-collection>
<web-resource-name>adminResources</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
</web-resource-collection>
<auth-constraint>
<description>The admins</description>
<role-name>admin</role-name>
<role-name>superuser</role-name>
</auth-constraint>
</security-constraint>
</web-app>

Tanto as linhas <role-name>admin</role-name> como <role-name>superuser</role-name> seriam sinalizadas.

O scanner de origem contém uma correção rápida que inclui quaisquer elementos security-role ausentes.

Neste exemplo, a correção rápida incluiria os elementos a seguir no arquivo web.xml:
<security-role>
<role-name>admin</role-name>
</security-role>
<security-role>
<role-name>superuser</role-name>
</security-role>