1 / 15

Control de acceso en Java EE

Control de acceso en Java EE. Seguridad en Java. Java incluye mecanismos de seguridad con distintas finalidades: Controlar los recursos a los que pueden acceder programas Java ( applets , etc.) Asegurar la seguridad en las comunicaciones. Seguridad en Java EE.

tejana
Télécharger la présentation

Control de acceso en Java EE

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Control de acceso en Java EE

  2. Seguridad en Java • Java incluye mecanismos de seguridad con distintas finalidades: • Controlar los recursos a los que pueden acceder programas Java (applets, etc.) • Asegurar la seguridad en las comunicaciones

  3. Seguridad en Java EE • Java EE también incluye mecanismos de seguridad para controlar el acceso de los usuarios a las aplicaciones web. Estos mecanismos incluyen a algunos de los anteriores

  4. Control de acceso en Java EE • Cualquier componente web (servleto página JSP) o EJB puede limitar los usuarios que pueden acceder a la misma • Java EE incluye clases y mecanismos (anotaciones, etc.) para simplificar la implementación del control de acceso de usuarios

  5. Control de acceso en Java EE, II • El control de acceso se puede realizar por diversos procedimientos: usuario y clave, certificado digital, directorio de nombres, etc. • Cuando una componente web especifica limitaciones de acceso mediante usuario y clave y un usuario intenta acceder a ella, la aplicación web correspondiente muestra en primer lugar un formulario o ventana de diálogo que le solicita los datos requeridos. Si los datos son correctos, le permite el acceso; en caso contrario, le muestra una ventana o formulario de error.

  6. Los servidores Java EE incluyen mecanismos para la definición de dominios de autentificación de distintos tipos (mediante certificado, comprobación de nombre de usuario y clave en un fichero o en una base de datos, etc.)

  7. Para especificar el control de acceso en una aplicación Java EE es preciso hacer dos cosas: • Incluir en un dominio de seguridad del servidor la información referente a los grupos de usuarios (identificador, contraseña, roles, etc.) • Incluir en las componentes web y EJBs apropiadas anotaciones que determinen sus limitaciones de acceso, o bien incluir la información correspondiente en el fichero web.xml

  8. Una aplicación sencilla con limitación de acceso tiene las siguientes características: • Los servlets con limitaciones de acceso se anotan mediante @ServletSecurity( @HttpConstraint( rolesAllowed={…}, transportGuarantee=“…”)) (transportGuarantee puede ser CONFIDENTIAL o NONE)

  9. … tiene las siguientes características: • El fichero web.xml indica los roles existentes: <security-role> <role-name>coordinador</role-name> </security-role> <security-role> <role-name>tecnico</role-name> </security-role>

  10. … tiene las siguientes características: • El servidor tiene activado el dominio de seguridad (realm) file y registrados los usuarios, con su grupo y contraseña correspondientes • El servidor tiene configurada la seguridad con asignación por defecto de principal a rol (default principal to role mapping) Lo anterior evita tener que definir a qué rol de la aplicación corresponde cada grupo de usuarios del servidor

  11. Extensiones y variaciones: • Se puede utilizar un formulario en lugar de la ventana de diálogo por defecto para la autentificación • …

  12. <login-config> <auth-method>FORM</auth-method> <realm-name>file</realm-name> <form-login-config> <form-login-page>/login.xhtml</form-login-page> <form-error-page>/error.xhtml</form-error-page> </form-login-config> </login-config>

  13. Extensiones y variaciones: • … • Se pueden especificar los roles y el tipo de transporte en el fichero web.xml en lugar de utilizar anotaciones

  14. <security-constraint> <web-resource-collection> <web-resource-name>retail</web-resource-name> <url-pattern>/acme/retail/*</url-pattern> <http-method>GET</http-method> <http-method>POST</http-method> </web-resource-collection> …

  15. <auth-constraint> <role-name>CLIENT</role-name> </auth-constraint> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint>

More Related