SlideShare uma empresa Scribd logo
Entendendo	
  OAuth	
  com	
  Zend	
  
Guilherme	
  Oliveira	
  -­‐	
  @_holiveira	
  




                                                  Jam
                                                  2011!
Agenda	
  

•    Como	
  surgiu?	
  
•    Como	
  funciona?	
  
•    Por	
  que	
  usar?	
  
•    Parte	
  práAca	
  




                               Jam
                               2011!
whoami	
  

•    Sistemas	
  de	
  Informação	
  –	
  IST	
  
•    Desenvolvedor	
  PHP/Android	
  
•    Adobe	
  Flex	
  4	
  CerAfied	
  
•    Devandcoffee.com	
  




                                                    Jam
                                                    2011!
Como	
  surgiu?	
  
•    História	
  
•    Inspirações	
  
•    Datas	
  importantes	
  




                                Jam
                                2011!
História	
  

A	
  necessidade	
  de	
  criação	
  surgiu	
  em	
  novembro	
  
de	
  2006	
  enquanto	
  Blaine	
  Cook	
  trabalhava	
  na	
  
implementação	
  do	
  TwiZer	
  OpenID.	
  
OpenID	
  não	
  delega	
  acessos.	
  




                                                                    Jam
                                                                    2011!
Inspirações	
  

•  Flickr	
  Auth	
  
•  Google	
  AuthSub	
  
•  Yahoo!	
  BBAuth	
  
	
  
Padrão	
  aberto	
  tanto	
  
cliente	
  quanto	
  
servidor.	
  

	
                              Jam
                                2011!
Datas	
  imporantes	
  

•      Novembro	
  2006	
  –	
  Ideia	
  
•      Dezembro	
  2006	
  –	
  CiAzen	
  Space	
  
•      Abril	
  2007	
  –	
  OpenAuth	
  Group	
  
•      Julho	
  2007	
  –	
  Draa	
  versão	
  1.0	
  
•      Abril	
  2009	
  –	
  “Sign	
  in	
  with	
  TwiZer”	
  
•      Abrir	
  2009	
  –	
  Revisão	
  A	
  
	
  

                                                                  Jam
                                                                  2011!
Como	
  funciona?	
  
•    Analogia	
  Valet	
  Key	
  
•    Presta	
  atenção,	
  sério!	
  
•    Quais	
  os	
  atores?	
  
•    Quais	
  são	
  as	
  chaves?	
  
•    Como	
  é	
  o	
  fluxo?	
  




                                         Jam
                                         2011!
Analogia	
  Valet	
  Key	
  

•  Dirigir	
  por	
  certa	
  distancia	
  
•  Não	
  abrir	
  o	
  porta-­‐malas	
  
•  Bloquear	
  contatos	
  

ObjeAvo	
  é	
  limitar	
  o	
  acesso	
  
atráves	
  de	
  uma	
  chave!	
  
	
  

                                              Jam
                                              2011!
Presta	
  atenção,	
  sério!	
  

Está	
  é	
  a	
  parte	
  técnica	
  que	
  é	
  
quase	
  sempre	
  ignorada	
  pelo	
  
seu	
  cérebro,	
  é	
  hora	
  de	
  
acordar	
  e	
  entender	
  como	
  é	
  o	
  
funcionamento	
  do	
  OAuth.	
  




                                                     Jam
                                                     2011!
Quais	
  os	
  atores?	
  




  Consumer	
           Service	
  Provider	
     User	
  




                                                        Jam
                                                        2011!
Quais	
  são	
  as	
  chaves?	
  
Consumer	
  Key	
                  Request	
  Token	
                   Access	
  Token	
  




•  Criada	
  ao	
  cadastrar	
     •  Chave	
  de	
                     •  Chave	
  de	
  
   a	
  aplicação.	
                  autenAcação.	
                       autorização.	
  
•  Usada	
  para	
  saber	
        •  Requisitada	
  a	
                •  Requisitada	
  toda	
  
   qual	
  aplicação	
  está	
        primeira	
  vez	
  que	
             vez	
  que	
  você	
  vai	
  
   sendo	
  autorizada.	
             você	
  vai	
  permiAr	
  a	
        acessar	
  um	
  recurso.	
  
•  É	
  como	
  o	
                   aplicação.	
  
   idenAficador.	
                  •  Usar	
  técnicas	
  de	
  
                                      armazenamento.	
  




                                                                                                   Jam
                                                                                                   2011!
Como	
  é	
  o	
  fluxo?	
  




                              Jam
                              2011!
Por	
  que	
  usar?	
  
•    Para	
  o	
  desenvolvedor	
  
•    Adote	
  seu	
  usuário	
  
•    PermiAr	
  tudo	
  sem	
  medo!	
  




                                           Jam
                                           2011!
Comparada	
  com	
  REST	
  




                               Jam
                               2011!
Para	
  o	
  desenvolvedor	
  
•  Fácilidade	
  de	
  implementação;	
  
•  Fácilidade	
  de	
  manutenção;	
  

Quantas	
  vezes	
  seus	
  usuário	
  
cadastram-­‐se	
  com	
  dados	
  ficscios	
  
pela	
  aplicação	
  precisar	
  de	
  
cadastro?	
  
	
  
Quantas	
  vezes	
  seus	
  usuários	
  
cadastram-­‐se	
  com	
  dados	
  
“dasdasd”	
  pela	
  aplicação	
  ser	
  
desconhecida?	
  	
  




                                                Jam
                                                2011!
Cuide	
  do	
  seu	
  usuário	
  

•  Não	
  espalha	
  sua	
  senha;	
  
•  Controla	
  as	
  permissões	
  concedidas;	
  
•  Evita	
  cadastros	
  e	
  logins.	
  

Quantas	
  vezes	
  não	
  usamos	
  algum	
  recurso	
  do	
  
sistema	
  por	
  necessitar	
  de	
  cadastro?	
  

Quantas	
  vezes	
  não	
  nos	
  cadastramos	
  
pela	
  aplicação	
  não	
  parecer	
  confiável?	
  




                                                                  Jam
                                                                  2011!
PermiAr	
  tudo	
  sem	
  medo!	
  

•  Usuário	
  sem	
  
   consciência	
  
•  Chances	
  de	
  fazer	
  merda	
  
•  Não	
  sabe	
  revogar	
  
   permissão	
  




                                         Jam
                                         2011!
Let’s	
  code	
  !	
  




                         Jam
                         2011!

Mais conteúdo relacionado

PDF
Appcelerator Titanium – B2W Digital
PDF
Stateless authentication for microservices
PPTX
San Roman Rodriguez Alejandro
PPT
Vivences durant el curs
PDF
China newsweek
PPT
Moot ki yaad
PPT
Siguiendo a @EnlanubeTIC
Appcelerator Titanium – B2W Digital
Stateless authentication for microservices
San Roman Rodriguez Alejandro
Vivences durant el curs
China newsweek
Moot ki yaad
Siguiendo a @EnlanubeTIC

Destaque (19)

PDF
INCREIBLE!! Proposta d'acord entre Sandro Rosell i una penya del Barça
PPS
opciones de aprendizaje alternativo
PDF
Друпал Drush
POT
Снижение нагрузки на сервер с помощью NGINX
PPT
Test de personalitat. classic o romàntic
DOCX
Copia de familia
PDF
Novo Nordisk 2
PDF
Presentación de los talleres Cocina tu idea en la UPV de Valencia
DOCX
Gotze khai màn cho bữa đại tiệc cho dortmund
PDF
DE MAGADAN AO INTERNAUTA: Novos a(u)tores discursivos na modernização da fic...
PPTX
2010.05.14 disfraces infantil 3 y 4 años
PDF
Gamme DIN - DIN Unions - FG INOX
PDF
INAKSYS IT
DOCX
Dicionário legislativo
PPT
Ejercicio de objeto de Aoor
PDF
PRESENTACION DE TODOS, EL BICENTENARIO
INCREIBLE!! Proposta d'acord entre Sandro Rosell i una penya del Barça
opciones de aprendizaje alternativo
Друпал Drush
Снижение нагрузки на сервер с помощью NGINX
Test de personalitat. classic o romàntic
Copia de familia
Novo Nordisk 2
Presentación de los talleres Cocina tu idea en la UPV de Valencia
Gotze khai màn cho bữa đại tiệc cho dortmund
DE MAGADAN AO INTERNAUTA: Novos a(u)tores discursivos na modernização da fic...
2010.05.14 disfraces infantil 3 y 4 años
Gamme DIN - DIN Unions - FG INOX
INAKSYS IT
Dicionário legislativo
Ejercicio de objeto de Aoor
PRESENTACION DE TODOS, EL BICENTENARIO
Anúncio

Semelhante a CoderockrJam Entendendo OAuth com Zend (6)

PDF
Garantindo o sucesso da experiência do usuário por Carlos Alberto Bertozzi
PDF
Rasea na revista Tema
PDF
REST: Faça o Serviço Direito - TDC Goiânia
PDF
Mineração de dados no Gmail e Facebook
PDF
Internet
PDF
OWASP e o desenvolvimento seguro de aplicações para a Web
Garantindo o sucesso da experiência do usuário por Carlos Alberto Bertozzi
Rasea na revista Tema
REST: Faça o Serviço Direito - TDC Goiânia
Mineração de dados no Gmail e Facebook
Internet
OWASP e o desenvolvimento seguro de aplicações para a Web
Anúncio

Último (16)

PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PDF
Processos na gestão de transportes, TM100 Col18
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PDF
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PPTX
Arquitetura de computadores - Memórias Secundárias
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Processos na gestão de transportes, TM100 Col18
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
COBITxITIL-Entenda as diferença em uso governança TI
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Custos e liquidação no SAP Transportation Management, TM130 Col18
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Arquitetura de computadores - Memórias Secundárias

CoderockrJam Entendendo OAuth com Zend

  • 1. Entendendo  OAuth  com  Zend   Guilherme  Oliveira  -­‐  @_holiveira   Jam 2011!
  • 2. Agenda   •  Como  surgiu?   •  Como  funciona?   •  Por  que  usar?   •  Parte  práAca   Jam 2011!
  • 3. whoami   •  Sistemas  de  Informação  –  IST   •  Desenvolvedor  PHP/Android   •  Adobe  Flex  4  CerAfied   •  Devandcoffee.com   Jam 2011!
  • 4. Como  surgiu?   •  História   •  Inspirações   •  Datas  importantes   Jam 2011!
  • 5. História   A  necessidade  de  criação  surgiu  em  novembro   de  2006  enquanto  Blaine  Cook  trabalhava  na   implementação  do  TwiZer  OpenID.   OpenID  não  delega  acessos.   Jam 2011!
  • 6. Inspirações   •  Flickr  Auth   •  Google  AuthSub   •  Yahoo!  BBAuth     Padrão  aberto  tanto   cliente  quanto   servidor.     Jam 2011!
  • 7. Datas  imporantes   •  Novembro  2006  –  Ideia   •  Dezembro  2006  –  CiAzen  Space   •  Abril  2007  –  OpenAuth  Group   •  Julho  2007  –  Draa  versão  1.0   •  Abril  2009  –  “Sign  in  with  TwiZer”   •  Abrir  2009  –  Revisão  A     Jam 2011!
  • 8. Como  funciona?   •  Analogia  Valet  Key   •  Presta  atenção,  sério!   •  Quais  os  atores?   •  Quais  são  as  chaves?   •  Como  é  o  fluxo?   Jam 2011!
  • 9. Analogia  Valet  Key   •  Dirigir  por  certa  distancia   •  Não  abrir  o  porta-­‐malas   •  Bloquear  contatos   ObjeAvo  é  limitar  o  acesso   atráves  de  uma  chave!     Jam 2011!
  • 10. Presta  atenção,  sério!   Está  é  a  parte  técnica  que  é   quase  sempre  ignorada  pelo   seu  cérebro,  é  hora  de   acordar  e  entender  como  é  o   funcionamento  do  OAuth.   Jam 2011!
  • 11. Quais  os  atores?   Consumer   Service  Provider   User   Jam 2011!
  • 12. Quais  são  as  chaves?   Consumer  Key   Request  Token   Access  Token   •  Criada  ao  cadastrar   •  Chave  de   •  Chave  de   a  aplicação.   autenAcação.   autorização.   •  Usada  para  saber   •  Requisitada  a   •  Requisitada  toda   qual  aplicação  está   primeira  vez  que   vez  que  você  vai   sendo  autorizada.   você  vai  permiAr  a   acessar  um  recurso.   •  É  como  o   aplicação.   idenAficador.   •  Usar  técnicas  de   armazenamento.   Jam 2011!
  • 13. Como  é  o  fluxo?   Jam 2011!
  • 14. Por  que  usar?   •  Para  o  desenvolvedor   •  Adote  seu  usuário   •  PermiAr  tudo  sem  medo!   Jam 2011!
  • 15. Comparada  com  REST   Jam 2011!
  • 16. Para  o  desenvolvedor   •  Fácilidade  de  implementação;   •  Fácilidade  de  manutenção;   Quantas  vezes  seus  usuário   cadastram-­‐se  com  dados  ficscios   pela  aplicação  precisar  de   cadastro?     Quantas  vezes  seus  usuários   cadastram-­‐se  com  dados   “dasdasd”  pela  aplicação  ser   desconhecida?     Jam 2011!
  • 17. Cuide  do  seu  usuário   •  Não  espalha  sua  senha;   •  Controla  as  permissões  concedidas;   •  Evita  cadastros  e  logins.   Quantas  vezes  não  usamos  algum  recurso  do   sistema  por  necessitar  de  cadastro?   Quantas  vezes  não  nos  cadastramos   pela  aplicação  não  parecer  confiável?   Jam 2011!
  • 18. PermiAr  tudo  sem  medo!   •  Usuário  sem   consciência   •  Chances  de  fazer  merda   •  Não  sabe  revogar   permissão   Jam 2011!
  • 19. Let’s  code  !   Jam 2011!