autenticación shibboleth: experiencia de la universidad del bío-bío
DESCRIPTION
Marcelo Espinoza Jefe de Servicios Computacionales Universidad del Bío BíoTRANSCRIPT
Autenticación Shibboleth:
Experiencia de la
Universidad del Bío-BíoUniversidad del Bío-Bío
Acceso Federado a
Bases de Datos Electrónicas de Información Científica (BEIC)
Investigadores y estudiantes de postgrado deben acceder a las Bases de Datos Electrónicas de Información Científica (BEIC) suscritas por la Universidad desde cualquier
DESAFÍO
suscritas por la Universidad desde cualquier lugar.
BEIC. Origen(google: BEIC)
• BEIC, operativa desde enero de 2008, se inició gracias a un convenio de colaboración
suscrito en diciembre de 2006 entre la Corporación Cincel y la Comisión Nacional de
Investigación Científica y Tecnológica, Conicyt.
• El propósito fue contratar consorciadamente suscripciones anuales a revistas científicas de
corriente principal, con la finalidad de proveer acceso nacional a las instituciones que
desarrollan actividades científicas en el país, sean estas miembros o no del Consorcio, y
extendiendo dicho beneficio a las entidades que desarrollen proyectos y/o actividades
asociadas a aquellas instituciones, durante el tiempo de duración de dichas actividades.asociadas a aquellas instituciones, durante el tiempo de duración de dichas actividades.
• Es una iniciativa cofinanciada en partes iguales entre Cincel y Conicyt hasta 2011. En 2012
comenzó a ser financiada íntegramente con fondos públicos
• BEIC permite acceder al texto completo de más de cinco mil títulos de revistas de corriente
principal de los siguientes editores: Elsevier (Freedom Collection), Springer, Wiley-Blackwell,
American Chemical Society (Web Edition), Annual Reviews, Oxford University Press, AAAS
(Science Magazine) y Nature Publishing Group.
Fuente: Sitio Web Cincel - http://www.cincel.cl/content/view/314/69/
Cincel = Conicyt + Universidades del Consejo de Rectores (25)
BEIC. Principales características
• Las universidades socias de Cincel pueden acceder a las más de cinco mil revistas incluidas en BEIC sólo desde sus redes IP institucionales. No hay sistema de login y password
habilitado. Tampoco se accede desde las cuentas de usuario disponibles en Cincel.
• La disponibilidad de conexiones deslocalizadas (por ejemplo a través de VPN o EZProxy) depende de las políticas informáticas de cada institución.
• El soporte local para los usuarios de BEIC está formado por dos instancias: en primer lugar,
los funcionarios de la Biblioteca Institucional, que pueden entregar apoyo directo a los los funcionarios de la Biblioteca Institucional, que pueden entregar apoyo directo a los
docentes, investigadores y alumnos para mejorar las experiencias de búsqueda y recuperación de información.
• La segunda instancia es la Secretaría Ejecutiva de la Corporación ( [email protected]), que
centraliza demandas sobre problemas de conectividad y programa acciones de capacitación global a los usuarios; junto con gestionar el ingreso de nuevos participantes a la Biblioteca
Electrónica Científica Chilena, ya que BEIC es el primer paso para constituir una
infraestructura nacional de información científica a través de acciones concertadas y
cofinanciadas entre diferentes actores.
• La oferta temática de BEIC abarca todos los campos de las ciencias básicas y aplicadas, todas
las ingenierías, ciencias sociales, derecho, artes y humanidades …
Fuente: Sitio Web Cincel - http://www.cincel.cl/content/view/325/69/
…noticia www.beic.cl
Ha comenzado el proceso de ampliación de la BEIC (JUEVES 13 DE SEPTIEMBRE DE 2012 08:59)
• A la fecha, estas son las instituciones que han tomado contacto con la Secretaría Ejecutiva de Cincel para iniciar el procesode apertura del acceso a las colecciones de la Biblioteca Electrónica de Información Científica:
Universidades Entidades del sector público Centros re gionales y otras entidades privadas sin fines de lucro
•Universidad del Desarrollo•Universidad de Los Andes
•Centro de Investigación Minero y Metalúrgico, CIMM
•Centro de Investigación de Polímeros Avanzados, CipaChile•Centro de Investigación Científico-Tecnológico para la •Universidad de Los Andes
•Universidad Mayor•Universidad Alberto Hurtado•Universidad Diego Portales•Universidad Central•Universidad Bernardo O'Higgins•Universidad San Sebastián•Universidad Finis Terrae•UCINF•Universidad Santo Tomás•Universidad del Pacífico
Metalúrgico, CIMM•Instituto Forestal•Academia Politécnica del Ejército•Instituto de Salud Pública•Comisión Chilena de Energía Nuclear•Instituto de Fomento Pesquero, IFOP•Biblioteca del Congreso•Jardin Botánico Nacional•Servicio Hidrográfico y Oceanográfico de la Armada, SHOA•Instituto de Investigaciones Agropecuarias, INIA•Comisión Chilena del Cobre, Cochilco
•Centro de Investigación Científico-Tecnológico para la Minería, CICITEM•Centro de Investigación y Desarrollo CIEN AUSTRAL•Centro de Estudios Avanzados en Zonas Áridas, CEAZA•Centro de Estudios del Cuaternario Fuego-Patagonia y Antártica, CEQUA•Centro de genómica nutricional agro acuícola, CGNA•Wildlife Conservation Society-Chile
Escenario Universidad del Bío-Bío…
• Los accesos a las BEIC se autorizan sólo por rangos/bloques de
direccionamiento IP (146.83.x.x, 146.83.x.x, etc)
• Cualquier intento de conexión desde fuera de la Universidad es tratado
como una conexión pública y se brindan accesos limitados (solo
abstracts).abstracts).
• Algunos proveedores de BEIC utilizan una (o varias) cuentas
por institución para brindar acceso a sus recursos
• La cuenta y clave se entrega a algunos usuarios de la institución (no
puede ser pública)
• No se puede cautelar por el correcto uso de los recursos contratados
(préstamo de cuentas)
• Dificulta el acceso a los recursos (nueva cuenta que recordar)
Posibles soluciones al desafío planteado:
De lo más simple a lo más complejo… de lo menos
deseable a lo más deseable:
1. Habilitación de un Web-Proxy (o pasarela)
2. Utilización de VPN (red privada virtual)
3. Integración (¿?) con los proveedores de BEIC.
Caso 1: Web-Proxy (o pasarela)
La más obvia y simple… (ej. EZProxy)
– A favor:
– Rápida de implementar
– Permite brindar acceso a cualquier recurso
externo ya que “enmascara” la conexión
Internet del usuario como una conexión de la Internet del usuario como una conexión de la
Universidad.
– En contra:
– Usuario igual utiliza una cuenta conocida para
presentarse ante el proxy.
– No escala bien en cantidad de usuarios
– Pueden existir problemas de despliegue o
visualización de contenidos.
Caso 2: VPN (red privada virtual)
• La Universidad cuenta con un servidor
VPN
– A favor:
– Permite dar acceso seguro (encriptado) a usuarios
remotos.
– El usuario forma parte integral de la red
Institucional, es decir, la red de la Universidad se Institucional, es decir, la red de la Universidad se
extiende hasta el usuario remoto.
– En contra:
– La solución se hace compleja por que el software
VPN debe ser cargado en cada PC Cliente que
requiera conectarse.
– La Institución se involucra en temas de Soporte que
no le corresponden (Soporte al PC del hogar)
– Se abren brechas de seguridad si las políticas
aplicadas no son correctas.
Caso 3: Integración
con los proveedores de BEIC
• Objetivo inicial: orientar la solución hacia una arquitectura de
SSO que permita la interoperabilidad entre proveedores de
servicios
• Existen varias soluciones y formas de implementación1 de SSO:
�Web-SSO, E-SSO, OpenID, Kerberos, Identidad Federada:
• Revisión del estado del arte sobre las tecnologías que usan los
Proveedores de Información (BDE) para brindar SSO.
– Central Authentication Service– Global Login System– Identity management– Kerberos– Liberty Alliance
– Microsoft Passport– NTLM– Security Assertion Markup Language
(SAML)– Shibboleth
*1 - fuente Wikipedia
¿Cual elegir ?
• Muchos proveedores de BEIC implementan Shibboleth, o lo
tienen en sus planes de implementación de corto plazo.
• Las estadísticas (2010) de uso de las BEIC en la Universidad reafirman la
decisión (+78%).
Nombre BDE utilizada
por la UniversidadProveedor
Estadísticas de Uso
proporcionado Biblioteca
UBB (fuentes externas)
Soporta
Shibboleth?
Science Direct Elsevier 63,5% SI
Springer Springer 9,3% SI
American Chemical
SocietyACS
4,5% SI
Annual Reviews Annual Reviews 1,1% SI
Nature Nature Publishing Group 4,9% NO
Wiley Wiley InterScience 4,1% NO
Oxford University
Press
Oxford Journals
publishes 3,6% NO
Science AAAS 1,8% NO
ISI Web of Knowledge Thomson Sin inf. SI
Ebsco EBSCOHost Sin inf. SI
ENGNetBase Taylor and Francis Group Sin inf. NO
Uso de Identidad Federada en Centros de Investigación y Universidades…
• PAPI, utilizado en España (RedIris)
• Shibboleth 1.3 (SAML 1.1), Shibboleth 2 (SAML 2), utilizado
en las redes de investigación de US (Internet2), Suiza,
Finlandia, Alemania, Inglaterra, Hungría, Grecia, otros.Finlandia, Alemania, Inglaterra, Hungría, Grecia, otros.
• eduGAIN, utilizado en las redes de GEANT (Europa).
…Otros: WS-* (ADFS), Liberty Alliance Project
¿ Qué es Shibboleth ?
• Proyecto OpenSource desarrollado inicialmente en Internet2
que implementa un sistema federado de SSO con intercambio
de atributos basados en estándares abiertos, principalmente
SAML1. Provee además funcionalidad de privacidad extendida
que permite al usuario/institución controlar los atributos que permite al usuario/institución controlar los atributos
liberados a cada aplicación.
Este sistema federado provee acceso seguro a través de diferentes dominios de
seguridad, preservando la privacidad de los datos de sus usuarios, y posibilita la
escalabilidad del sistema a través de relaciones de confianza.
[1] Security Assertion Markup Language
¿ Quién utiliza/soporta Shibboleth ?
Proveedores de Información LMS's Otros Sistemas
American Chemical Society Blackboard Darwin Streaming Server
ArtSTOR Claroline (*) Drupal
Atypon CLIX Fedora Repository
CSA Dokeos (*) Google Apps/Email
Digitalbrain PLC Fronter GridShib
EBSCO Publishing ILIAS GridSphere
Elsevier ScienceDirect INSTRUCT Horde
ExLibris Moodle Joomla (Idemauth SAML2 Extension)
H.W. Wilson OLAT muchos Wiki's
JSTOR Sakai Napster JSTOR Sakai Napster
The Literary Encyclopedia WebAssign Sharepoint® from Microsoft
Metapress WebCT uPortal
NSDL WordPress
OCLC ...y muchos otros
Ovid Technologies Inc.
Project MUSE
Proquest Information and Learning
Serials Solutions
SCRAN
Schweizerisches Bundesgericht
Thomson Gale
Thomson Reuters
Useful Utilities - EZproxy
(*) No figuran en la lista oficial, agregados para el propósito de esta presentación.
Fuente: https://wiki.shibboleth.net/confluence/display/SHIB2/ShibEnabled
Autenticación Federada. Beneficios
acceso único a servicios
dentro de la federación
facilita el intercambio de servicios con terceros
Autenticación y Autorización en una única Autenticación y Autorización en una única arquitectura
su Institución como proveedora de servicios (SP)
Provee un marco de seguridad común para todos los servicios.
Autenticación Federada. Componentes
Proveedor de Servicio (SP)Provee el servicio al que se desea acceder.
Proveedor de Identidad (IdP)Provee la autenticación de los usuarios.
Servicio de Descubrimiento (DS)Servicio de Descubrimiento (DS)Permite al usuario seleccionar cual proveedor de identidad (IdP) se utilizará para
acceder al servicio (SP).
La FederaciónEstablece relaciones de confianza entre el IdP y el SP, a través de assertions
(atributos) e intercambio de metadatos (XML).
Autenticación Federada. Modelo
Federaciones. Relaciones de Confianza
Institución
Institución
Institución
Institución
Institución
E-GobiernoE-Ciencia
Institución
Institución
Institución
BEIC
Institución
Institución
…
…
…
…manos a la obra
Implementación de Shibboleth
Paso 1: Implementación de Shibboleth
1. Documentación y mucha lectura (en inglés)…
• shibboleth.net , google, foros
2. Habilitar los componentes de Shibboleth:
- Descargar, instalar y configurar los componentes base de Shibboleth.
- Configurar el IdP (en el caso UBB, autentica los usuarios contra el sistema de Bibliotecas de la Universidad)
- Creación de la Federación “Universidad del Bío-Bío”. Nota: en Chile (2010) no existe ninguna federación a la cual asociarse, ni tampoco existen implementaciones de shibboleth conocidas.
- Pruebas on-line de Shibboleth (test mode),
3. Vinculación con los Proveedores de BEIC…
Paso 2: Vinculación con Proveedores de BEIC…
¿ Cómo la “Universidad del Bío-Bío“ se contacta con Elsevier/ACS/Springer…
para acceder federadamente a sus recursos ?
Recordemos que las “Universidades Chilenas” (miembros de Cincel) no contratan
directamente las BEICs…solo existen “bloques IP” autorizados.
Respuesta: Siguiendo los canales formales…
1. TI UBB -> Dirección de Bibliotecas -> Cincel -> Distribuidores Locales en Chile (BEIC) -> BEIC’s
2. cri…cri… -> vuelva al paso 1
3. Después de un par de iteraciones ……. se establecen los contactos
entre los equipos TI BEIC-UBB. (aquí comienza a fluir el tema ☺)
Situación actual
Federación “Universidad del Bio-Bio”
• Annual Reviews
• Springer
• ISI Web of Knowlegde• ISI Web of Knowlegde
• Web-Proxy para las BEICs no vinculadas.
Utiliza la misma arquitectura de autenticación
Ej. http://wp.ubiobio.cl/nature/
Primera Federación en Chile
Comunidad Federada REUNA (COFRE)
• American Chemical Society (ACS)
• Annual Reviews (AR) - activado
• Elsevier (Els)
• ISI Web of Knowledge (ISI) - activado
http://cofre.reuna.cl/
• ISI Web of Knowledge (ISI) - activado
• Nature (Nat)
• Oxford University Press (OUP)
• Springer (Spg)
• Wiley – Blackwell (WB)
Demo
• CAS (Central Authentication Service) provee a las aplicaciones
de una forma confiable de autenticar a un usuario.
• ¿Por qué CAS?
– Control de sesiones mediante tickets. SSO
IdP: CAS para autenticación
– Control de sesiones mediante tickets. SSO
• Permite autenticar contra múltiples fuentes
o LDAP, Active Directory, JDBC � Conexión a las BD
corporativas, RADIUS, X.509
o Flexible
o Clusterizable
CAS
– Fácil integración
– Comunidad de desarrollo activa.
– Múltiples clientes:
� JAVA
� .NET
� PHP
� PERL
� APACHE
� PAM
� Wordpress, Moodle, Joomla, MediaWiki
– Protegiendo un directorio (Apache / mod_auth_cas):
CASLoginURL https://machine.ubiobio.cl/vubb/login CASValidateURL https://machine.ubiobio.cl/vubb/serviceValidate
CAS, ejemplos
CASValidateURL https://machine.ubiobio.cl/vubb/serviceValidate CASCertificatePath /etc/ssl/certs/ CASValidateServer On<Location / >
AuthType CAS Require valid-user</Location>
CAS, ejemplo
– Autentificar una pagina (phpCAS)
include_once('CAS.php'); include_once('CAS.php'); phpCAS::setDebug(); phpCAS::client(CAS_VERSION_2_0,‘machine.ubiobio.cl',443,'vubb');phpCAS::setNoCasServerValidation();phpCAS::forceAuthentication(); $user=phpCAS::getUser();