OAuth: Gerenciamento de acessos para clientes de APIs

  • Published on
    20-Jul-2015

  • View
    250

  • Download
    3

Transcript

  • Fbio Assuno da Silva front-end / back-end developer

    www.fabioassuncao.com.br

  • Sobre Front-end / back-end developer na VAT Tecnologia SA, graduando em Sistemas de Informao, pai do Gabriel, apaixonado por fgado and Babitinha, interessado em UX e Interaction Design.

  • OAuth2 Gerenciamento de acessos para clientes de APIs

  • O que OAuth? Um padro aberto para autenticao

  • Como surgiu? OAuth surgiu em 2006 quando Blaine Cook estava implementando o Twitter OpenID e notou que o mesmo tinha muitas limitaes e no delegava acessos, tambm no havia um padro aberto para autenticao de acesso a APIs. Em 2007 OAuth discussion group foi criado por um grupo de desenvolvedores que se empenharam em resolver esse problema. Entre eles, Blaine Cook, Chris Messina, Larry Halff, David Recordon, Eran Hammer, DeWitt Clinton.

  • Timeline 11/2006 Surgiu a ideia 04/2007 Criao do OAuth discussion group 07/2007 Projeto da verso 1.0 04/2009 Faa login com o Twitter

  • Quem usa?

    VOCE

  • Nos ltimos anos, com a to aclamada Web 2.0 muitos servios passaram a fornecer APIs que podem ser usadas por terceiros. Twitter, Google, Facebook so alguns exemplos.

  • ObjeCvo Permit i r que uma apl icao possa acessar determinadas APIs no lugar do usurio de forma segura e padronizada.

  • A autenCcao por meio do OAuth consiste de trs passos

  • Referncia: h

    Jp://www.4shared

    .com

    /

    SOLICITAO

  • 1) Aplicao cliente obtm chave de autenCcao

    Referncia: h

    Jp://go

    o.gl/6YW

    6md

  • Referncia: h

    Jps://w

    ww.fa

    cebo

    ok.com

    AUTORIZAO

  • 2) Usurio autoriza aplicao cliente na aplicao servidora

    Referncia: h

    Jp://go

    o.gl/6YW

    6md

  • Referncia: h

    Jp://www.4shared

    .com

    /

    CONTROLE DE ACESSOS CLIENTE

  • 3) Aplicao cliente troca a chave de autenCcao pela chave de acesso

    Referncia: h

    Jp://go

    o.gl/6YW

    6md

  • Referncia: h

    Jps://w

    ww.fa

    cebo

    ok.com

    REVOGAR ACESSO

  • Algumas vantagens Flexibilidade

    Independente de implementao

    Deployment diverso (pblico, privado e corporativo)

    Interoperabilidade (web, mobile , desktop)

    Utilizar servios que o usurio confia

    Pode-se trocar de implementao facilmente

  • Segurana O usurio deve ter cuidado ao autorizar aplicaes

    clientes e conceder apenas os privilgios necessrios.

  • Como uClizar em um Sistema, site, blog ou aplicaCvo ?

  • 1. Cadastre seu aplicativo

    https://developers.facebook.com/

    https://dev.twitter.com/

    https://developers.google.com

    2. Utilize uma lib, framework ou desenvolva seu script

    http://oauth.net/2/

    https://github.com/fkooman/php-oauth-client

    https://github.com/ivan-novakov/php-openid-connect-client

    https://github.com/ssx/oauth-facebook-examples

    http://www.phpclasses.org/package/7700-PHP-Authorize-and-access-APIs-using-OAuth.html

  • Referncias http://oauth.net/ http://hueniverse.com/oauth/guide/ http://hueniverse.com/2007/10/04/beginners-guide-to-oauth-part-i-overview/ http://www.slideshare.net/gigantedesousa/quemtemmedoo-auth http://www.slideshare.net/GuilhermeHenriqueOliveira/coderockrjam-entendendo-oauth-com-zend http://goo.gl/6YW6md