Archivo

Archivo para mayo, 2010

Autenticación básica con el phpPoA2

martes, 11 de mayo de 2010 1 comentario

Hoy os vamos a enseñar a federar de la forma más sencilla posible vuestras aplicaciones con el nuevo phpPoA2. Lo primero que debéis hacer es descargaros la última versión desde la forja de RedIRIS, descomprimirlo en vuestro servidor y aseguraros de que vuestros scripts en PHP pueden acceder a él. En primer lugar, debéis configurar el PoA. La librería está diseñada de forma que un único fichero de configuración sea suficiente para configurar el PoA múltiples aplicaciones, así que debéis incluir una sección general en vuestro fichero PoA.conf:

$poa_cfg = array(
'LogFile' => '/var/log/poa.log',
'Debug' => false,
'LogLevel' => E_USER_ERROR,
'Language' => 'es_ES',
'NoAuthErrorURL' => 'http://www.miweb.es/error.php?status=403',
'SystemErrorURL' => 'http://www.miweb.es/error.php?status=503',
'InviteErrorURL' => 'http://www.miweb.es/null/error.php?status=503',
'AuthnEngine' => 'PAPIAuthnEngine',
);


Si esta configuración por defecto no es suficiente para vuestra aplicación o queréis modificar algún parámetro, basta con que los cambiéis en una sección específica para vuestra aplicación, que en caso contrario será igual que la general:

$poa_cfg['miaplicacion'] = $poa_cfg;

Una vez configurado el PoA en cuanto a sus opciones más básicas, debemos configurar la autenticación. El phpPoA, por su arquitectura modular, soporta distintos protocolos tanto de autenticación como de autorización, y viene con algunos por defecto. Con la distribución por defecto, la autorización se realizará mediante el motor de autenticación PAPI, y la podréis configurar en el fichero PAPI.conf:

$papi_cfg = array(
'Location'            => dirname($_SERVER['SCRIPT_NAME']),
'CookieDomain'        => $_SERVER['SERVER_NAME'],
'CookieTimeout'       => 3600,
'LKey'                => 'examplekey',
'PubKeyFile'          => 'pubkey.pem',
'DBType'              => PAPI_DBA,
'DBFile'              => '/var/spool/db/requests.db4',
'RedirectURL'         => 'http://www.rediris.es/SIRGPoA/papiPoA',
'RedirectType'        => GPOA_T
);

Al igual que en la configuración general del PoA, ésta es una configuración por defecto que podréis adaptar a las necesidades de vuestra aplicación, simplemente sobreescribiendo los parámetros por defecto que necesitéis. Recordad que siempre debéis definir una sección correspondiente a vuestra aplicación o el phpPoA se quejará de un error de configuración.

$papi_cfg['miaplicacion'] = array(
'CookieTimeout'       => 1800,
'Location'            => '/miaplicacion'
);

Y ya sólo queda lo más fácil, usarlo desde vuestra propia aplicación:

include("PoA.php");
$poa = new PoA("miaplicacion");
$auth = $poa->authenticate();
 
if ($auth) { // usuario autenticado
 
} else { // ocurrió un error y el usuario no está autenticado
 
}

Fácil, ¿verdad?

Categories: PAPI Tags: ,

Ya disponible el nuevo phpPoA2

martes, 11 de mayo de 2010 Sin comentarios

El phpPoA es una implementación muy ligera del protocolo de federación PAPI que permite conectar la gestión de identidad en aplicaciones escritas en el lenguaje PHP de forma sencilla y descentralizada.

En concreto, PAPI es el protocolo que se utiliza en la federación española SIR (Servicio de Identidad de RedIRIS). Mediante la librería phpPoA conectar una aplicación con la federación es se reduce a algo tan simple como un par de líneas de código PHP.

Podéis encontrar esta nueva versión en la forja de RedIRIS y descargaros la última imagen del código. Aún no disponemos de un paquete distribuible para esta nueva versión, pero estamos trabajando en ello. En lo sucesivo os iremos dando pequeñas recetas y trucos de uso y configuración del phpPoA para que le saquéis el máximo partido en vuestras aplicaciones web.

Categories: PAPI, SIR Tags:

Bienvenidos al blog del Área de Middleware

martes, 11 de mayo de 2010 Sin comentarios

Desde estas líneas trataremos de manteneros informados sobre nuestros servicios y actividades, tanto dentro de nuestra comunidad como en proyectos europeos de los que RedIRIS es partícipe.

Si queréis estar al día de todas las novedades que puedan ir surgiendo en nuestro trabajo o incluso de lo que está ocurriendo en las redes académicas de otros países, os recomendamos que reviséis de vez en cuando este blog, o incluso os suscribáis a él mediante las herramientas de sindicación RSS.

Esperamos que lo que aquí encontréis os sea de utilidad.

Un saludo.

Categories: Información general Tags: