OpenID

Na Galipedia, a Wikipedia en galego.

OpenID é un sistema de identificación dixital descentralizado, co cal un usuario pode identificarse nunha páxina web a través dunha URL ou dun XRI na versión actual, e pode ser verificado por calquera servidor que soporte o protocolo.

Características[editar | editar a fonte]

Nos sitios web que admiten OpenID, os usuarios non teñen que crear unha nova conta de usuario para obter o acceso. No seu lugar, só precisan dispoñer dun identificador creado nun servidor que verifique OpenID, chamado provedor de identidade ou IdP. O provedor de identidade pode confirmar a identificación OpenID do usuario a un sitio que soporte este sistema.

A diferenza das arquitecturas Single Sign-On, OpenId non especifica o mecanismo de autenticación. Polo tanto, a seguridade dunha conexión OpenId depende da confianza que teña o cliente OpenID no provedor de identidade. Se non existe confianza no provedor, a autenticación non será adecuada para servizos bancarios ou transaccións de comercio electrónico, aínda que o provedor de identidade poida usar un sistema de autenticación forte que o habilite para tales fins.

OpenID está gañando forza debido ao anuncio dalgúns sitios grandes, como Technorati de adoptaren este sistema[1]. O software MediaWiki conta cunha extensión para permitir acceso por OpenID,[2] pero polo momento non se usa nos servidores de Wikipedia.

Historia[editar | editar a fonte]

Desenvolvemento[editar | editar a fonte]

O sistema OpenID desenvolveuno orixinalmente Brad Fitzpatrick de LiveJournal, aínda que David Recordon de VeriSign, Josh Hoyt de JanRain e Dick Hardt de Sxip foron posteriores coautores. As novas especificacións de OpenID desenvólveas unha meritocracia fundamentada na lista de distribución do proxecto. Para apoiar a implantación de OpenID, un grupo de empresas anunciou en agosto de 2006 un programa de contribucións de desenvolvemento que lles ofrecía 5.000 $ aos primeiros dez proxectos de software libre que implementasen total compatibilidade con OpenID[3].

A partir da versión 1.1, OpenID utiliza o protocolo de busca de servizos Yadis. En decembro de 2007 viu a luz a versión 2.0 da Autenticación OpenID[4].

Terminoloxía[editar | editar a fonte]

Un glosario básico dos termos usados con OpenID:

  • Usuario final: a persoa que quere acceder coa súa identidade a un sitio.
  • Identificador: a URL ou XRI elixida polo usuario final como seu identificador OpenID.
  • Provedor de identidade: un provedor de servizos que ofrece rexistro de URL ou XRI OpenID e prové autenticación OpenID.
  • Parte confidente: o sitio que quere verificar a identidade do usuario final.

Como funciona OpenID[editar | editar a fonte]

Un sitio web, como exemplo.com, que quere ofrecer acceso aos seus visitantes a través de OpenID, coloca un formulario de identificación nalgunha das súas páxinas. Ao contrario que os típicos formularios de identificación que preguntan ao usuario polo seu nome e contrasinal, neste caso só existe un campo para o identificador OpenID. O sitio web pode optar por mostrar un pequeno logo OpenID xunto ao campo. Este formulario estará conectado a unha implementación da biblioteca cliente OpenID.

Exemplos[editar | editar a fonte]

Se, por exemplo, Antía quere acceder a exemplo.com usando o identificador OpenID antia.proveedor-openid.org que ela previamente rexistrou no proxecto de identidade proveedor-openid.org, simplemente vai a exemplo.com e teclea antia.proveedor-openid.org na caixa de identificación de OpenID. A partir da versión 2.0 da autenticación OpenID (e nalgunhas das implementacións de OpenID 1.1) Antía tamén pode identificarse tecleando un i-nome como =exemplo.antia ou =exemplo.comunidade*antia.

Se o identificador é unha URL, a primeira cousa que debe realizar a parte (exemplo.com) é transformala a unha forma canónica, del tipo http://antia.proveedor-openid.org/. Con OpenID 1.0, a parte confidente solicita entón a páxina web situada en dita URL e, vía unha etiqueta HTML de ligazón, descobre que o servidor de provedor é, poñamos, http://proveedor-openid.org/openid-auth.php. Tamén descobre se debe ou non usar unha identidade delegada (ver máis abaixo). A partir de OpenID 1.1, o cliente realiza o descubrimento destes datos solicitando o 'documento XRDS (tamén chamado documento Yadis) co tipo de contido application/xrds+xml, que pode estar dispoñible en dita URL e que sempre estará dispoñible a través dunha XRI.

Modos de comunicación[editar | editar a fonte]

Hai dous modos mediante os cales a parte confidente pode comunicarse co proveedor de identidade:

  1. checkid_immediate, o cal está orientado á identificación automática e no que toda comunicación entre os dous servidores se realiza como unha tarea de fondo, sen que o usuario sexa consciente;
  2. checkid_setup, no que o usuario comunícase directamente co servidor provedor usando o mesmo navegador web que emprega para acceder ao sitio da parte confidente.

A segunda opción é máis popular na Web; tamén pode suceder que un checkid_immediate termine converténdose nun checkid_setup se a operación non pode automatizarse.

En primeiro lugar, a parte confidente e o provedor (opcionalmente) establecen un segredo compartido, que a parte confidente se encarga de almacenar. Se empleamos checkid_setup, a parte confidente redirixe ao navegador web do usuario cara ao provedor. No exemplo, o navegador de Antía sería redirixido a provedor-openid.org de xeito que Antía puidese autenticarse contra o provedor.

O método de autenticación pode variar, mais normalmente un provedor OpenID pide un contrasinal (e entón posiblemente almacena a sesión do usuario usando cookies, tal e como fan moitos sitios con autenticación baseada en contrasinal). En caso de que Antía non teña unha sesión activa en proveedor-openid.org, este solicitará o seu contrasinal. Unha vez teña a sesión aberta, o servidor preguntará acerca da confianza que lle ofrece http://exemplo.com/openid-retorno.php (a páxina designada por exemplo.com como destino ao que o usuario debería volver tras completar a autenticación para recibir os detalles da súa identidade). Se ela responde positivamente, a autenticación OpenID considérase exitosa e o navegador é redirixido á páxina de retorno indicada coas credenciais outorgadas. Se Antía decide non fiarse do sitio da parte confidente, o navegador tamén será redirixido, pero se notificará do rexeitamento á parte confidente, de xeito que exemplo.com como contrapartida se negará a autenticar a Antía.

Non obstante, o proceso de login non rematou aínda porque nesta etapa, exemplo.com non pode decidir se as credenciais recibidas realmente foron recibidas dende proveedor-openid.org. Se eles tiñan establecido previamente un segredo compartido, o consumidor pode validar o segredo compartido recibido coas credenciais que tivese gardadas previamente. Cada consumidor é chamado con estado porque garda o segredo compartido entre sesións. En comparación, un consumidor sen estado ou mudo deberá facer unha petición máis a fondo (check_authentication) para asegurarse que os datos viñeron de verdade de provedor-openid.org.

Despois de que o identificador de Antía fose verificado, ela será considerada rexistrada en exemplo.com como antia.provedor-openid.org. O sitio pode entón gardar a sesión ou, se este é o seu primeiro rexistro, pedir a Antía que introduza información específica para exemplo.com para rematar o rexistro.

Fundación OpenID[editar | editar a fonte]

A Fundación OpenID, radicada nos Estados Unidos, así como a súa filial OpenID Europe,[5] creáronse en 2007. É unha organización sen fin de lucro cuxo papel é a organización e o desenvolvemento do framework OpenID para a comunidade e de administrar a súa propiedade intelectual.

Identificadores OpenID[editar | editar a fonte]

A partir da versión 2.0 da autenticación OpenID así como nalgunhas das implementacións de OpenID 1.1, hai dous tipos de identificadores: URLs y XRIs.

URLs[editar | editar a fonte]

Hai dous xeitos de obter unha URL OpenId válida que poida ser usada para rexistrarse en tódolos sitios que soporten OpenID.

  1. Primeiro, usar unha URL existente que o usuario controle (como o seu blog ou páxina persoal), e se sabe editar HTML, poderá inserir os tags OpenID apropiados no código seguindo as instrucións das especificacións de OpenID. Comentar que usando un subdominio poderá facer que o seu OpenID sexa máis sinxelo de escribir, mais non é preciso.
  2. Segundo, que o usuario rexistre o seu identificador OpenID cun provedor de identidades. Estes ofrecen a posibilidade de rexistrar URLs (habitualmente terceiros niveles de dominio) configuradas automaticamente para ser utilizadas con servizos de autenticación OpenID.

XRIs[editar | editar a fonte]

Os XRIs son un novo sistema de identificación en Internet, deseñado especificamente para identidades dixitais de dominio cruzado.

Características[editar | editar a fonte]

Os XRIs son de dúas formas i-nomes e i-números que son habitualmente rexistrados simultaneamente como equivalentes. Os I-nomes son reasignables (semellantes a nomes de dominio), namentres que os i-números nunca son reasignados. Cando un i-nome XRI é usado como un identificador OpenID, este é resolto inmediatamente polo i-número equivalente (o elemento CanonicalID dun documento XRDS). Este i-número é o identificador OpenID almacenado pola parte confidente. Deste xeito o usuario e a parte confidente están protexidos contra os cambios de identidade que poderían suceder cunha URL fundamentada nun nome DNS reasignable.

Críticas[editar | editar a fonte]

OpenID recibiu numerosas críticas de base relativas a problemas dende distintos ámbitos, pero en especial de seguridade e privacidade. A unificación de tódalas identidades implica altos riscos, amais do feito de que o servidor de identidade coñecerá tódalas webs que se visiten cada día. É máis, se se comprometese a seguridade do ordenador usuario ou do servidor, toda a vida dixital do usuario quedaría desprotexida.[6]

Notas[editar | editar a fonte]

  1. Technorati Announces Support for Open ID, TechCrunch, 19.10.2006, consultado o 27.9.2009
  2. http://www.MediaWiki.org/wiki/Extension:OpenID Extensión OpenID do sofware MediaWiki
  3. OpenID Bounty Program, consultado o 27.9.2009
  4. OpenID 2.0, Error 500, 6.12.2007, consultado o 27.9.2009
  5. http://openideurope.eu/ OpenID Europe Foundation
  6. http://idcorner.org/2007/08/22/the-problems-with-openid/ The problems with OpenID

Véxase tamén[editar | editar a fonte]

Outros artigos[editar | editar a fonte]

Ligazóns externas[editar | editar a fonte]