Roles en Tomcat
Hola a todos.
Configuré varios roles en Tomcat, para varias urls, y encontré un problema: Todos los roles tienen acceso a todas las urls. ¿Alguien sabe como se deben configurar los roles y la autentificación para que esto no pase?
Configuré varios roles en Tomcat, para varias urls, y encontré un problema: Todos los roles tienen acceso a todas las urls. ¿Alguien sabe como se deben configurar los roles y la autentificación para que esto no pase?
tienes que definir en el web-inf de la aplicacion que roles podran entrar i en que urls lo podran hacer:
<!--
Autentificación
-->
<security-constraint>
<!--
Con tantos elementos web-resource-collection
como nos hagan falta vamos indicando las distintas
zonas.
-->
<web-resource-collection>
<web-resource-name>Nombre de la zona</web-resource-name>
<!--
Con url-pattern indicamos que ficheros o directorios
estan protegidos.
Podemos poner tantos elementos url-pattern como necesitemos.
-->
<url-pattern>/*</url-pattern>
<!--
Ahora indicamos los metodos por los que no se
puede acceder
-->
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<!--
Lo siguiente es indicar que roles tienen permitido
el acceso, en nuestro caso solo el administrador.
Tantos _role-name_ como necesitemos.
-->
<auth-constraint>
<role-name>admin</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Autentificacion requerida</realm-name>
</login-config>
Todo esto entre los tags <web-app>.
Espero que te sirva de algo.
<!--
Autentificación
-->
<security-constraint>
<!--
Con tantos elementos web-resource-collection
como nos hagan falta vamos indicando las distintas
zonas.
-->
<web-resource-collection>
<web-resource-name>Nombre de la zona</web-resource-name>
<!--
Con url-pattern indicamos que ficheros o directorios
estan protegidos.
Podemos poner tantos elementos url-pattern como necesitemos.
-->
<url-pattern>/*</url-pattern>
<!--
Ahora indicamos los metodos por los que no se
puede acceder
-->
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<!--
Lo siguiente es indicar que roles tienen permitido
el acceso, en nuestro caso solo el administrador.
Tantos _role-name_ como necesitemos.
-->
<auth-constraint>
<role-name>admin</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Autentificacion requerida</realm-name>
</login-config>
Todo esto entre los tags <web-app>.
Espero que te sirva de algo.
