Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info
titleNOTA

La funcionalidad descrita en este documento está disponible a partir de la versión 7.1.04

Introducción

Si bien una forma de integrarse con el Single Sign On de O3 es la adaptación de la aplicación existente para que utilice el CAS de O3, en muchas oportunidades esto es demasiado complejo y se requiere una alternativa más simple.

...

Code Block
xml
xml
<?xml version="1.0" encoding="UTF-8"?>
<datasources>
    <datasource jndi-name="java:jboss/datasources/TicketDS"
        pool-name="TicketDS" enabled="true" jta="true" use-java-context="true"
        use-ccm="true">
        <connection-url>
            jdbc:mysql://localhost:5858/sso_tickets
        </connection-url>
        <driver>
            mysql
        </driver>
        <security>
            <user-name>root</user-name>
			<password>root</password>
        </security>
    </datasource>
</datasources>
  • Ejemplo de DataSource para una base Postgres (<o3bi>/jboss/standalone/deployments/Ticket-ds.xml).

    Code Block
    languagexml
    <?xml version="1.0" encoding="UTF-8"?>
    <datasources>
        <datasource jndi-name="java:jboss/datasources/TicketDS"
            pool-name="TicketDS" enabled="true" jta="true" use-java-context="true"
            use-ccm="true">
            <connection-url>
                jdbc:postgresql://localhost:5432/sso_tickets
            </connection-url>
            <driver>
                postgres
            </driver>
            <security>
                <user-name>postgres</user-name>
                <password>postgres</password>
            </security>
        </datasource>
    </datasources>

Poner el driver en jboss. Para esto leer el wiki: Cómo configurar RBAC de O3BI con Diferentes Bases de Datos que explica como poner un driver en jboss7

...

Para esto hay que agregar los siguientes init-param en 2 filtros ("CASAuthenticationFilter" y "CAS Validation Filter") de CAS del archivo en el archivo "<o3bi>/jboss/standalone/deployments/o3-server.ear/o3web.war/o3web.war/WEB-INF/web.xml" los siguientes init-param en:

  • 2 filtros ("CASAuthenticationFilter" y "CAS Validation Filter")
  • un Servlet que se llama "o3WebLogoutServlet"

Code Block
xml
xml
<init-param>
	<param-name>ticket.validator</param-name>
	<param-value>com.ideasoft.cs.ejb.ticket.DbTicketValidator</param-value>
</init-param>
<init-param>
	<param-name>dbticket.datasource</param-name>
	<param-value>java:jboss/datasources/TicketDS</param-value>
</init-param>

...

Configuración de SSO para EPortal

  1. Descomentar las siguientes propiedades del archivo <o3bi>/liferay/portal-ext.properties: 

    Code Block
    o3.autologin.validator=com.ideasoft.cs.ejb.ticket.DbTicketValidator
    dbticket.datasource=java:/comp/env/jdbc/TicketDB

...

  1. Se puede especificar también la propiedad dbticket.expiration de la misma manera que para la configuración de O3Web.
     

  2. Agregar el "O3AutoLogin" en la property "auto.login.hooks".
    Debe queda así: auto.login.hooks=com.liferay.portal.security.auth.CASAutoLogin,com.liferay.portal.security.auth.FacebookAutoLogin,com.liferay.portal.security.auth.NtlmAutoLogin,com.liferay.portal.security.auth.OpenIdAutoLogin,com.liferay.portal.security.auth.OpenSSOAutoLogin,com.liferay.portal.security.auth.RememberMeAutoLogin,com.liferay.portal.security.auth.SiteMinderAutoLogin,biz.ideasoft.liferay.portal.login.O3AutoLogin


  3. Agregar la configuración de la Base de datos en liferay:
    Agregar el "Resource" en el archivo <o3bi>liferay/tomcat/conf/context.xml

    Ejemplo Mysql: 

    Code Block
    <Resource name="jdbc/TicketDB"
                auth="Container"
                type="javax.sql.DataSource"
                username="root"
                password="root"
                driverClassName="com.mysql.jdbc.Driver"
                url="jdbc:mysql://localhost:5858/sso_tickets"
    			validationQuery="select 1"
                maxActive="50"
                maxIdle="10"/>

    Ejemplo PostgreSQL:

     

    Code Block
    <Resource name="jdbc/TicketDB"
                auth="Container"
                type="javax.sql.DataSource"
                username="postgres"
                password="postgres"
                driverClassName="org.postgresql.Driver"
                url="jdbc:postgresql://localhost:5432/sso_tickets"
    			validationQuery="select 1"
                maxActive="

...

  1. 50"
                maxIdle="

...

  1. 10"/>