SlideShare une entreprise Scribd logo
1  sur  38
Télécharger pour lire hors ligne
@TwitterAds | Confidential
@lfcipriani
2013-08-31
Segurança em APIs HTTP
u m g u i a s e n s a t o p a r a d e v s p r e o c u p a d o s
Q C O N S P 2 0 1 3
@TwitterAds | Confidential
Quem?
@lfcipriani
@TwitterAds | Confidential
O que?
@lfcipriani 4
TL;DR;
Esquemas de Autenticação HTTP
@lfcipriani 5
TL;DR; {Use OAuth
Use SSL
Esquemas de Autenticação HTTP
@lfcipriani 6
TL;DR; {Use OAuth
Use SSL
Qual o problema por trás do Too Long, Didn’t Read?
@lfcipriani 7
TL
Qual o problema por trás do Too Long, Didn’t Read?
#simplify
@lfcipriani 8
risco de segurança custo de implementação
O que devemos buscar?
@TwitterAds | Confidential
O que considerar?
@lfcipriani
Localização de sua API HTTP
10
@lfcipriani
Consumidores
11
@lfcipriani
Autoridade responsável
12
Centralizada
Distribuída
VS
@lfcipriani
Maturidade do modelo de segurança
13
Enviando uma carta de A para B
@lfcipriani
TLS/SSL
14
Regra geral:
Os dados trafegados são
sensíveis? Então use.
Tem o papel de simplificar
esforços de implementação de
autenticação.
Esqueça cache compartilhado
sem revalidação
@lfcipriani
Rate Limit
15
Auxilia na implementação de cotas de acesso;
Protege de abuso de APIs;
Protege de mal entendidos;
Mas recomenpense o bom usuário, seja flexível;
Monitore cada endpoint e não a API como um todo.
@lfcipriani
Auditoria em API
16
Auxilia no esforço de implementação da autenticação;
Ajuda a corrigir o problema depois que o erro acontece;
Pode-se focar somente em operações de escrita e
remoção.
@lfcipriani
Zele pelo conteúdo
17
Transforme dados de APIs internas antes de expor para
usuários finais;
Assuma que toda entrada de dados é potencialmente
maliciosa.
@TwitterAds | Confidential
Métodos de autenticação
@lfcipriani
Identificação baseado em Tokens
19
GET /post/1234?token=12ba3bf44edf3bf3123 HTTP/1.1
Accept: */*
Accept-Encoding: gzip, deflate, compress
Host: www.example.com
User-Agent: Your browser/1.0
Authorization: 12ba3bf44edf3bf3123
X-Extension: 12ba3bf44edf3bf3123
Set-Cookie: token=12ba3bf44edf3bf3123
token=12ba3bf44edf3bf3123
@lfcipriani
Identificação baseado em Tokens
20
SSL recomendado sim, se houver dados sensíveis
Performance
pouco impacto, se for usado como
header extension ou entity body
Riscos
Token na URL;
Não é seguro, todos os ataques se
aplicam
Processo de Adoção simples
@lfcipriani
RFC 2617
HTTP Basic
21
Authorization: Basic YmFzZTY0ZW5jb2Rpbmc6aXNudGNyeXB0b2dyYXBoeQ==
Base64 encoding of username:password
@lfcipriani
RFC 2617
HTTP Basic
22
SSL recomendado
sim, para não vazar credenciais e se
os dados são sensíveis.
Performance pouco impacto
Riscos
Plaintext credentials;
Header Tampering;
Dictionary Attacks;
Replay attacks;
Man-In-The-Middle;
Processo de Adoção simples, challenge-response
@lfcipriani
Autenticação baseada em Assinaturas Digitais
23
Os campos que você adiciona à assinatura influenciam na
segurança.
@lfcipriani
Autenticação baseada em Assinaturas Digitais
24
SSL recomendado sim, se houver dados sensíveis
Performance impacto na geração de assinaturas
Riscos
se for adicionado URL, method,
parâmetros, credenciais, nonce,
timestamp, consegue-se proteger a
aplicação de forma satisfatória.
Processo de Adoção
médio, tem que lidar com a geração
de assinaturas customizadas
@lfcipriani
HTTP Digest
25
Baseado em assinaturas
Porém, só protege as credenciais.
Pode oferecer integridade de mensagens se usado com
qop=auth-int
RFC 2617
@lfcipriani
HTTP Digest
26
RFC 2617
SSL recomendado sim, se houver dados sensíveis
Performance impacto na geração de assinaturas
Riscos
security options são opcionais,
portanto há risco de não utilizá-las;
Man-In-The-Middle (Multiple Auth
Mechanisms);
Header Tampering;
Processo de Adoção
médio, disponibilidade de bibliotecas
pode não ser boa
@lfcipriani
OAuth
27
https://github.com/Mashape/mashape-oauth/blob/master/FLOWS.md
@lfcipriani
Baseado em assinatura
OAuth 1.0a
28
POST /1/statuses/update.json?include_entities=true HTTP/1.1
Accept: */*
Connection: close
User-Agent: OAuth gem v0.4.4
Content-Type: application/x-www-form-urlencoded
Authorization:
OAuth oauth_consumer_key="xvz1evFS4wEEPTGEFPHBog",
oauth_nonce="kYjzVBB8Y0ZFabxSWbWovY3uYSQ2pTgmZeNu2VS4cg",
oauth_signature="tnnArxj06cWHq44gCs1OSKk%2FjLY%3D",
oauth_signature_method="HMAC-SHA1",
oauth_timestamp="1318622958",
oauth_token="370773112-GmHxMAgYyLbNEtIKZeRNFsMKPR9EyMZeS9weJAEb",
oauth_version="1.0"
Content-Length: 76
Host: api.twitter.com
status=Hello%20Ladies%20%2b%20Gentlemen%2c%20a%20signed%20OAuth%20request%21
@lfcipriani
Depende de SSL
OAuth 2.0
29
Authorization Code Grant
Implicit Grant
Resource Owner Password Credential Grant
Client credentials Grant
@lfcipriani
Há muitos cenários e várias implementações
OAuth
30
https://dev.twitter.com/docs/auth/obtaining-access-tokens
@lfcipriani
Críticas ao OAuth
31
http://hueniverse.com/2012/07/oauth-2-0-and-the-road-to-hell/
Oauth and the road to hell
OAuth, a great way to cripple your API (bag of ideas)
Oauth 1, Oauth 2, Oauth...?
http://insanecoding.blogspot.com.br/2013/03/oauth-great-way-to-cripple-your-api.html?m=1
http://homakov.blogspot.com.br/2013/03/oauth1-oauth2-oauth.html
@lfcipriani
Oauth em geral
32
SSL recomendado
Oauth 1.0a, se houver dados
sensíveis; se Oauth 2.0, obrigatório
Performance
Oauth 1a, impacto na geração de
assinaturas; Oauth 2, controle de
expiração de tokens
Riscos
como há interação direta com usuário,
há riscos de ataques de injeção nos
inputs;
diversidade de implementações
podem expor vulnerabilidades;
Processo de Adoção
complexo, depende do suporte
oferecido aos usuários.
@TwitterAds | Confidential
Modelos de Permissionamento
@lfcipriani
Definindo a sua estratégia para proteger seus recursos
Modelo de permissionamento
34
•O quão sensíveis são meus dados?
•Quais operações (read, write, destroy, admin) serão
expostas?
•Quem serão os consumidores da minha API?
•Qual o prejuízo que vou ter se meus dados vazarem?
•O quão importante os dados são para os meus usuários?
•O quão importante os dados são para os hackers?
•Minha API está exposta na Internet?
•Quem será a autoridade para realizar autenticação?
•Preciso auditar as operações?
•Há a necessidade de um modelo híbrido de autenticação?
@TwitterAds | Confidential
Conclusão
@lfcipriani 36
risco de segurança custo de implementação
O que devemos buscar?
A partir do seu modelo de permissionamento, escolha um ponto no eixo x
@lfcipriani 37
Links
The Web Application Hacker's Handbook: Finding and Exploiting Security Flaws by
Dafydd Stuttard and Marcus Pinto
HTTP: The Definitive Guide (David Gourley, Brian Totty, Marjorie Sayer and Anshu
Aggarwal)
https://github.com/Mashape/mashape-oauth/blob/master/FLOWS.md#oauth-2-two-
legged (OAuth Bible)
http://www.thebuzzmedia.com/designing-a-secure-rest-api-without-oauth-authentication/
https://dev.twitter.com/docs/auth/obtaining-access-tokens
https://dev.twitter.com/docs/auth/application-only-auth
http://www.ietf.org/rfc/rfc2617.txt (RFC Basic and Digest auth)
http://tools.ietf.org/html/rfc6749 (RFC OAuth 2.0)
@TwitterAds | Confidential
Obrigado!

Contenu connexe

Tendances

QCon 2015 - Combinando AngularJS com Java EE
QCon 2015 - Combinando AngularJS com Java EEQCon 2015 - Combinando AngularJS com Java EE
QCon 2015 - Combinando AngularJS com Java EERodrigo Cândido da Silva
 
Autenticacao em APIs com SSL
Autenticacao em APIs com SSLAutenticacao em APIs com SSL
Autenticacao em APIs com SSLMarcelo Milhomem
 
Modern Apps e o novo panorama de identidade e autenticação
Modern Apps e o novo panorama de identidade e autenticaçãoModern Apps e o novo panorama de identidade e autenticação
Modern Apps e o novo panorama de identidade e autenticaçãoJorge Tressino Rua
 
Introdução - Graph API
Introdução  - Graph APIIntrodução  - Graph API
Introdução - Graph APIWilson Govindji
 
FIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEB
FIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEBFIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEB
FIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEBErick Belluci Tedeschi
 
OWASP TOP 10 - Web Security
OWASP TOP 10 - Web SecurityOWASP TOP 10 - Web Security
OWASP TOP 10 - Web SecurityMarlon Bernardes
 
JavaOne 2015 - Simplificando a segurança de sua aplicação com Java EE
JavaOne 2015 - Simplificando a segurança de sua aplicação com Java EEJavaOne 2015 - Simplificando a segurança de sua aplicação com Java EE
JavaOne 2015 - Simplificando a segurança de sua aplicação com Java EELeonardo Zanivan
 
TDC Floripa 2016 - Decolando seus micro-serviços na Spring Cloud
TDC Floripa 2016 - Decolando seus micro-serviços na Spring CloudTDC Floripa 2016 - Decolando seus micro-serviços na Spring Cloud
TDC Floripa 2016 - Decolando seus micro-serviços na Spring CloudRodrigo Cândido da Silva
 
Segurança de aplicações em .NET Core
Segurança de aplicações em .NET CoreSegurança de aplicações em .NET Core
Segurança de aplicações em .NET CoreHeber Ortiz
 
Aula 1 - Testando a Segurança de Sua Aplicação Web
Aula 1 - Testando a Segurança de Sua Aplicação WebAula 1 - Testando a Segurança de Sua Aplicação Web
Aula 1 - Testando a Segurança de Sua Aplicação WebMatheus Fidelis
 
Propagação de Identidades
Propagação de IdentidadesPropagação de Identidades
Propagação de Identidadesacsvianabr
 
TDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com JavaTDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com JavaRodrigo Cândido da Silva
 
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...Rodrigo Cândido da Silva
 

Tendances (20)

QCon 2015 - Combinando AngularJS com Java EE
QCon 2015 - Combinando AngularJS com Java EEQCon 2015 - Combinando AngularJS com Java EE
QCon 2015 - Combinando AngularJS com Java EE
 
GUJavaSC - Combinando AngularJS com Java EE
GUJavaSC - Combinando AngularJS com Java EEGUJavaSC - Combinando AngularJS com Java EE
GUJavaSC - Combinando AngularJS com Java EE
 
Autenticacao em APIs com SSL
Autenticacao em APIs com SSLAutenticacao em APIs com SSL
Autenticacao em APIs com SSL
 
GUJavaSC - Protegendo Microservices em Java
GUJavaSC - Protegendo Microservices em JavaGUJavaSC - Protegendo Microservices em Java
GUJavaSC - Protegendo Microservices em Java
 
Modern Apps e o novo panorama de identidade e autenticação
Modern Apps e o novo panorama de identidade e autenticaçãoModern Apps e o novo panorama de identidade e autenticação
Modern Apps e o novo panorama de identidade e autenticação
 
JAVAle - Open-IdentityStack
JAVAle - Open-IdentityStackJAVAle - Open-IdentityStack
JAVAle - Open-IdentityStack
 
Introdução - Graph API
Introdução  - Graph APIIntrodução  - Graph API
Introdução - Graph API
 
FIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEB
FIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEBFIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEB
FIEB - WebVibe - Desenvolvimento Seguro de Aplicações WEB
 
OWASP TOP 10 - Web Security
OWASP TOP 10 - Web SecurityOWASP TOP 10 - Web Security
OWASP TOP 10 - Web Security
 
JavaOne 2015 - Simplificando a segurança de sua aplicação com Java EE
JavaOne 2015 - Simplificando a segurança de sua aplicação com Java EEJavaOne 2015 - Simplificando a segurança de sua aplicação com Java EE
JavaOne 2015 - Simplificando a segurança de sua aplicação com Java EE
 
TDC Floripa 2016 - Decolando seus micro-serviços na Spring Cloud
TDC Floripa 2016 - Decolando seus micro-serviços na Spring CloudTDC Floripa 2016 - Decolando seus micro-serviços na Spring Cloud
TDC Floripa 2016 - Decolando seus micro-serviços na Spring Cloud
 
Segurança de aplicações em .NET Core
Segurança de aplicações em .NET CoreSegurança de aplicações em .NET Core
Segurança de aplicações em .NET Core
 
Segurança em Angular SPA
Segurança em Angular SPASegurança em Angular SPA
Segurança em Angular SPA
 
Formas de autenticação tomcat
Formas de autenticação tomcatFormas de autenticação tomcat
Formas de autenticação tomcat
 
Aula 1 - Testando a Segurança de Sua Aplicação Web
Aula 1 - Testando a Segurança de Sua Aplicação WebAula 1 - Testando a Segurança de Sua Aplicação Web
Aula 1 - Testando a Segurança de Sua Aplicação Web
 
PHP Seguro em 2013
PHP Seguro em 2013PHP Seguro em 2013
PHP Seguro em 2013
 
Segurança J2EE
Segurança J2EESegurança J2EE
Segurança J2EE
 
Propagação de Identidades
Propagação de IdentidadesPropagação de Identidades
Propagação de Identidades
 
TDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com JavaTDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com Java
 
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
 

Similaire à Segurança em APIs HTTP: Um guia sensato para devs preocupados com segurança

Explicando segurança e privacidade com Wireshark (2017)
Explicando segurança e privacidade com Wireshark (2017)Explicando segurança e privacidade com Wireshark (2017)
Explicando segurança e privacidade com Wireshark (2017)Euler Neto
 
Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...
Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...
Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...Jeronimo Zucco
 
Palestra criando aplicações seguras com php (2)
Palestra  criando aplicações seguras com php (2)Palestra  criando aplicações seguras com php (2)
Palestra criando aplicações seguras com php (2)Leandro Lugaresi
 
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...Deep Tech Brasil
 
Introdução à Segurança da Informação
Introdução à Segurança da InformaçãoIntrodução à Segurança da Informação
Introdução à Segurança da InformaçãoVinicius Marangoni
 
Palestra - Darkmira Tour PHP 2016 - A ilusão das referências sobre desenvolv...
Palestra - Darkmira Tour PHP 2016  - A ilusão das referências sobre desenvolv...Palestra - Darkmira Tour PHP 2016  - A ilusão das referências sobre desenvolv...
Palestra - Darkmira Tour PHP 2016 - A ilusão das referências sobre desenvolv...Thiago Dieb
 
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Alcyon Ferreira de Souza Junior, MSc
 
Começando com Quorum - versão 2.6
Começando com Quorum - versão 2.6Começando com Quorum - versão 2.6
Começando com Quorum - versão 2.6Jeff Prestes
 
Tenha mais privacidade utilizando ferramentas open source em tempos de vigilâ...
Tenha mais privacidade utilizando ferramentas open source em tempos de vigilâ...Tenha mais privacidade utilizando ferramentas open source em tempos de vigilâ...
Tenha mais privacidade utilizando ferramentas open source em tempos de vigilâ...Ricardo Maganhati Junior
 
Criptografia P2P - Comunicadores Instantâneos
Criptografia P2P - Comunicadores InstantâneosCriptografia P2P - Comunicadores Instantâneos
Criptografia P2P - Comunicadores InstantâneosRaphael Queiroz
 
Desenvolvimento web seguro cookies - Rodolfo Stangherlin
Desenvolvimento web seguro cookies - Rodolfo StangherlinDesenvolvimento web seguro cookies - Rodolfo Stangherlin
Desenvolvimento web seguro cookies - Rodolfo StangherlinTchelinux
 
#TheDevConf 2018 - spring boot ionic oauth2
#TheDevConf 2018 - spring boot ionic oauth2#TheDevConf 2018 - spring boot ionic oauth2
#TheDevConf 2018 - spring boot ionic oauth2Luiz Avila
 
TDC2018SP | Trilha Java Enterprise - Protegendo sua API Spring Boot com OAuth2
TDC2018SP | Trilha Java Enterprise - Protegendo sua API Spring Boot com OAuth2TDC2018SP | Trilha Java Enterprise - Protegendo sua API Spring Boot com OAuth2
TDC2018SP | Trilha Java Enterprise - Protegendo sua API Spring Boot com OAuth2tdc-globalcode
 
Desenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPDesenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPFlavio Souza
 
CWI - Núcleo de tecnologia - OWASP Top Ten
CWI - Núcleo de tecnologia - OWASP Top TenCWI - Núcleo de tecnologia - OWASP Top Ten
CWI - Núcleo de tecnologia - OWASP Top TenPOANETMeetup
 
CJR Apresenta: OWASP TOP10
CJR Apresenta: OWASP TOP10CJR Apresenta: OWASP TOP10
CJR Apresenta: OWASP TOP10CJR, UnB
 
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...Clavis Segurança da Informação
 

Similaire à Segurança em APIs HTTP: Um guia sensato para devs preocupados com segurança (20)

Segurança em PHP
Segurança em PHPSegurança em PHP
Segurança em PHP
 
Explicando segurança e privacidade com Wireshark (2017)
Explicando segurança e privacidade com Wireshark (2017)Explicando segurança e privacidade com Wireshark (2017)
Explicando segurança e privacidade com Wireshark (2017)
 
Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...
Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...
Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...
 
Palestra criando aplicações seguras com php (2)
Palestra  criando aplicações seguras com php (2)Palestra  criando aplicações seguras com php (2)
Palestra criando aplicações seguras com php (2)
 
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
[DTC21] Rodrigo Branas - Segurança na Web: Será que o seu sistema está realme...
 
Desenvolvimento seguro - WorkSec 2019
Desenvolvimento seguro - WorkSec 2019Desenvolvimento seguro - WorkSec 2019
Desenvolvimento seguro - WorkSec 2019
 
Introdução à Segurança da Informação
Introdução à Segurança da InformaçãoIntrodução à Segurança da Informação
Introdução à Segurança da Informação
 
Palestra - Darkmira Tour PHP 2016 - A ilusão das referências sobre desenvolv...
Palestra - Darkmira Tour PHP 2016  - A ilusão das referências sobre desenvolv...Palestra - Darkmira Tour PHP 2016  - A ilusão das referências sobre desenvolv...
Palestra - Darkmira Tour PHP 2016 - A ilusão das referências sobre desenvolv...
 
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
 
Começando com Quorum - versão 2.6
Começando com Quorum - versão 2.6Começando com Quorum - versão 2.6
Começando com Quorum - versão 2.6
 
Tenha mais privacidade utilizando ferramentas open source em tempos de vigilâ...
Tenha mais privacidade utilizando ferramentas open source em tempos de vigilâ...Tenha mais privacidade utilizando ferramentas open source em tempos de vigilâ...
Tenha mais privacidade utilizando ferramentas open source em tempos de vigilâ...
 
Criptografia P2P - Comunicadores Instantâneos
Criptografia P2P - Comunicadores InstantâneosCriptografia P2P - Comunicadores Instantâneos
Criptografia P2P - Comunicadores Instantâneos
 
Desenvolvimento web seguro cookies - Rodolfo Stangherlin
Desenvolvimento web seguro cookies - Rodolfo StangherlinDesenvolvimento web seguro cookies - Rodolfo Stangherlin
Desenvolvimento web seguro cookies - Rodolfo Stangherlin
 
#TheDevConf 2018 - spring boot ionic oauth2
#TheDevConf 2018 - spring boot ionic oauth2#TheDevConf 2018 - spring boot ionic oauth2
#TheDevConf 2018 - spring boot ionic oauth2
 
TDC2018SP | Trilha Java Enterprise - Protegendo sua API Spring Boot com OAuth2
TDC2018SP | Trilha Java Enterprise - Protegendo sua API Spring Boot com OAuth2TDC2018SP | Trilha Java Enterprise - Protegendo sua API Spring Boot com OAuth2
TDC2018SP | Trilha Java Enterprise - Protegendo sua API Spring Boot com OAuth2
 
Desenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHPDesenvolvendo sistemas seguros com PHP
Desenvolvendo sistemas seguros com PHP
 
CWI - Núcleo de tecnologia - OWASP Top Ten
CWI - Núcleo de tecnologia - OWASP Top TenCWI - Núcleo de tecnologia - OWASP Top Ten
CWI - Núcleo de tecnologia - OWASP Top Ten
 
OWASP Top Ten
OWASP Top TenOWASP Top Ten
OWASP Top Ten
 
CJR Apresenta: OWASP TOP10
CJR Apresenta: OWASP TOP10CJR Apresenta: OWASP TOP10
CJR Apresenta: OWASP TOP10
 
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
Tutorial: Principais Vulnerabilidades em Aplicações Web – Rafael Soares Ferre...
 

Plus de Luis Cipriani

Adventures with Raspberry Pi and Twitter API
Adventures with Raspberry Pi and Twitter APIAdventures with Raspberry Pi and Twitter API
Adventures with Raspberry Pi and Twitter APILuis Cipriani
 
Capturando o pulso do planeta com as APIs de Streaming do Twitter
Capturando o pulso do planeta com as APIs de Streaming do TwitterCapturando o pulso do planeta com as APIs de Streaming do Twitter
Capturando o pulso do planeta com as APIs de Streaming do TwitterLuis Cipriani
 
Twitter e suas APIs de Streaming - Campus Party Brasil 7
Twitter e suas APIs de Streaming - Campus Party Brasil 7Twitter e suas APIs de Streaming - Campus Party Brasil 7
Twitter e suas APIs de Streaming - Campus Party Brasil 7Luis Cipriani
 
API Caching, why your server needs some rest
API Caching, why your server needs some restAPI Caching, why your server needs some rest
API Caching, why your server needs some restLuis Cipriani
 
Explaining A Programming Model for Context-Aware Applications in Large-Scale ...
Explaining A Programming Model for Context-Aware Applications in Large-Scale ...Explaining A Programming Model for Context-Aware Applications in Large-Scale ...
Explaining A Programming Model for Context-Aware Applications in Large-Scale ...Luis Cipriani
 
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...Luis Cipriani
 
Como um verdadeiro sistema REST funciona: arquitetura e performance na Abril
Como um verdadeiro sistema REST funciona: arquitetura e performance na AbrilComo um verdadeiro sistema REST funciona: arquitetura e performance na Abril
Como um verdadeiro sistema REST funciona: arquitetura e performance na AbrilLuis Cipriani
 
Explaining Semantic Web
Explaining Semantic WebExplaining Semantic Web
Explaining Semantic WebLuis Cipriani
 
Hbase: Introduction to column oriented databases
Hbase: Introduction to column oriented databasesHbase: Introduction to column oriented databases
Hbase: Introduction to column oriented databasesLuis Cipriani
 
Case Abril: Tracking real time user behavior in websites Homes with Ruby, Sin...
Case Abril: Tracking real time user behavior in websites Homes with Ruby, Sin...Case Abril: Tracking real time user behavior in websites Homes with Ruby, Sin...
Case Abril: Tracking real time user behavior in websites Homes with Ruby, Sin...Luis Cipriani
 
Fearless HTTP requests abuse
Fearless HTTP requests abuseFearless HTTP requests abuse
Fearless HTTP requests abuseLuis Cipriani
 

Plus de Luis Cipriani (11)

Adventures with Raspberry Pi and Twitter API
Adventures with Raspberry Pi and Twitter APIAdventures with Raspberry Pi and Twitter API
Adventures with Raspberry Pi and Twitter API
 
Capturando o pulso do planeta com as APIs de Streaming do Twitter
Capturando o pulso do planeta com as APIs de Streaming do TwitterCapturando o pulso do planeta com as APIs de Streaming do Twitter
Capturando o pulso do planeta com as APIs de Streaming do Twitter
 
Twitter e suas APIs de Streaming - Campus Party Brasil 7
Twitter e suas APIs de Streaming - Campus Party Brasil 7Twitter e suas APIs de Streaming - Campus Party Brasil 7
Twitter e suas APIs de Streaming - Campus Party Brasil 7
 
API Caching, why your server needs some rest
API Caching, why your server needs some restAPI Caching, why your server needs some rest
API Caching, why your server needs some rest
 
Explaining A Programming Model for Context-Aware Applications in Large-Scale ...
Explaining A Programming Model for Context-Aware Applications in Large-Scale ...Explaining A Programming Model for Context-Aware Applications in Large-Scale ...
Explaining A Programming Model for Context-Aware Applications in Large-Scale ...
 
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
 
Como um verdadeiro sistema REST funciona: arquitetura e performance na Abril
Como um verdadeiro sistema REST funciona: arquitetura e performance na AbrilComo um verdadeiro sistema REST funciona: arquitetura e performance na Abril
Como um verdadeiro sistema REST funciona: arquitetura e performance na Abril
 
Explaining Semantic Web
Explaining Semantic WebExplaining Semantic Web
Explaining Semantic Web
 
Hbase: Introduction to column oriented databases
Hbase: Introduction to column oriented databasesHbase: Introduction to column oriented databases
Hbase: Introduction to column oriented databases
 
Case Abril: Tracking real time user behavior in websites Homes with Ruby, Sin...
Case Abril: Tracking real time user behavior in websites Homes with Ruby, Sin...Case Abril: Tracking real time user behavior in websites Homes with Ruby, Sin...
Case Abril: Tracking real time user behavior in websites Homes with Ruby, Sin...
 
Fearless HTTP requests abuse
Fearless HTTP requests abuseFearless HTTP requests abuse
Fearless HTTP requests abuse
 

Segurança em APIs HTTP: Um guia sensato para devs preocupados com segurança