Buenas,
Me respondo a mi mismo para informaros de que acabamos de registrar
las siguientes URNs:
urn:mace:rediris.es:papi
URN raiz para PAPI.
urn:mace:rediris.es:papi:protocol
URN relativa al espacio de nombres del protocolo PAPI.
urn:mace:rediris.es:papi:attributes
URN relativa al espacio de nombres de los atributos de usuario
intercambiados con PAPI.
Así que a partir de ahora podéis considerar dichos espacios de nombres
oficiales.
Un saludo y buen fin de semana,
On 30/07/2010, at 11:23, Jaime Pérez wrote:
> Buenas,
>
> No hace mucho tiempo estuvimos hablando sobre la posibilidad de
> incluir atributos en la aserción que no fuesen estrictamente
> atributos del usuario, sino atributos relativos al protocolo o
> incluso a la operación concreta de la federación, como por ejemplo,
> un atributo que indique si el usuario ha expresado ya su
> consentimiento para entregar el resto de atributos a un PoA PAPI.
> Esto es lo que dimos en llamar "atributos operacionales".
>
> Pues bien, desde ayer tenemos en el phpPoA2 una primera
> implementación que da soporte a este tipo de atributos. La idea es
> que como la reimplementación del PoA en PHP soporta espacios de
> nombres en los atributos, dependiendo del espacio de nombres se
> puede pedir al PoA que entregue un atributo operacional en lugar de
> un atributo del usuario. De momento, y a falta de confirmación,
> existen dos espacios de nombres autoexplicativos:
>
> urn:mace:rediris.es:papi:protocol
> urn:mace:rediris.es:papi:attributes
>
> De esta forma, se le puede solicitar un atributo operacional al
> phpPoA2 con el método getAttribute(), indicando el nombre del
> atributo y el espacio de nombres del protocolo (codificado con la
> constante NS_PAPI_PROTOCOL). De momento he diferenciado los
> atributos operacionales con un prefijo "_papi_" delante del nombre
> del atributo, pero esto puede cambiar. Para pedir el atributo no es
> necesario incluir el prefijo.
>
> Así mismo, se han incluido otra serie de parámetros dentro del
> espacio de nombres de atributos operacionales. Son los siguientes:
>
> - PROTO_ATTR_AS_ID: el identificador del AS que ha autenticado al
> usuario. Se corresponde con el tradicional "@xxxxx" que cierra una
> aserción PAPI.
> - PROTO_ATTR_KEY: el identificador de la transacción PAPI por la
> cual se autentica al usuario.
> - PROTO_ATTR_EXPIRE_TIME: el tiempo unix en el que caduca la
> autenticación para el usuario actual.
>
> A modo de ejemplo, obtener el identificador del AS que autenticó al
> usuario, es tan sencillo como:
>
> $poa = new PoA("app");
> $poa->authenticate();
> $id = $poa->getAttribute(PROTO_ATTR_AS_ID, NS_PAPI_PROTOCOL);
>
> Un saludo,
>
> --
> Jaime Pérez
> Middleware Engineer
> RedIRIS National Research and Development Network
>
> pgp: CD22D621
> web: http://www.rediris.es
> xmpp: [log in para visualizar]
> blog: http://blog.rediris.es/middleware
--
Jaime
|