Skip To Content

Inicio de sesión único

En este tema

Configurar el inicio de sesión único

El inicio de sesión único permite que los usuarios inicien sesión una sola vez en una aplicación del software y que obtengan acceso a varios sistemas del software sin que se les indique que deben iniciar sesión de nuevo. Si configura el inicio de sesión único para su Sistema de Administración de Contenido (CMS) o cualquier otra página que agregue, los usuarios del Geoportal solamente tendrán que iniciar sesión una vez para obtener acceso a todas las aplicaciones habilitadas para un inicio de sesión único.

Nota:las instrucciones que se proporcionan a continuación son sugerencias con base en la configuración de SSO durante la prueba. Es posible que su organización requiera un procedimiento diferente dependiendo del software del contenedor servlet, otras aplicaciones que usen SSO, las políticas de seguridad y otras consideraciones.

Instrucciones para la configuración de LDAP de Tomcat y el inicio de sesión único

Esta configuración de inicio de sesión único se probó contra Tomcat 5.5.17 y se asume que usted ya configuró los usuarios a través de LDAP, conforme a la guía de instalación del Geoportal. Si ha configurado LDAP, entonces continúe con los pasos siguientes para habilitar un inicio de sesión único. Tendrá que hacer cambios en el archivo de server.xml de Tomcat y en el archivo de configuración de la aplicación Web del Geoportal.

  1. Modifique el archivo server.xml de Tomcat
    • Navegue a la carpeta<TOMCAT>\conf y abra el archivo server.xml en un editor de texto.
    • Encuentre la sección en donde se definen los <Realms>. Esto puede ser debajo del elemento <engine> o del elemento <host>. En donde se definen los entornos depende de otras aplicaciones Web que se implementan en su sistema y que no están necesariamente relacionadas con el Geoportal. En el siguiente ejemplo, colocamos el elemento <realm> dentro del <host>. Si <Realms> se encuentra bajo el elemento <engine>, reemplace todas las referencias de <host> por <engine> en las instrucciones a continuación. Para obtener más información, consulte la documentación de Apache Tomcat.
    • Pegue el siguiente elemento <realm> en la sección <host>. Asegúrese de cambiar el código para que coincida con las configuraciones de LDAP en donde se muestra en negrita. El ejemplo muestra la configuración típica para el servidor del directorio Apache:
      • connectionName: nombre distintivo de la conexión del administrador LDAP.
      • connectionPassword: contraseña de la conexión del administrador LDAP.
      • connectionURL: URL de la conexión LDAP.
      • roleBase: elemento que constituye la base de la búsqueda de roles coincidentes. El ejemplo a continuación define una estructura en donde los "grupos" se definen bajo "sistema" en el árbol del directorio activo.
      • roleName: nombre del atributo que contiene el rol/grupo. Valor predeterminado: cn.
      • roleSearch: expresión que se utiliza para buscar elementos de rol/grupo en el contexto de roleBase. La búsqueda encontrará esos grupos/roles que tienen un nombre de usuario determinado, en donde {0} es un marcador de posición para el nombre de usuario.
      • userPattern: patrón del nombre distintivo de los usuarios.
      <Realm
      className="org.apache.catalina.realm.JNDIRealm" 
      connectionName="uid=admin,ou=system" 
      connectionPassword="password" 
      connectionURL="ldap://myServer:10389" 
      debug="99" roleBase="ou=groups,ou=system" 
      roleName="cn" 
      roleSearch="(uniquemember={0})" 
      userPattern="cn={0},ou=users,ou=system"/>
      
    • Pegue el siguiente elemento <valve> también dentro de la sección <host>:
      <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
      
    • Guarde el archivo.
  2. Modifique el archivo gpt.xml del geoportal
    • Activación de un inicio de sesión único en el archivo gpt.xml:
      • Navegue a la carpeta <TOMCAT>\webapps\geoportal\WEB-INF\classes\gpt\config y abra gpt.xml en un editor de texto.
      • Busque el elemento "<singleSignOn>
      • Establezca el atributo "activo" a "verdadero" como se muestra a continuación:
        <singleSignOn active="true" ...
        
    • Verifique que en la sección <Groups> en gpt.xml, el nombre que distingue a "searchDIT" coincida con el nombre que distingue a "roleBase" especificado en el elemento server.xml <realm> de Tomcat que configuró con anterioridad. Para el servidor del directorio Apache, ambos podrían ser "ou=groups,ou=system".
    • Guarde el archivo.
  3. Modifique el archivo web.xml
    • Navegue a la carpeta <TOMCAT>\webapps\geoportal\WEB-INF y abra el archivo web.xml en un editor de texto.
    • Quite los comentarios del elemento <security-constraint> en web.xml:
      <security-constraint>
      <web-resource-collection> 
      <web-resource-name>login</web-resource-name> 
      <description>login</description>
      <url-pattern>/catalog/identity/login.page</url-pattern>
      <http-method>GET</http-method>
      <http-method>POST</http-method>
      </web-resource-collection>
      <auth-constraint>
      <description>These are the roles who have access</description>
      <role-name>gpt_administrators</role-name>
      <role-name>gpt_publishers</role-name>
      <role-name>gpt_registeredUsers</role-name>
      </auth-constraint>
      </security-constraint>
      <login-config>
      <auth-method>FORM</auth-method>
      <realm-name>Restricted content</realm-name>
      <form-login-config>
      <form-login-page>/catalog/identity/loginJsc.page</form-login-page>
      <form-error-page>/catalog/identity/loginJsc.page?error=true</form-error-page>
      </form-login-config>
      </login-config>
      
    • Quite los comentarios del bloque <security-role> como a continuación en web.xml:
      <security-role> 
      <role-name>gpt_administrators</role-name> 
      </security-role> 
      <security-role> 
      <role-name>gpt_publishers</role-name> 
      </security-role> 
      <security-role> 
      <role-name>gpt_registeredUsers</role-name> 
      </security-role>
      
    • Guarde el archivo y ciérrelo.
    • Reinicie Tomcat.

Instrucciones para la configuración de LDAP de Weblogic y el inicio de sesión único

Esta configuración de inicio de sesión único se probó contra Weblogic 10.3.1 y se asume que usted ya configuró los usuarios a través de LDAP, conforme a la guía de instalación del Geoportal. Este ejemplo también asume que su LDAP se configuró con el servidor del directorio Apache. Es posible que sea necesario ajustar las instrucciones a continuación para otros proveedores del servidor del directorio. Si ha configurado LDAP, entonces continúe con los pasos siguientes para habilitar un inicio de sesión único. Tendrá que hacer cambios desde adentro de la consola de administración de Weblogic al entorno de seguridad. Para obtener información más detallada sobre los entornos de seguridad visite el sitio Web de Weblogic.

  1. Cree un entorno de seguridad
    • Inicie sesión en la consola de administración del servidor Weblogic.
    • Haga clic en Entornos de seguridad bajo la tabla de contenido de Estructura de dominio.
    • Seleccione myrealm en la tabla.
    • Haga clic en la pestaña Proveedores.
    • Seleccione Nuevo.
    • Introduzca el nombre del proveedor de la autenticación. (En este ejemplo usaremos geoportal como el nombre.
    • Seleccione Tipo en el menú desplegable. En este ejemplo para el servidor del directorio Apache, seleccione el autenticador de LDAP. Si está usando un proveedor del servidor de directorio diferente, tendrá que seleccionar un tipo que corresponda a ese proveedor.
    • Haga clic en Aceptar. El nuevo proveedor se agregará a la lista de los proveedores autenticados.
    • Una vez que haya completado estos pasos ahora tendrá que editar la información del nuevo proveedor para que coincida con la configuración actual del LDAP. Haga clic en proveedor nuevo.
    • Seleccione la pestaña Proveedor específico.
    Tendrá que actualizar ciertos campos con información del LDAP. Los campos que no se mencionan a continuación se deben dejar como sus valores predeterminados. El ejemplo muestra la configuración típica para el servidor del directorio Apache:
    • User Name Attribute: Atributo de un objeto de usuario LDAP que especifica el nombre del usuario. Valor predeterminado: uid.
    • Principal: DN del usuario de LDAP que utiliza Weblogic para conectarse a LDAP.
    • Propogate Cause for Login Exception: Asegúrese de marcar esta opción.
    • Host: Nombre de host o dirección IP del servidor LDAP.
    • Use Retrieved User Name as Principal: Asegúrese de marcar esta opción.
    • Credential: Contraseña utilizada para conectarse al servidor LDAP.
    • Confirm Credential: Confirmación de la contraseña.
    • Group Base DN: Nombre distintivo (DN) de base del árbol del directorio LDAP que contiene los grupos. Nota: Anote esto para pasos siguientes.
    • User Base DN: Nombre distintivo (DN) de base del árbol del directorio LDAP que contiene los usuarios.
    • Port: Número de puerto en el cual escucha el servidor LDAP.
    • Haga clic en Guardar.
  2. Modifique DefaultAuthenticator en myrealm Weblogic dispone de su propio proveedor de seguridad que protege los recursos de Weblogic. Este proveedor se llama DefaultAuthenticator. Tendrá que ajustar la configuración del marcador de control de DefaultAuthenticator.
    • Haga clic en Entornos de seguridad bajo la tabla de contenido de Estructura de dominio.
    • Seleccione myrealm.
    • Haga clic en la pestaña Proveedores.
    • Seleccione DefaultAuthenticator.
    • Seleccione "Suficiente" desde el marcador desplegable de control.
    • Haga clic en Guardar.
  3. Modifique el archivo gpt.xml del geoportal
    • Activación de un inicio de sesión único en el archivo gpt.xml:
    • Navegue a la carpeta <Geoportal Installation Dir>\geoportal\WEB-INF\classes\gpt\config y abra gpt.xml en un editor de texto.
    • Busque el elemento "<singleSignOn>
    • Establezca el atributo "activo" a "verdadero" como se muestra a continuación:
      <singleSignOn active="true" ...
      
    • Verifique que en la sección <Groups> en gpt.xml, el nombre que distingue a "searchDIT" coincida con el DN base del grupo que anotó con anterioridad cuando configuró el entorno de seguridad. Para el servidor del directorio Apache, ambos podrían ser "ou=groups,ou=system".
    • Guarde el archivo.
  4. Modifique el archivo web.xml
    • Navegue a la carpeta <Geoportal Installation Dir>\geoportal\WEB-INF y abra el archivo web.xml en un editor de texto.
    • Quite los comentarios del bloque <security-constraint> y <securityrole> en web.xml:
      <security-constraint> 
      <web-resource-collection> 
      <web-resource-name>login</web-resource-name> 
      <description>login</description> 
      <url-pattern>/catalog/identity/login.page</url-pattern> 
      <http-method>GET</http-method> 
      <http-method>POST</http-method> 
      </web-resource-collection> 
      <auth-constraint> 
      <description>These are the roles who have access</description> 
      <role-name>gpt_administrators</role-name> 
      <role-name>gpt_publishers</role-name> 
      <role-name>gpt_registeredUsers</role-name> 
      </auth-constraint> </security-constraint> 
      <login-config> 
      <auth-method>FORM</auth-method> 
      <realm-name>myRealm</realm-name> 
      <form-login-config> 
      <form-login-page>/catalog/identity/loginJsc.page</form-login-page> 
      <form-error-page>/catalog/identity/loginJsc.page?error=true</form-error-page> 
      </form-login-config> 
      </login-config>
      
      <security-role> 
      <role-name>gpt_administrators</role-name> 
      </security-role> 
      <security-role> 
      <role-name>gpt_publishers</role-name> 
      </security-role> 
      <security-role> 
      <role-name>gpt_registeredUsers</role-name> 
      </security-role>
      
    • Guarde el archivo y ciérrelo.
    • Reinicie Weblogic.