Skip to main content

Integración Tomcat

Válvula de agente JOSSO para Apache Tomcat

Descripción General

El agente JOSSO para Tomcat utiliza un componente Valve personalizado para proporcionar inicio de sesión único para aplicaciones implementadas en Apache Tomcat. Se integra a nivel de contenedor, proporcionando autenticación transparente para todas las aplicaciones web.

Válvula Tomcat
SSO a nivel de contenedor
Integración de seguridad Java

Requisitos

  • Apache Tomcat 8.x, 9.x o 10.x
  • Java 8 o superior
  • Agente JOSSO para Tomcat
  • Conectividad de red al servidor JOSSO

Instalación

1. Implementar las Bibliotecas del Agente

# Copy JOSSO agent JARs to Tomcat lib folder
cp josso-agent-*.jar $CATALINA_HOME/lib/

2. Configurar la Válvula

Agregue la válvula JOSSO a server.xml o context.xml:

<!-- In server.xml, inside <Host> element -->
<Valve className="org.josso.tc80.agent.SSOAgentValve"
       debug="1" />

<!-- Or in context.xml for specific app -->
<Context>
  <Valve className="org.josso.tc80.agent.SSOAgentValve" />
</Context>

Configuración

josso-agent-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<josso-agent>
  <gateway-login-url>
    https://idp.example.com/josso/signon/login.do
  </gateway-login-url>

  <gateway-logout-url>
    https://idp.example.com/josso/signon/logout.do
  </gateway-logout-url>

  <partner-app>
    <app-id>my-tomcat-app</app-id>
    <app-location>/myapp</app-location>
    <security-context-propagation>true</security-context-propagation>
  </partner-app>
</josso-agent>

Web.xml de la Aplicación Web

<web-app>
  <security-constraint>
    <web-resource-collection>
      <web-resource-name>Protected</web-resource-name>
      <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
      <role-name>*</role-name>
    </auth-constraint>
  </security-constraint>

  <login-config>
    <auth-method>FORM</auth-method>
    <realm-name>JOSSO</realm-name>
  </login-config>
</web-app>