SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
Fábio 
Assunção 
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 Informação, pai do Gabriel, 
apaixonado por fígado and Babitinha, interessado em UX 
e Interaction Design.
OAuth2 
Gerenciamento de acessos para clientes de APIs
O 
que 
é 
OAuth? 
Um padrão aberto para autenticação
Como 
surgiu? 
OAuth surgiu em 2006 quando Blaine Cook estava 
implementando o Twitter OpenID e notou que o 
mesmo tinha muitas limitações e não delegava 
acessos, também não havia um padrão aberto para 
autenticação 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 Criação do OAuth discussion group 
07/2007 Projeto da versão 1.0 
04/2009 “Faça login com o Twitter”
Quem 
usa? 
VOCE
Nos últimos anos, com a tão aclamada Web 2.0 
muitos serviços passaram a fornecer APIs que podem 
ser usadas por terceiros. Twitter, Google, Facebook 
são alguns exemplos.
ObjeCvo 
Permitir que uma aplicação possa acessar 
determinadas APIs no lugar do usuário de forma 
segura e padronizada.
A 
autenCcação 
por 
meio 
do 
OAuth 
consiste 
de 
três 
passos
Referência: 
hJp://www.4shared.com/ 
SOLICITAÇÃO
1) 
Aplicação 
cliente 
obtém 
chave 
de 
autenCcação 
Referência: 
hJp://goo.gl/6YW6md
Referência: 
hJps://www.facebook.com 
AUTORIZAÇÃO
2) 
Usuário 
autoriza 
aplicação 
cliente 
na 
aplicação 
servidora 
Referência: 
hJp://goo.gl/6YW6md
Referência: 
hJp://www.4shared.com/ 
CONTROLE 
DE 
ACESSOS 
CLIENTE
3) 
Aplicação 
cliente 
troca 
a 
chave 
de 
autenCcação 
pela 
chave 
de 
acesso 
Referência: 
hJp://goo.gl/6YW6md
Referência: 
hJps://www.facebook.com 
REVOGAR 
ACESSO
Algumas 
vantagens 
Flexibilidade 
Independente de implementação 
Deployment diverso (público, privado e corporativo) 
Interoperabilidade (web, mobile , desktop) 
Utilizar serviços que o usuário confia 
Pode-se trocar de implementação facilmente
Segurança 
O usuário deve ter cuidado ao autorizar aplicações 
clientes e conceder apenas os privilégios necessários.
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
Referências 
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

Mais conteúdo relacionado

Mais procurados

Trabalho Ricardo Kratz IPOG
Trabalho Ricardo Kratz IPOGTrabalho Ricardo Kratz IPOG
Trabalho Ricardo Kratz IPOGDanilo Camapum
 
Web 2 0 Nas Organizacoes
Web 2 0 Nas OrganizacoesWeb 2 0 Nas Organizacoes
Web 2 0 Nas Organizacoesgoogle_docs
 
Tecnisa - Palestra líderes
Tecnisa - Palestra líderesTecnisa - Palestra líderes
Tecnisa - Palestra líderesGustavo Reis
 
Conclusão: desenvolvimento de aplicação social
Conclusão: desenvolvimento de aplicação socialConclusão: desenvolvimento de aplicação social
Conclusão: desenvolvimento de aplicação socialLucas Monteiro
 
Internet web 20 e redes sociais na educacao
Internet web 20 e redes sociais na educacaoInternet web 20 e redes sociais na educacao
Internet web 20 e redes sociais na educacaoOnthe Class
 
jQuery: Write less, do more
jQuery: Write less, do morejQuery: Write less, do more
jQuery: Write less, do morehfsantos
 
Aplicações MultiTenant no Asp.NET Core
Aplicações MultiTenant no Asp.NET CoreAplicações MultiTenant no Asp.NET Core
Aplicações MultiTenant no Asp.NET CoreResource IT
 

Mais procurados (7)

Trabalho Ricardo Kratz IPOG
Trabalho Ricardo Kratz IPOGTrabalho Ricardo Kratz IPOG
Trabalho Ricardo Kratz IPOG
 
Web 2 0 Nas Organizacoes
Web 2 0 Nas OrganizacoesWeb 2 0 Nas Organizacoes
Web 2 0 Nas Organizacoes
 
Tecnisa - Palestra líderes
Tecnisa - Palestra líderesTecnisa - Palestra líderes
Tecnisa - Palestra líderes
 
Conclusão: desenvolvimento de aplicação social
Conclusão: desenvolvimento de aplicação socialConclusão: desenvolvimento de aplicação social
Conclusão: desenvolvimento de aplicação social
 
Internet web 20 e redes sociais na educacao
Internet web 20 e redes sociais na educacaoInternet web 20 e redes sociais na educacao
Internet web 20 e redes sociais na educacao
 
jQuery: Write less, do more
jQuery: Write less, do morejQuery: Write less, do more
jQuery: Write less, do more
 
Aplicações MultiTenant no Asp.NET Core
Aplicações MultiTenant no Asp.NET CoreAplicações MultiTenant no Asp.NET Core
Aplicações MultiTenant no Asp.NET Core
 

Semelhante a Gerenciamento de acessos OAuth2 para APIs

Mineração de dados no Gmail e Facebook
Mineração de dados no Gmail e FacebookMineração de dados no Gmail e Facebook
Mineração de dados no Gmail e FacebookLuiz Arthur
 
Sua Startup precisa de uma WebAPI.
Sua Startup precisa de uma WebAPI.Sua Startup precisa de uma WebAPI.
Sua Startup precisa de uma WebAPI.AlexSandro Cruz
 
OAuth2: Uma abordagem para segurança de aplicações e APIs REST - Devcamp 2014
OAuth2: Uma abordagem para segurança de aplicações e APIs REST  - Devcamp 2014OAuth2: Uma abordagem para segurança de aplicações e APIs REST  - Devcamp 2014
OAuth2: Uma abordagem para segurança de aplicações e APIs REST - Devcamp 2014Tiago Marchetti Dolphine
 
Introdução a plataforma de aplicativos Redu
Introdução a plataforma de aplicativos ReduIntrodução a plataforma de aplicativos Redu
Introdução a plataforma de aplicativos ReduGuilherme
 
Artigo Jornalistico Web D
Artigo Jornalistico   Web DArtigo Jornalistico   Web D
Artigo Jornalistico Web DJozelena
 
Desenvolvimento de Sites V.2
Desenvolvimento de Sites V.2Desenvolvimento de Sites V.2
Desenvolvimento de Sites V.2Patricia Mallmann
 
Explorando mecanismos autenticacao na web
Explorando mecanismos autenticacao na webExplorando mecanismos autenticacao na web
Explorando mecanismos autenticacao na webEduardo Cesar
 
Projeto final de hiperespaços de aprendizagem
Projeto final de hiperespaços de aprendizagemProjeto final de hiperespaços de aprendizagem
Projeto final de hiperespaços de aprendizagem933982900
 
Economia das APIs - Uma visão de negócios
Economia das APIs - Uma visão de negóciosEconomia das APIs - Uma visão de negócios
Economia das APIs - Uma visão de negóciosEdgar Silva
 
Web 2.0 Recursos TecnolóGicos E FormaçãO Susana Ferreira (20061566) & Raquel ...
Web 2.0 Recursos TecnolóGicos E FormaçãO Susana Ferreira (20061566) & Raquel ...Web 2.0 Recursos TecnolóGicos E FormaçãO Susana Ferreira (20061566) & Raquel ...
Web 2.0 Recursos TecnolóGicos E FormaçãO Susana Ferreira (20061566) & Raquel ...susana12345
 

Semelhante a Gerenciamento de acessos OAuth2 para APIs (20)

Mineração de dados no Gmail e Facebook
Mineração de dados no Gmail e FacebookMineração de dados no Gmail e Facebook
Mineração de dados no Gmail e Facebook
 
Sua Startup precisa de uma WebAPI.
Sua Startup precisa de uma WebAPI.Sua Startup precisa de uma WebAPI.
Sua Startup precisa de uma WebAPI.
 
OAuth2: Uma abordagem para segurança de aplicações e APIs REST - Devcamp 2014
OAuth2: Uma abordagem para segurança de aplicações e APIs REST  - Devcamp 2014OAuth2: Uma abordagem para segurança de aplicações e APIs REST  - Devcamp 2014
OAuth2: Uma abordagem para segurança de aplicações e APIs REST - Devcamp 2014
 
Introdução a plataforma de aplicativos Redu
Introdução a plataforma de aplicativos ReduIntrodução a plataforma de aplicativos Redu
Introdução a plataforma de aplicativos Redu
 
Web 2
Web 2Web 2
Web 2
 
Web 2
Web 2Web 2
Web 2
 
UTILIZAÇÃO DOS SISTEMAS DE SINGLE SIGN-ON (SSO) DO GOOGLE E FACEBOOK
UTILIZAÇÃO DOS SISTEMAS DE SINGLE SIGN-ON (SSO) DO GOOGLE E FACEBOOKUTILIZAÇÃO DOS SISTEMAS DE SINGLE SIGN-ON (SSO) DO GOOGLE E FACEBOOK
UTILIZAÇÃO DOS SISTEMAS DE SINGLE SIGN-ON (SSO) DO GOOGLE E FACEBOOK
 
Artigo Jornalistico Web D
Artigo Jornalistico   Web DArtigo Jornalistico   Web D
Artigo Jornalistico Web D
 
Web 2
Web 2Web 2
Web 2
 
FlexMania 2010
FlexMania 2010FlexMania 2010
FlexMania 2010
 
Api do twitter
Api do twitterApi do twitter
Api do twitter
 
Desenvolvimento de Sites V.2
Desenvolvimento de Sites V.2Desenvolvimento de Sites V.2
Desenvolvimento de Sites V.2
 
Explorando mecanismos autenticacao na web
Explorando mecanismos autenticacao na webExplorando mecanismos autenticacao na web
Explorando mecanismos autenticacao na web
 
Um pouco sobre APIs
Um pouco sobre APIsUm pouco sobre APIs
Um pouco sobre APIs
 
Projeto final de hiperespaços de aprendizagem
Projeto final de hiperespaços de aprendizagemProjeto final de hiperespaços de aprendizagem
Projeto final de hiperespaços de aprendizagem
 
Economia das APIs - Uma visão de negócios
Economia das APIs - Uma visão de negóciosEconomia das APIs - Uma visão de negócios
Economia das APIs - Uma visão de negócios
 
Web 2.0 Recursos TecnolóGicos E FormaçãO Susana Ferreira (20061566) & Raquel ...
Web 2.0 Recursos TecnolóGicos E FormaçãO Susana Ferreira (20061566) & Raquel ...Web 2.0 Recursos TecnolóGicos E FormaçãO Susana Ferreira (20061566) & Raquel ...
Web 2.0 Recursos TecnolóGicos E FormaçãO Susana Ferreira (20061566) & Raquel ...
 
Spring social
Spring socialSpring social
Spring social
 
Open ID Connect
Open ID Connect Open ID Connect
Open ID Connect
 
Autenticacao visual
Autenticacao visualAutenticacao visual
Autenticacao visual
 

Gerenciamento de acessos OAuth2 para APIs

  • 1. Fábio Assunção da Silva front-end / back-end developer www.fabioassuncao.com.br
  • 2. Sobre Front-end / back-end developer na VAT Tecnologia SA, graduando em Sistemas de Informação, pai do Gabriel, apaixonado por fígado and Babitinha, interessado em UX e Interaction Design.
  • 3.
  • 4. OAuth2 Gerenciamento de acessos para clientes de APIs
  • 5. O que é OAuth? Um padrão aberto para autenticação
  • 6.
  • 7. Como surgiu? OAuth surgiu em 2006 quando Blaine Cook estava implementando o Twitter OpenID e notou que o mesmo tinha muitas limitações e não delegava acessos, também não havia um padrão aberto para autenticação 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.
  • 8. Timeline 11/2006 Surgiu a ideia 04/2007 Criação do OAuth discussion group 07/2007 Projeto da versão 1.0 04/2009 “Faça login com o Twitter”
  • 10. Nos últimos anos, com a tão aclamada Web 2.0 muitos serviços passaram a fornecer APIs que podem ser usadas por terceiros. Twitter, Google, Facebook são alguns exemplos.
  • 11. ObjeCvo Permitir que uma aplicação possa acessar determinadas APIs no lugar do usuário de forma segura e padronizada.
  • 12. A autenCcação por meio do OAuth consiste de três passos
  • 14. 1) Aplicação cliente obtém chave de autenCcação Referência: hJp://goo.gl/6YW6md
  • 16. 2) Usuário autoriza aplicação cliente na aplicação servidora Referência: hJp://goo.gl/6YW6md
  • 18. 3) Aplicação cliente troca a chave de autenCcação pela chave de acesso Referência: hJp://goo.gl/6YW6md
  • 20. Algumas vantagens Flexibilidade Independente de implementação Deployment diverso (público, privado e corporativo) Interoperabilidade (web, mobile , desktop) Utilizar serviços que o usuário confia Pode-se trocar de implementação facilmente
  • 21. Segurança O usuário deve ter cuidado ao autorizar aplicações clientes e conceder apenas os privilégios necessários.
  • 22. Como uClizar em um Sistema, site, blog ou aplicaCvo ?
  • 23. 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
  • 24. Referências 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