Тёмный

OAuth + OpenID com Spring Security e Keycloak! 

Giuliana Bezerra
Подписаться 16 тыс.
Просмотров 5 тыс.
50% 1

Tutorial mão na massa para configurar um projeto com Spring Security como client Oauth do Keycloak!
🤩 Seja membro deste canal e ganhe benefícios:
/ @giulianabezerra
💻 Github: giuliana-bezerra/spring-security-keycloak
🌟 Conheça também os meus conteúdos em outras plataformas:
Blog: / giuliana-bezerra
Curso sobre Spring Batch: tinyurl.com/curso-springbatch
Curso sobre otimização de jobs Spring Batch: tinyurl.com/curso-sb-otimizacao
Curso sobre testes com Spring Boot: tinyurl.com/curso-testes-spri...
Curso sobre AdonisJS: tinyurl.com/curso-adonisjs

Наука

Опубликовано:

 

10 дек 2023

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 65   
@_mullerg
@_mullerg 4 месяца назад
Eu quebrando cabeça que só validava no offline até achar esse conteudo maravilhoso. Obrigado
@dvasconsilva
@dvasconsilva Месяц назад
Parabéns pelo conteúdo e didática.
@jaymesanches
@jaymesanches 5 месяцев назад
Bom demais, fiquei dias pesquisando e você mostrou de maneira muito fácil de entender. Obrigado.
@rafaelteixeira3385
@rafaelteixeira3385 7 месяцев назад
muito bom o conteúdo
@EduardoAparecido-kh1qc
@EduardoAparecido-kh1qc 3 месяца назад
Finalmente entendi pelo exemplo que você demonstrou ! Parabéns pela didática !
@mgmoura
@mgmoura 7 месяцев назад
Obrigado, seus vídeos são sempre MUITO bons
@user-dw2bd1ct3c
@user-dw2bd1ct3c 4 месяца назад
Excelente aula.
@beatrizgomes8077
@beatrizgomes8077 2 месяца назад
Depois de assistir diversos vídeos e ler diversos tutoriais, foi aqui que eu finalmente consegui entender e colocar em prática. Muito obrigada!!
@giulianabezerra
@giulianabezerra 2 месяца назад
Que bom que ajudou, sucesso!
@kristiannrocha6394
@kristiannrocha6394 2 месяца назад
Que video bom, me ajudou muito a entender a ferramenta do keycloak, queria agora entender as questoões de roles e como essas roles poderiam ser implementadas nesse pojeto.
@JeffersonLuizCruz
@JeffersonLuizCruz 4 месяца назад
Deu pra entender o conceito muito bem. Conteúdo top
@pedroferreiracjr
@pedroferreiracjr 7 месяцев назад
Olá Giuliana Bezerra. Ótima explicação sobre o Keycloak, gostei bastante, bem direto ao ponto. Além do mais, realmente o Keycloak é muito usado, já tive projetos com ele em uma das empresas que trabalhei, mas sempre fiquei com o pé atrás sobre esse assunto. Esse é o pontapé inicial para maiores discussões sobre o assunto. Muito obrigado pelo conteúdo, ajudou bastante.😊.
@leonardo5695627
@leonardo5695627 3 месяца назад
OAuth é bem legal! Ótimo vídeo!
@AndersonSantos-ur4nf
@AndersonSantos-ur4nf 2 месяца назад
Parabéns, muito didático e útil esse conteúdo. Seus videos são excelentes.
@giulianabezerra
@giulianabezerra 2 месяца назад
Obrigada! 🙏
@thiagonunes3619
@thiagonunes3619 7 месяцев назад
braba demais!
@julios-ia4511
@julios-ia4511 7 месяцев назад
Maravilha!!! Só tinha ouvido falar desse carinha, vou refazer as aulas e testar o keycloak
@giulianabezerra
@giulianabezerra 7 месяцев назад
Sucesso! 🤩🙏
@fernando_borg3s
@fernando_borg3s 7 месяцев назад
Eu estava comentando com um amigo sobre como eu estava querendo integrar uma aplicação spring com o Keycloak esses dias e do nada esse vídeo toooop! 😂❤
@giulianabezerra
@giulianabezerra 7 месяцев назад
Que ótimo! Sucesso aí na sua integração 😉
@sistemasjjinformatica1062
@sistemasjjinformatica1062 5 месяцев назад
Tope mais!
@AntonioCabralNumberOne
@AntonioCabralNumberOne 3 месяца назад
Video maravilhoso! Sem dúvida o melhor que vi sobre este assunto. Só falta 3 coisas que gostaria de pedir que pudesses fazer num próximo vídeo: - Como renovar o token com o refresh_token, pois neste exemplo considerando que nada foi alterado no Keycloak, o token expira ao fim de 5 minutos. - Como ter controlo mais "fine-grained" da autenticação em termos de roles, permissions e groups? - Este exemplo é bom para um backend, mas como fazer para um frontend como p.e. Vue? Ficaria eternamente agradecido! 🤩🥳
@giulianabezerra
@giulianabezerra 3 месяца назад
Obrigada pelo apoio! Já anotei aqui tua sugestão ;)
@joaogabrielv.m328
@joaogabrielv.m328 7 месяцев назад
Giu tá lendo meus pensamentos, cara, só pode. Consegui minha primeira vaga de Jr a pouco tempo e um dos projetos que devo ajudar a tocar é justamente com Keycloak (apesar de .NET no back-end). Like!!!!
@giulianabezerra
@giulianabezerra 7 месяцев назад
Assim é bom né? Parabéns pela vaga, espero que o vídeo ajude, e qualquer coisa manda sugestão de assuntos tbm! 👏🏻😉
@filipecanatto9463
@filipecanatto9463 3 месяца назад
Parabens pelo video, como sugestão de proximo video seria legal usar o Keycloak para fazer Basic Auth. Por exemplo cadatrando os usuarios e password no Keycloak e posteriormente usando eles para autenticar com usuario e senha via basic authorization.
@giulianabezerra
@giulianabezerra 3 месяца назад
Anotado!
@ImperialRN
@ImperialRN 5 месяцев назад
Linda, vc é D+, muito obrigado por essa aula!
@jaironascimentosousa
@jaironascimentosousa 7 месяцев назад
Ola, passei a acompanhar seu videos e são muito bons, poderia criar um curso sobre segurança spring security, oauth e keycloak ou outro provider. vlw!
@giulianabezerra
@giulianabezerra 7 месяцев назад
Está nos planos, obrigada pela sugestão! 🙏
@nilton5366
@nilton5366 7 месяцев назад
Excelente, já te conhecia dos excelentes cursos seus da udemy, parabéns! Seria possível fazer um vídeo falando como e os benefícios de usar specification na aplicação.
@giulianabezerra
@giulianabezerra 7 месяцев назад
Claro, vou anotar aqui!
@VictorTavares27
@VictorTavares27 7 месяцев назад
Ótimo vídeo, seria interessante tbm explicar como funciona o processo de autorização de consumos de endpoints em microssevicos diferentes, meus parabéns
@giulianabezerra
@giulianabezerra 7 месяцев назад
Victor, na playlist sobre segurança tem um vídeo que fala sobre spring security onde eu mostro a visão de vários serviços dentro do oauth e como a gente faz pra autenticar. Mas no caso de microsserviços eu vou trazer em breve um pattern chamado access token que vai demonstrar como a gente centraliza essas preocupações ortogonais num ecossistema de microsserviços, fica de olho ;)
@franzecs1
@franzecs1 6 месяцев назад
Muito explicativo, gostaria de um video mostrando como configurar SSO usando o keycloak
@giulianabezerra
@giulianabezerra 6 месяцев назад
Sugestão anotada!
@consubr
@consubr 7 месяцев назад
Um bom tema para vídeo seria monolito modular em java, mas já solução viável e profissional, fikdik. Obg.
@giulianabezerra
@giulianabezerra 7 месяцев назад
Esse tema tá na minha lista, tenho um projeto pronto sobre isso falta roteirizar pro vídeo, obrigada!
@contaassinante5984
@contaassinante5984 4 месяца назад
muito bom! mas como ter o cadastro de usuarios, qual melhor estrategia poderia ensinar uma api de cadastro de usuario? adoraria aula
@giulianabezerra
@giulianabezerra 4 месяца назад
Sugestão anotada!
@MatheusLima-yn9fx
@MatheusLima-yn9fx 7 месяцев назад
Ótimo conteúdo e excelente didática, parabéns. No caso se eu quiser trocar o servidor de autorização para Facebook, GitHub e outros, teria toda essa flexibilidade de só alterar as configurações no application'properties?
@giulianabezerra
@giulianabezerra 7 месяцев назад
Exatamente, essa é a mágica de seguir uma especificação como o Oauth, basta apenas ajustar as propriedades para que o protocolo se adapte a diferentes auth servers.
@3d1l50n
@3d1l50n 6 месяцев назад
Giulina excelente explicação, só fiquei em duvida em um conceito relacionado ao keycloak, sobre os papeis do realm e do client-id, poderia dar uma explanação melhor, tenho uma situação parecida aqui e ficou meio confuso, de pois da sua abordagem. E parabens pelos videos!
@petroniobonavides3530
@petroniobonavides3530 7 месяцев назад
Professora, o Igor Rudel tem uma série(Spring Boot Dicas) de "como" ele estrutura os projetos(aplicações rest)dele em Spring boot. Poderia dar a sua versão dessa playlist? Como você estrutura, e quais as suas dicas, para a escrita de uma App em Spring Boot?
@giulianabezerra
@giulianabezerra 7 месяцев назад
Boa! Anotado aqui, irei providenciar :)
@thiagofigueiredos
@thiagofigueiredos Месяц назад
Oi Giuliana. Seus vídeos são muito bons! Eu fiquei com uma dúvida, como fazer para confirmar o spring no caso de existirem várias realms e credenciais diferentes? Obrigado!
@giulianabezerra
@giulianabezerra Месяц назад
Em relação ao cenário multi-tenant eu devo trazer em breve um vídeo a respeito. Nesse cenário um mesmo resource server conseguiria aceitar tokens de diferentes tenants.
@ivonildolopes
@ivonildolopes 7 месяцев назад
Ótimo conteúdo, seria interessante um crud de novos usuários por uma api spring
@giulianabezerra
@giulianabezerra 7 месяцев назад
O mais comum é cadastrar esses users pelo idp configurado, pelo menos na empresa que trabalho funciona assim. Mas seria simples fazer uma api que conecta ao idp pro cadastro, seja ele um banco relacional, LDAP, ou nosql, com spring data tudo é possível 😁
@filipefernandes7252
@filipefernandes7252 7 месяцев назад
Obrigado mais uma vez pela sua dedicação. Tenho uma pergunta sobre essa parte de segurança, se alguém pegar o token no meio do caminho, mesmo com https, tem como evitar q esse token seja usado para sequestrar a sessão? Sei q tem mais coisas além do token mas quem intercepta o token tbm pode interceptar todo o header
@giulianabezerra
@giulianabezerra 7 месяцев назад
Se alguém pegar o token já era, se ele for jwt não pode ser expirado como um token opaco por ser stateless, então estará usável durante o seu período de validade. O que dá pra fazer é caso se saiba o token que vazou criar uma blacklist. Por isso os tokens devem ser emitidos com duração pequena.
@filipefernandes7252
@filipefernandes7252 7 месяцев назад
@@giulianabezerra essa duração é outra dúvida, o que adianta deixar uma duração pequena se o refresh token tem duração maior? Se alguém pega o token tbm pode pegar o refresh token da mesma forma
@giulianabezerra
@giulianabezerra 7 месяцев назад
@@filipefernandes7252, aí que tá, o refresh token de fato vc não pode deixar vazar, e ele só é obtido no fluxo do oauth e apenas quando for enviado para renovação. Mas de fato existe esse problema e é por isso que muita gente prefere não usar Refresh Token, pq se ele vazar, o prejuízo é muito maior. Mas segurança é assim tá, quanto mais a gente entende mais a gente vê sua vulnerabilidade 😅
@filipefernandes7252
@filipefernandes7252 7 месяцев назад
@@giulianabezerra é isso que eu tenho visto em meus estudos, vc prepara toda uma segurança mas o meio de comunicação ainda é falho. E se eu guardar o IP do usuário dentro do token para validar se é ele mesmo q esta acessando a api?
@giulianabezerra
@giulianabezerra 7 месяцев назад
​@@filipefernandes7252, então, essa seria uma whitelist, mas pode ser super problemático pq muitas pessoas acessam com IP dinâmico. Realmente é falho, mas oq a gente faz é mitigar o risco de ataques diminuindo o tempo do token e usando cors e pkce para dificultar os ataques. É assim mesmo, quanto mais a gente entende mais a gente vê falhas :)
@eduux7
@eduux7 6 месяцев назад
Seria possível utilizar o keycloak em um projeto jsf com java 8? Se sim, uma dica?
@diegoeduardodasilvasantos8
@diegoeduardodasilvasantos8 6 месяцев назад
Conteudo muito bom, estou com uma duvida, quando entro no lugar de aparecer para fazer login está dando um erro "We are sorry... Invalid parameter: redirect_uri"
@giulianabezerra
@giulianabezerra 6 месяцев назад
Testa numa aba anônima, se ainda assim não funcionar da uma olhada no projeto do github, tem o link na descrição
@diegoeduardodasilvasantos8
@diegoeduardodasilvasantos8 5 месяцев назад
@@giulianabezerra Deu certo, muito obrigado
@diegoeduardodasilvasantos8
@diegoeduardodasilvasantos8 5 месяцев назад
@@giulianabezerra Estou com mais uma dificuldade, como faço para direcionar para uma arquivo tipo .php ou .html apos o link ?
@kristiannrocha6394
@kristiannrocha6394 3 месяца назад
como ficaria o fluxo dessa aplicação?
@avnercaleb8867
@avnercaleb8867 8 месяцев назад
Eu ainda tô apanhando no outro vídeo, com OpenID 😂
@giulianabezerra
@giulianabezerra 8 месяцев назад
Vê ele com calma, tá bem explicadinho
@user-xv9oy1ll5q
@user-xv9oy1ll5q 5 месяцев назад
Muito bom o conteúdo, consegui implementar na versão 3.2.3 do springboot com alguns pequenos ajustes, só fiquei na dúvida de como obter o token nas chamadas de endpoints privados, preciso por sempre o parâmetro @AuthenticationPrincipal Jwt jwt ?
Далее
Aulão: Spring Security 6 + JWT!
32:54
Просмотров 11 тыс.
O que você deveria saber sobre Oauth 2.0 e OpenID!
23:40
Бмв сгорела , это нормально?
01:01
Викторина от ПАПЫ 🆘 | WICSUR #shorts
00:56
Introdução à Mensageria com Spring e Kafka
19:10
Просмотров 9 тыс.
Desafio Vagas: API de tarefas com Spring Boot!
39:33
Просмотров 25 тыс.
Spring Boot Graceful - A Dica!
6:35
Просмотров 489
Securing a React App with Keycloak | OpenID Connect
14:58
KEYCLOAK with Spring Boot & Angular | Step by Step Guide
2:28:55
CDC na prática com Kafka Connect!
22:08
Просмотров 2,4 тыс.
COMO TRATAR EXCEÇÕES NO JAVA SPRING
18:32
Просмотров 14 тыс.