SlideShare una empresa de Scribd logo
1 de 16
AUTENTICACIÓN

Albert Lozano Ciller
Carlos Pardo Durán
OAUTH
OAUTH
 Protocolo que permite autorización segura
  de una API para aplicaciones web, móviles,
  etc.
 Permite compartir datos privados de un sitio
  web X, en un sitio web Y.
 Autenticación basada en tokens.
     Usuario logueado tiene un token único para acceder a
      los datos del proveedor.
 Cualquierweb puede implementar OAuth.
 Standard sencillo y abierto
OAUTH
 No es necesario usuario y contraseña.
 Los parámetros OAuth se transmiten a través de:
     Cabecera de autorización HTTP (parámetros oauth).
     Body de POST HTTP.
     Parámetros en la URL (tokens).

   Algoritmos de firma:
     Texto plano
     HMAC-SHA1
     RSA-SHA1
OAUTH
   Consumidor
       Aplicación tratando de acceder a recursos
        protegidos.
   Poveedor de servicio
       Website dónde se encuentran los recursos.
   Usuario
       Dueño de los datos protegidos.
   Recursos protegidos
       Imágenes, videos, texto,etc.
   Tokens
       Strings de letras y números aleatorios únicos.
        Request Token, Access Token.
OAUTH

  La aplicación pide
  permiso(Request Token) al
  proveedor para acceder a los
  recursos.
  La aplicación redirige al usuario a
  la página del proveedor para
  autorizar a la aplicación.
OAUTH

  El usuario autoriza a la
  aplicación y el proveedor crea
  un Access Token ligado al
  Request Token anterior.
  El proveedor redirige al usuario
  a la aplicación de nuevo.
OAUTH

  La aplicación pide el Access
  Token ligado al Request Token
  anterior y el proveedor se lo
  envía.
  La aplicación deberá guardar el
  Access Token único.
OAUTH

  La aplicación puede acceder a
  los recursos privados cuando
  quiera mediante el Access
  Token.
OPENID
OPENID
 Estándar de identificación digital descentralizado.
 En las webs que soporten OpenID, no será
  necesario el registro. El usuario sólo tendrá que
  hacerse una cuenta en el proveedor de OpenID.
 El usuario se identificará con una URI única.

 Menos usuarios y passwords
OPENID
   Funcionamiento
    1.   El usuario introduce su ID en la web en la que quiere
         autenticarse.
    2.   La web encuentra al proveedor de esa cuenta y
         establece una comunicación secreta compartida.
OPENID
3.   La web redirige al usuario a la página del proveedor.
4.   El usuario se loguea si no lo está y autoriza a esa
     web.
OPENID
5.   El proveedor redirige al usuario de nuevo a la web con
     una respuesta OpenID.
6.   La web verifica la firma y deja entrar al usuario.
OAUTH VS. OPENID
OAUTH VS. OPENID
Similitudes
 Basados en HTTP.
 Protocolos abiertos.
 Involucran a 3 partes (usuario, consumidor, proveedor)


Diferencias
 OpenID comparte identidad y OAuth datos.
 Descentralizado vs. Centralizado.
 Relación consumidor-proveedor:
      No conocidos vs. bien conocidos.

Más contenido relacionado

Destacado

Destacado (9)

Apis, como reutilizar contenidos en tu web
Apis, como reutilizar contenidos en tu webApis, como reutilizar contenidos en tu web
Apis, como reutilizar contenidos en tu web
 
Apis webapps
Apis webappsApis webapps
Apis webapps
 
WORKSHOP II: API REST
WORKSHOP II: API RESTWORKSHOP II: API REST
WORKSHOP II: API REST
 
Google Analytics API
Google Analytics APIGoogle Analytics API
Google Analytics API
 
API WEB SQL ITParral
API WEB SQL ITParralAPI WEB SQL ITParral
API WEB SQL ITParral
 
WEB SCRAPING & API REST
 WEB SCRAPING & API REST WEB SCRAPING & API REST
WEB SCRAPING & API REST
 
WORKSHOP I: Introducción a API REST
WORKSHOP I: Introducción a API RESTWORKSHOP I: Introducción a API REST
WORKSHOP I: Introducción a API REST
 
Servicios web
Servicios webServicios web
Servicios web
 
GFI - Seguridad en tus APIs
GFI - Seguridad en tus APIsGFI - Seguridad en tus APIs
GFI - Seguridad en tus APIs
 

Similar a OAuth and OpenID

Identidad en la Red y portabilidad de datos personales
Identidad en la Red y portabilidad de datos personalesIdentidad en la Red y portabilidad de datos personales
Identidad en la Red y portabilidad de datos personales
sgua
 
Servicios web
Servicios webServicios web
Servicios web
jogoram
 
Hypertext transfert protocol
Hypertext transfert protocolHypertext transfert protocol
Hypertext transfert protocol
Oscar Eduardo
 

Similar a OAuth and OpenID (20)

Oauth v2-rev
Oauth v2-revOauth v2-rev
Oauth v2-rev
 
Meetup TCMS OAuth2
Meetup TCMS OAuth2Meetup TCMS OAuth2
Meetup TCMS OAuth2
 
Introducción al Protocolo OAuth 2.0
Introducción al Protocolo OAuth 2.0Introducción al Protocolo OAuth 2.0
Introducción al Protocolo OAuth 2.0
 
Unidad 4: Servicio web (HTTP)
Unidad 4: Servicio web (HTTP)Unidad 4: Servicio web (HTTP)
Unidad 4: Servicio web (HTTP)
 
tutorial guide using the api - 2015 espana seminario tecnico
tutorial guide using the api - 2015 espana seminario tecnicotutorial guide using the api - 2015 espana seminario tecnico
tutorial guide using the api - 2015 espana seminario tecnico
 
Implement Identity Server with .NET
Implement Identity Server with .NETImplement Identity Server with .NET
Implement Identity Server with .NET
 
Entendiendo o auth
Entendiendo o authEntendiendo o auth
Entendiendo o auth
 
Identidad en la Red y portabilidad de datos personales
Identidad en la Red y portabilidad de datos personalesIdentidad en la Red y portabilidad de datos personales
Identidad en la Red y portabilidad de datos personales
 
Meetup En mi local funciona - Protegiendo tu API REST con JWT en aplicaciones...
Meetup En mi local funciona - Protegiendo tu API REST con JWT en aplicaciones...Meetup En mi local funciona - Protegiendo tu API REST con JWT en aplicaciones...
Meetup En mi local funciona - Protegiendo tu API REST con JWT en aplicaciones...
 
Open ID
Open IDOpen ID
Open ID
 
PROTOCOLO HTTP.pptx
PROTOCOLO HTTP.pptxPROTOCOLO HTTP.pptx
PROTOCOLO HTTP.pptx
 
Presentación sso con cas
Presentación sso con casPresentación sso con cas
Presentación sso con cas
 
Sitios blindados de SharePoint
Sitios blindados de SharePointSitios blindados de SharePoint
Sitios blindados de SharePoint
 
Autenticar y securizar API en .NET Core como un Avenger
Autenticar y securizar API en .NET Core como un AvengerAutenticar y securizar API en .NET Core como un Avenger
Autenticar y securizar API en .NET Core como un Avenger
 
Desarrollando con APIs
Desarrollando con APIsDesarrollando con APIs
Desarrollando con APIs
 
Que es el http
Que es el httpQue es el http
Que es el http
 
Servicios web
Servicios webServicios web
Servicios web
 
Hypertext transfert protocol
Hypertext transfert protocolHypertext transfert protocol
Hypertext transfert protocol
 
Mule Cloud Connectors-Configuracion OAuth1
Mule Cloud Connectors-Configuracion OAuth1Mule Cloud Connectors-Configuracion OAuth1
Mule Cloud Connectors-Configuracion OAuth1
 
Mule Cloud Connectors-Configuracion OAuth
Mule Cloud Connectors-Configuracion OAuthMule Cloud Connectors-Configuracion OAuth
Mule Cloud Connectors-Configuracion OAuth
 

OAuth and OpenID

  • 3. OAUTH  Protocolo que permite autorización segura de una API para aplicaciones web, móviles, etc.  Permite compartir datos privados de un sitio web X, en un sitio web Y.  Autenticación basada en tokens.  Usuario logueado tiene un token único para acceder a los datos del proveedor.  Cualquierweb puede implementar OAuth.  Standard sencillo y abierto
  • 4. OAUTH  No es necesario usuario y contraseña.  Los parámetros OAuth se transmiten a través de:  Cabecera de autorización HTTP (parámetros oauth).  Body de POST HTTP.  Parámetros en la URL (tokens).  Algoritmos de firma:  Texto plano  HMAC-SHA1  RSA-SHA1
  • 5. OAUTH  Consumidor  Aplicación tratando de acceder a recursos protegidos.  Poveedor de servicio  Website dónde se encuentran los recursos.  Usuario  Dueño de los datos protegidos.  Recursos protegidos  Imágenes, videos, texto,etc.  Tokens  Strings de letras y números aleatorios únicos. Request Token, Access Token.
  • 6. OAUTH La aplicación pide permiso(Request Token) al proveedor para acceder a los recursos. La aplicación redirige al usuario a la página del proveedor para autorizar a la aplicación.
  • 7. OAUTH El usuario autoriza a la aplicación y el proveedor crea un Access Token ligado al Request Token anterior. El proveedor redirige al usuario a la aplicación de nuevo.
  • 8. OAUTH La aplicación pide el Access Token ligado al Request Token anterior y el proveedor se lo envía. La aplicación deberá guardar el Access Token único.
  • 9. OAUTH La aplicación puede acceder a los recursos privados cuando quiera mediante el Access Token.
  • 11. OPENID  Estándar de identificación digital descentralizado.  En las webs que soporten OpenID, no será necesario el registro. El usuario sólo tendrá que hacerse una cuenta en el proveedor de OpenID.  El usuario se identificará con una URI única.  Menos usuarios y passwords
  • 12. OPENID  Funcionamiento 1. El usuario introduce su ID en la web en la que quiere autenticarse. 2. La web encuentra al proveedor de esa cuenta y establece una comunicación secreta compartida.
  • 13. OPENID 3. La web redirige al usuario a la página del proveedor. 4. El usuario se loguea si no lo está y autoriza a esa web.
  • 14. OPENID 5. El proveedor redirige al usuario de nuevo a la web con una respuesta OpenID. 6. La web verifica la firma y deja entrar al usuario.
  • 16. OAUTH VS. OPENID Similitudes  Basados en HTTP.  Protocolos abiertos.  Involucran a 3 partes (usuario, consumidor, proveedor) Diferencias  OpenID comparte identidad y OAuth datos.  Descentralizado vs. Centralizado.  Relación consumidor-proveedor:  No conocidos vs. bien conocidos.