¿Cómo crear el login? Spring Boot 3 + Spring Security 6 + JWT Authentication

Поделиться
HTML-код
  • Опубликовано: 27 дек 2024

Комментарии • 418

  • @aramirezunimarc
    @aramirezunimarc 8 месяцев назад +9

    te ame como explicas, estab ahaciendo un curso en udemy de java spring la ultima seccion del curso era implementar spring security pero el profesor en este caso dejo bastante que desear ya que ni el demostraba saber sobre la configuracion, gracias por explicar tan bien y por existir jajajjaja

  • @christianenriquevillamoral6140
    @christianenriquevillamoral6140 Год назад +13

    Hay muchos conceptos que no entendía en muchos tutoriales, tiran código sin explicar, Gracias.

  • @ronaldgarciavazquez8232
    @ronaldgarciavazquez8232 8 месяцев назад +2

    Eres realmente buena explicando, mis agradecimientos y felicitaciones por tener tan claras las ideas y una línea clara de lo que intentas transmitir

  • @thornadusgames
    @thornadusgames Год назад +9

    La explicación es perfecta, entiendo todo fácilmente... Te felicito, pero más felicito al que logre dar con tus videos porque habrá encontrado un gran tesoro. Muchas gracias por compartir tus conocimientos.

  • @elbrujox
    @elbrujox 5 месяцев назад +1

    Mis felicitaciones, incluso aprendí de robote cosas que ignoraba se podían hacer. Muy bien explicado y mejor aún por compartir el código. Like bien ganado.

  • @theididi3448
    @theididi3448 10 месяцев назад +4

    Este video me a salvado tenia el error de 401 hace dias es el primer video que me explique paso a paso para que me vuelva a funcionar

    • @irojascorsico
      @irojascorsico  10 месяцев назад

      Genial!! Abrazo!

    • @Kendryd_123
      @Kendryd_123 2 месяца назад

      A mi me sale :/. Podrias decirme como lo solucionaste?

  • @Carlos-gj1wj
    @Carlos-gj1wj Месяц назад

    Llevo 10 min y me encanta como explicas, espero los otros 50 no defrauden! Thanks for sharing

  • @elgriego6288
    @elgriego6288 9 месяцев назад +1

    Te ganaste un suscriptor y un lugarcito de mi corazon. Al fin alguien explica sin decir que pone esto aca y alla sin contexto.
    Genia.

    • @irojascorsico
      @irojascorsico  9 месяцев назад

      @elgriego6288 Me alegro mucho!! Abrazo!

  • @denjiuzumaki4309
    @denjiuzumaki4309 Месяц назад

    porfin un video que explica paso a paso y el porque de las funciones, gracias muy bueno

  • @jumpering1
    @jumpering1 Месяц назад

    Super bien explicado, sobretodo siendo un tema tan difícil. Muchísimas gracias!!

  • @21Survival
    @21Survival Месяц назад

    Me quedé sin palabras. Uno de los mejores canales que he visitado.

  • @hgaletti1
    @hgaletti1 7 месяцев назад +2

    Genial tu video Ivana. Estaría re bueno ver el tema de agregar esto a un microservicio gateway para redireccionar las solicitudes, así solo está en el gateway y no en cada microservicio de negocio. Felicitaciones de nuevo!

  • @samueljimenez9017
    @samueljimenez9017 8 месяцев назад

    IVanna de veras que muchas gracias por compartirnos todo tu conocimiento tan bien explicado. Saludos desde Colombia

  • @KevinOliveros-gw7fe
    @KevinOliveros-gw7fe 7 месяцев назад +2

    La explicación magistral, una sugerencia, no sé como se haga, seria segmentar el video por partes de tal minuto a tal minuto, para el que necesite sólo una parte en concreto jeje.

  • @sebastiane.r.4195
    @sebastiane.r.4195 11 месяцев назад

    Muchisimas gracias ! De verdad que ha sido de gran ayuda . En google nada mas que te salen puras guias malas y nadie explica nada al detalle y la documentación oficial no es muy clara. De verdad , muchas gracias❤

    • @irojascorsico
      @irojascorsico  11 месяцев назад

      Gracias por tus comentarios @sebastiane.r.4195 . Justamente por esa razón es que comencé a producir estos videos. Abrazo!

  • @vadak_
    @vadak_ 4 месяца назад

    Qué buena explicación, de verdad muchas gracias! Fue el único tutorial que logré entender a full.

  • @jhonsthalymillageronimo3182
    @jhonsthalymillageronimo3182 5 месяцев назад +1

    Muchas gracias de verdad esta muy bueno como se genera un token, muy bien explicado de forma teórica y practica, sencillo de entender, eres toda una capa. Seria bueno que también hagas una parte en el frontend con react o angular. Eh visto que tiene pocos videos, sigue subiendo más si es que tienes tiempo, porque la verdad que si aprendi mucho.

  • @guillermoriosp
    @guillermoriosp 6 месяцев назад +1

    Excelente video, la explicación muy clara, en el tutorial se desactivaron el tema de sesiones, te agradeceríamos si puedes crear un video explicando ese tema y utilizándolo por ejemplo que un usuario no pueda hacer login más de una vez en diferentes partes o desde otro navegador, para temas de seguridad. muchas gracias.

  • @nicolasrocca
    @nicolasrocca 7 месяцев назад +1

    Ivana me acabas de salvar la vida! Estuve peleando con esto como por dos meses. Mil Gracias!!!

  • @ghera196
    @ghera196 11 месяцев назад +1

    Muchas gracias por el excelente contenido, sobre todo por la claridad en tus explicaciones que ayudan un montón en digerir el contenido. Saludos.

    • @irojascorsico
      @irojascorsico  11 месяцев назад

      Muchísimas gracias @ghera196!!

  • @ivansebastiannunez9953
    @ivansebastiannunez9953 Год назад +5

    Felicitaciones! Excelente contenido para la comunidad proporcionando información valiosa a detalle. Me has permitido ampliar mis conocimientos. Deseo que tu canal crezca. Manito arriba para mas videos de calidad y excelencia. Saludos

  • @eloyhuallamaperez5225
    @eloyhuallamaperez5225 Год назад +2

    ¡Excelente video! Estoy implementando una aplicación de microservicios, y este contenido me ha servido muchísimo.

  • @vicentepriegoaviles4844
    @vicentepriegoaviles4844 3 месяца назад

    Gracias por el video, muy bien explicado y con bonitos diagramas, de lo mejor que he visto en mucho tiempo

  • @PabloBarraLillo
    @PabloBarraLillo Год назад +2

    Nuevamente, muchas gracias Ivana!
    Saludos desde Chile.

  • @lucasgaletti6847
    @lucasgaletti6847 3 месяца назад +1

    Excelente video muy muy bien explicado! Deje unos comentarios en el repo por que con las nuevas actualización de las librerías se deprecaron algunos métodos!

  • @camaro0km
    @camaro0km Год назад +2

    Muchas gracias Ivana por compartir esto, me salvó la tarea :)

  • @enzoaguirre9658
    @enzoaguirre9658 Год назад +1

    Hola Ivana, muchas gracias por este contenido. Espero te encuentres bien :)

  • @hugoemartinez6810
    @hugoemartinez6810 7 месяцев назад +1

    Muchas gracias Ivana, me has ayudado mucho con este video. Te agradezco un monton.

  • @madnano72
    @madnano72 7 месяцев назад +1

    Excelente, sin desperdicio!!! Muchas Gracias!

  • @walterfernandez9070
    @walterfernandez9070 5 месяцев назад

    Una genia total la verdad, no cualquiera lo puede hacer con tanta calidad eh!

  • @diegomatallana7994
    @diegomatallana7994 5 месяцев назад

    Buenisimo esta clase ivana muchisimas gracias, ahora si esto lo tengo que hacer solo me mato jsajsaja, pero ahora para adelante y a aprender cada clase y metodo 💪💪

  • @santiagocalero5752
    @santiagocalero5752 Год назад

    Muchas Gracias por este tutorial, que Buena explicacion y que voz tan hermosa Saludos desde Colombia

  • @therayo0524
    @therayo0524 Год назад +3

    Hola magnifico video, esperando la continuidad con los roles y protegiendo las rutas, Muchas Gracias

    • @joselorenzo8772
      @joselorenzo8772 Год назад +1

      También me interesa ver el tema de Roles en rutas pues me he encontrado cambios en la 3.1.2 de spring boot que no me esta filtrando/funcionando por roles

  • @fabriciosaucedo8128
    @fabriciosaucedo8128 Год назад +6

    Excelente video! Me ayudó un montón para entender de manera simple y corta los temas. Sería genial para próximos videos un ejemplo de como integrar con un login dado por el front. Saludos!!

    • @irojascorsico
      @irojascorsico  Год назад +6

      Hola Fabricio, ese será el próximo video. Saludos!

    • @yovanies2798
      @yovanies2798 11 месяцев назад

      @@irojascorsicoexcelente tutorial, aquí un nuevo suscriptor.

  • @manuelvalderrama8175
    @manuelvalderrama8175 3 месяца назад

    GRACIAS, como me sacaste de una aprieto, muy buen video.

  • @rafaelcamarena2256
    @rafaelcamarena2256 Год назад +1

    muy bien explicado... Aunque springboot no lo pone facil muchos clases para llegar al resultado

  • @juanfelipero
    @juanfelipero 2 месяца назад

    Ivana eres lo máximo, excelente tutorial

  • @danielbeltran6065
    @danielbeltran6065 Год назад +2

    Estaba esperando este video!, sigue así por favor, esto es contenido de calidad!

  • @MultiCrashcar
    @MultiCrashcar 4 месяца назад

    Wuauu! Ojala hubiese tenido este video en 2022 cuando estaba haciendo mi proyecto final, cómo has aprendido tanto de java + sb? Me sorprende ver tanto conocimiento, ojala un dia pueda tener todos esos conocimientos jeje gracias por el tuto

  • @alexischavarria7634
    @alexischavarria7634 Год назад +2

    Encantado como explica con tanto detalle

  • @joqueselo
    @joqueselo Год назад +1

    GRACIAS DE VERDAD, LLEVO DESDE LA MAÑANA SIGUIENDO TU VIDEO Y FINALMENTE ME RESULTÓ MIL MIL GRACIAS

  • @rovallejoa
    @rovallejoa 6 месяцев назад +1

    Muy bien explicado, felicitaciones!.

  • @christianpaul6701
    @christianpaul6701 11 месяцев назад +1

    GRACIAS A TU VIDEO YA MISMO ACABO LA TESIS, SALUDOS

  • @charlieaular2376
    @charlieaular2376 7 месяцев назад

    Muchas gracias por éste contenido, ésto sí es contenido de calidad. De verdad muchas gracias!!!

  • @juliovazquezabarca5345
    @juliovazquezabarca5345 7 месяцев назад +1

    Muchas gracias por el video Ivana! Me sirvió!

  • @erikahernandez2735
    @erikahernandez2735 Год назад +1

    Excelente video y explicación me saco de muchos vacíos que tenia sobre el tema . Esperando tu próximo video 👍

  • @samuelpaucar6630
    @samuelpaucar6630 2 месяца назад

    muy bueno el video, cada paso detallado, excelente

  • @gonzaloquiroga7761
    @gonzaloquiroga7761 Год назад +2

    Mil, pero mil gracias Maestra.

  • @AbigorLuna
    @AbigorLuna Год назад +2

    Porque no usas las etiquetas @Autowire cuando utilizas el servicio y el repositorio??

    • @irojascorsico
      @irojascorsico  11 месяцев назад +4

      Hola @AbigorLuna, muy buena pregunta!! Dado que la dependencia del servicio o repositorio es obligatoria, la inyección por medio del constructor utilizando la anotación @RequiredArgsConstructor de Lombok y private final es la más recomendada porque:
      - las dependencias se vuelven inmutables después de la creación del objeto, lo que hace un código de más calidad ya que aumenta la seguridad de los subprocesos y reduce posibles efectos secundarios,
      - facilita las pruebas unitarias
      - declara explícitamente las dependencias requeridas.
      Es importante agregar que, Spring Boot recomienda la inyección por constructor por sobre las inyecciones de dependencias por campos (a menos que éstas sean muchas).
      Espero haber respondido a tu pregunta. Abrazo!

  • @loregarcia8795
    @loregarcia8795 Год назад +2

    Muchas gracias por el video Profe!!! Me socó muchisimas dudas. Saludos cordiales.

  • @felipesegovia3631
    @felipesegovia3631 Год назад +1

    Muy buena explicación, felicitaciones y muchas gracias por tu contenido

  • @maxpoblete482
    @maxpoblete482 Год назад +1

    Excelente video, muchas gracias y saludos desde Santiago de chile

  • @YeisonCordobaU
    @YeisonCordobaU 3 месяца назад

    Excelente video, todo muy bien explicado

  • @rcomayo
    @rcomayo 10 месяцев назад

    Explicación 10/10. Muchas gracias por el video.

  • @AUCHRIS95
    @AUCHRIS95 6 месяцев назад +1

    Me gusta como explicas, podrias por favor hacer un video con la arquitectura hexagonal en spring boot, gracias .

  • @matiasmandelbaum9477
    @matiasmandelbaum9477 11 месяцев назад +1

    Excelente video! Espero ansioso más videos con esta calidad. Mi única duda es, si comento el AuthenticationProvider tanto como Bean y del securityFilterChain, JwtAuthenticationFilter usa su propio userDetailsService y AuthService su propio PasswordEncoder. Tanto registro, login y acceso al endpoint protegido funcionan igual. Spring configura un AuthenticationProvider por defecto al no haber asignado el DaoAuthenticationProvider? Entiendo que, algun provider tiene que ejecutar authenticate() para realizar el login y obtener el token.

    • @irojascorsico
      @irojascorsico  11 месяцев назад +1

      Hola Matías, si Spring Security tiene una configuración por defecto, pero podemos adaptarla según nuestras necesidades o al mecanismo que necesitemos. Saludos,

  • @danielzapata9099
    @danielzapata9099 23 дня назад

    Gran video, felicidades y gracias. 👍

  • @jules2426
    @jules2426 7 месяцев назад +4

    Hola, no sé porque, pero ponga la URL que ponga, siempre me sale 401 Unauthorized

    • @robertodev2002
      @robertodev2002 7 месяцев назад +1

      Puede ser porque te habrás equivocado de nombre en alguna variable, por ejemplo yo en vez de colocar "configuration" puse "configurable".

    • @jules2426
      @jules2426 7 месяцев назад +1

      @@robertodev2002 No te preocupes, ya lo he solucionado, tenia mal puesto algunos paquetes. Ahora el problema es que me sale este error al iniciar sesión:
      io.jsonwebtoken.ExpiredJwtException: JWT expired
      Algunas veces funciona y otras, he intentado ponerle más tiempo a la expiración del token, pero no le conseguido, tengo que intentar que cuando inicie sesión, elimine el token antiguo o algo así del estilo

    • @rodrigo-maidana
      @rodrigo-maidana 7 месяцев назад +2

      @@jules2426 Que paquetes tenias mal puestos? Tengo el mismo problema 401 Unauthorized al hacer register o cualquier otra cosa

    • @jules2426
      @jules2426 7 месяцев назад +1

      @@rodrigo-maidana yo tenia unos paquetes que eran com.backend y com.bakend, por eso me daba el error

  • @viekva
    @viekva Год назад +2

    Muy buen video! Te destacas en esto, gracias

  • @skyblack7040
    @skyblack7040 Год назад +2

    He aprendido mucho con tus videos muchas gracias, tienes una buena enseñanza entre teoria y practica.
    Me gustaría que si pudieras hacer un video similar a Angular con React y el login seria de mucha ayuda, Gracias.

  • @hugoemartinez6810
    @hugoemartinez6810 Месяц назад

    Gracias por este video, me ha ayudamo muchisimo. Como debemos hacer el logout cuando el spring security está en la API ?

  • @daedon4652
    @daedon4652 4 месяца назад

    muchas gracias me ha salvado tu video, son muy buenos

  • @HeyChobe
    @HeyChobe 9 месяцев назад

    Este video me ha servido demasiado, infinitas gracias

  • @mauirix10
    @mauirix10 8 месяцев назад

    Consulta cuando rompo el token como tu lo haces en el minuto 1:05:53 no me da la respuesta 403 me da un error 500 que dice:
    JWT signature does not match locally computed signature. JWT validity cannot be asserted and should not be trusted.
    Ese problema esta en el JwtService o en el archivo SecurityConfig?
    Saludos.

  • @frankaldairchaparroperca4216
    @frankaldairchaparroperca4216 2 месяца назад

    Muchisiisismas gracias... , excelente video

  • @damianveragonzalez3560
    @damianveragonzalez3560 9 месяцев назад +1

    Puede ser que esto no funcione en vercion de spring-boot 3.2.3, Porque segui todos los pasos menos eso y literalmente ya en el minuto 11.04, lo de dejar publico los endpoint auht/** no me funciona o no se que pasa ya que todos los endpoint de aho me tiran 401Unauthorized, y si pego la direcion en un navegador esto sin saber pero me carga un login que jamas cree en localhost:8080/login me redireciona ahi

    • @_DaarkClown
      @_DaarkClown 9 месяцев назад

      No me funciona tampoco, ya encontraste una solucion?

    • @damianveragonzalez3560
      @damianveragonzalez3560 9 месяцев назад

      No enconcotre otro video en ingles que usa una vercion mas nueva y sercana a la 3.2.3 y ese agrego un monton de cosas mas y ahi me andubo pero no completamente ya que enves de devolverme los errores 403 me tiraban 401 @@_DaarkClown

    • @_DaarkClown
      @_DaarkClown 9 месяцев назад

      @@damianveragonzalez3560 me podes enviar el link?

    • @irojascorsico
      @irojascorsico  9 месяцев назад

      Hola @damianveragonzalez3560 y @_DaarkClown, actualicé ese mismo proyecto a la versión 3.2.4 de spring boot y sigue funcionando sin problemas. Habría que ver el proyecto que están trabajando... Intenten revisar que está pasando mediante el log. Para ello, agreguen la siguiente línea en el application.properties: logging.level.org.springframework.security=TRACE

    • @_DaarkClown
      @_DaarkClown 9 месяцев назад

      @@irojascorsico Sale que el token csrf no se deshabilita

  • @renemarcogudmundsson8623
    @renemarcogudmundsson8623 6 месяцев назад

    Tengo una pregunta, como variara la configuracion en caso de no usar Lombok, y enves de ello usar MyBatis???

  • @ColmenaTEC
    @ColmenaTEC Год назад +1

    Excelente material de estudio!!!!

  • @gustavomirandasilva6432
    @gustavomirandasilva6432 5 месяцев назад

    Me envía nulo a la base de datos. :c Además, al implementar UserDetails en la clase User me genera únicamente un método llamado "getUsername", agregué los métodos del video manualmente y el IDE me dice que son redundantes, da lo mismo si los dejo o si los comento.

  • @yourmovies7013
    @yourmovies7013 Год назад

    no soy de comentar pero me gustan tus videos, son buenos y explicas las cosas de manera calmada y clara. si quisiera ver para autenticar roles y de acuerdo al rol me lleve algún lugar, un dashboard o algo asi. Gracias

  • @everrosales6786
    @everrosales6786 Год назад

    Excelente explicación de inicio a fin

  • @cristianzarate5070
    @cristianzarate5070 6 месяцев назад

    que bien explicas!! Buenisimo tu contenido

  • @elbigotes7598
    @elbigotes7598 Год назад

    Muy buena explicando me ayudaste bastante, un abrazo!

  • @GKravDJ
    @GKravDJ 8 месяцев назад

    Una pregunta me sale esto pero tengo el codigo igual,que puede ser? Parameter 1 of constructor in com.example.appWeb.config.SecurityConfig required a bean of type 'org.springframework.security.authentication.AuthenticationProvider' that could not be found.

  • @marioal2008
    @marioal2008 4 месяца назад

    Felicidades por el video, Profe!. Pero tengo una consulta, en el minuto 16:46 explica que el filtro del jwt valida si el token es nulo y si lo es, continua con el ciclo de authenticación, no debería terminar el ciclo de vida y tirar un error?.

    • @cristopherxanderazadiaz8790
      @cristopherxanderazadiaz8790 День назад

      No tengo conocimiento previo de Spring Security, pero me imagino que los filtros en si no darán paso al menos que uno setee la autenticación en el contexto de seguridad, que es lo que hace en caso de haber un token válido

  • @yeyoflex7181
    @yeyoflex7181 5 месяцев назад +1

    muy bueno. me re sirvió. muchiiiisimas gracias. :)

  • @guilllermogrossovelarde8653
    @guilllermogrossovelarde8653 2 месяца назад

    pregunta de donde sacaste el link que pusiste en el POST?

  • @luiszapana2746
    @luiszapana2746 7 месяцев назад

    ¿Porque los atributos de la entidad User no tienen el modificador private?

  • @_alejandroegas
    @_alejandroegas 2 месяца назад +1

    Hola muy buen video me esta sirviendo de gran ayuda pero en la ruta del login ingresa al controlador pero no al servicio porque en postman me sale el 403 le he dado mil vueltas a mi codigo siguiendo el tuyo y no me sale hay alguna forma de contactarte para que me ayudes ?? Gracias

    • @Kendryd_123
      @Kendryd_123 2 месяца назад

      Lograste resolverlo?

  • @ricardomezabilbao8575
    @ricardomezabilbao8575 Год назад +1

    Hola Ivana. Gracias por el contenido. Quedé varado en la clase AuthService. En el register no me reconoce el builder y no entiendo el motivo. Cuando digito User user = User.builder() , no me reconoce el método.

    • @santiagobarreralopez1754
      @santiagobarreralopez1754 Год назад

      Yo tambien ando en esas no me reconoce el .builder() en esa misma clase ademas en la clase User cuando se generan los metodos de la interface userdetails se me generan dos metodos mas el de getUsername y el getPassword y pues en esas ando

    • @irojascorsico
      @irojascorsico  Год назад

      Hola! Dos puntos para revisar:
      1- Revisen tener la anotacion @Builder en la clase User.
      2- Verifiquen que la imporación a la clase User sea la que usteden crearon y no la de Spring Security.
      Abrazo!
      Ivana

    • @7jeison
      @7jeison Год назад

      @@santiagobarreralopez1754 hola, tengo las mismas novedades que exponen los dos. Si lograron solucionarlo y si es así cómo lo hicieron? Gracias!

    • @7jeison
      @7jeison Год назад

      Yo ya revisé lo que sugiere @irojascorsico

    • @7jeison
      @7jeison Год назад

      Pero sigo con la novedad

  • @thorbenma_
    @thorbenma_ 4 месяца назад

    La parte del Registro estaba teniendo un errorcuando intentaba crear el nuevo registro de que no encontraba la tabla "user_seq" asi es que use la propiedad en el application.properties:
    spring.jpa.properties.hibernate.hbm2ddl.auto=create para que genere las tablas necesarias automaticamente cuando corres el proyecto. Espero les sirva. Saludos y Excelente material para los que estamos un poco oxidados en SpringSecurity. Gracias.

  • @skadrifb
    @skadrifb Год назад +3

    Muy buen video me sacó de apuros, pero necesito la continuación para usar diferentes roles y filtrar por rol por favor :D

    • @irojascorsico
      @irojascorsico  Год назад +8

      Me alegro que te haya sido de utilidad el vídeo!! Ahora estoy trabajando en otro vídeo donde muestro como conectar una aplicación de angular con la api rest desarrollada en este video. Voy agendando sus preferencias para próximos videos. Abrazo!

    • @skadrifb
      @skadrifb Год назад

      @@irojascorsico sería increíble es justo lo que necesito para mi proyecto! Ya tengo toda la parte de angular, el front con angular y diseño se me da bastante bien pero estaba pillado en el back con la actualización de security, ya solo necesito filtrar por roles pero creo que lo estoy consiguiendo gracias a ti, muchas gracias espero con impaciencia el próximo video :D

    • @rodolfoespinoza6672
      @rodolfoespinoza6672 Год назад

      👍@@irojascorsico

  • @oswaldoe.recinos1729
    @oswaldoe.recinos1729 7 месяцев назад

    Hola, excelente video. Quería preguntarte si tenés uno donde expliqués la autenticación con un ldap

  • @codingjhames
    @codingjhames 11 месяцев назад

    estoy mega confundido, veo este video y sugieres ver el anterior, luego veo el otro y sugieres otro, ¿cual es el orden?

    • @irojascorsico
      @irojascorsico  11 месяцев назад +1

      Hola!! Cada video puedes verlo independientemente de los anteriores según el nivel de conocimientos que tengas . Hay contenidos que fueron desarrollados previamente por eso la sugerencia (si no se hace muy extenso el video). Si estás comenzando, te sugiro ver las listas de reproducción que están en orden de prioridad.
      Saludos,
      Ivana

  • @JesusDiaz-tt1pw
    @JesusDiaz-tt1pw Год назад

    Uff, que bien explicado! Felicitaciones, me suscribo

    • @irojascorsico
      @irojascorsico  11 месяцев назад

      Muchísimas gracias @JesusDiaz-tt1pw. Abrazo!

  • @henrymartinez1055
    @henrymartinez1055 Год назад

    Ivana cómo saben ustedes qué clases, interfaces y métodos deben usar dónde está el manual que indique qué hace cada clase, por qué se usa, para qué se usa de donde sacan ese criterio para sabe qué clase es conveniente usar, eso lo da la experiencia o en donde puedo ver la arquitectura y la funcionalidad de cada clase de spring security, de jwt, de hibernate etc?

    • @irojascorsico
      @irojascorsico  Год назад

      Hola Henry, es muy buena pregunta!! Lamentablemente no hay un manual que explique esto al detalle dado que tenemos muchísimas formas de definir la arquitectura. Esta que les presento en el video es una forma de implementación. ¿Qué criterio me permite tomar decisiones sobre cuál es conveniente o no? Esto depende del dominio del problema, la tecnología, los conocimientos en relación a patrones de diseño, la experiencia, etc.

    • @jesuscarlosmoroyoquiacosta8978
      @jesuscarlosmoroyoquiacosta8978 Месяц назад

      El libro Spring Security in Action, Second Edition Laurentiu Spilca, explica todo a detalle, como funciona Spring Security, la arquitectura, que es lo que hace cada uno de los métodos que mencionas, por ejemplo la clase User recomienda el libro recomienda usar dos clases en lugar de una, para no mezclar responsabilidades. Si entiendes esas bases, el video lo entiendes muy bien como un resumen.

  • @oscarxaviervaroncruz5276
    @oscarxaviervaroncruz5276 8 месяцев назад

    Hola Ivana, de que trata el video oculto ?
    es posible teneracceo a este ?

  • @AtonicSeven
    @AtonicSeven 9 месяцев назад

    Buenas, a partir de esta aplicacion estoy intentando hacer una ruta solo para role ADMIN, he creado la ruta y es accesible desde postman, ademas he añadido el role al token ya que no figuraba, y estoy intentando con
    .requestMatchers("/api/v1/demo2").hasRole("ADMIN")
    justo antes del
    .requestMatchers("/auth/**").permitAll()
    pero me devuelve un 403, alguna idea?

    • @irojascorsico
      @irojascorsico  9 месяцев назад

      @AtonicSeven, evidentemente estás teniendo problemas de permisos. Revisaste el log?

    • @AtonicSeven
      @AtonicSeven 9 месяцев назад

      @@irojascorsico buenas, ya encontré la solución, lo dejo por aquí por si a alguien le sirve:
      El problema es que cuando hace la comprobación lo hace como "ROLE_ADMIN" por lo que podemos cambiar la clase Role con ROLE_ADMIN y ROLE_USER (y todo lo que está relacionado para que compile bien).
      La otra solución es usar el filtro de otra forma: .requestMatchers("/api/v1/demo2").hasAuthority(Role.ADMIN.name())
      Muchas gracias por responder, estaré atento a su canal, éste video y el siguiente son muy buenos.

    • @irojascorsico
      @irojascorsico  9 месяцев назад

      @@AtonicSevenGenial!! Gracias por compartir cómo lo resolviste. Abrazo!

  • @willintongramirezrodriguez5912
    @willintongramirezrodriguez5912 Год назад +1

    Hola tengo una consulta, en vez de utilizar el string builder para crear el objeto de tipo User en el servicio, puedo crear un paquete mapping y una clase UserMapping, donde pueda mapear esos objetos?
    muy bueno tu contenido por cierto

    • @irojascorsico
      @irojascorsico  Год назад +1

      Hola! Entiendo que no debería haber ningún problema. Esta es una forma de trabajar pero existen más. Abrazo!

  • @Vicho1079
    @Vicho1079 11 месяцев назад

    51:26 llegue hasta este momento y me dio un error de dependencia circular en la clase SecurityConfig. No se en que parte la cague.

    • @irojascorsico
      @irojascorsico  11 месяцев назад

      Ups, que pena. Si es de ayuda, dejé el código que fui escribiendo en un repo de github. Por ahí, puedes comparar y ver qué paso...

  • @giordypavelhenaomontes9924
    @giordypavelhenaomontes9924 Год назад +1

    Hola, muy buen video, tengo una pregunta. ¿Con qué finalidad se crea un token al registrar un usuario ? ¿No debería ser solamente cuando inicial sesión?

    • @giordypavelhenaomontes9924
      @giordypavelhenaomontes9924 Год назад

      Eso lo entiendo. Lo que digo es, un token cuando se registra el usuario, con qué fin? El token debería generarse cuando uno se loguea. O bueno, no sé jaja, esa es mi inquietud .

    • @irojascorsico
      @irojascorsico  11 месяцев назад +1

      Hola @giordypavelhenaomontes9924, en el video estoy devolviendo el token al realizar el registro a fines del ejemplo nada más. Coincido contigo que no es una práctica recomendada dado que es preferible devolver el token luego de que el usuario inició sesión.
      Abrazo!

    • @juanramirez8635
      @juanramirez8635 10 месяцев назад

      ​@@giordypavelhenaomontes9924Si me preguntaba lo mismo jaja al final solo lo cambie por un "Usuario creado" xd

  • @wilmerhilaquita8476
    @wilmerhilaquita8476 Год назад +2

    Excelente video, claro consiso y fácil, quisiera saber cuán conplicado sería implementar el refresh token, espero puedas hacer una actualización sobre eso

    • @irojascorsico
      @irojascorsico  Год назад +2

      Hola! Lo agendaré como contenido para un próximo video.

  • @luiscarloscastro2485
    @luiscarloscastro2485 9 месяцев назад

    Hola, quisiera saber cual es tu configuracion/extensiones que tienes en vs code para porgramar con spring, ya que hay algunas cosas que no se me importan correctamente, tengo que que a intellij IDEA para hacerlo, esperia y me puedas ayudar, gracias

    • @irojascorsico
      @irojascorsico  9 месяцев назад

      Hola! Te comento, las extensiones que tengo isntaladas en vscode son las siguientes: Spring Boot Extension Pack, Spring Boot Tools, Spring Boot Dashboard, Project Manager for Java y Maven for Java.

  • @NahuAM1
    @NahuAM1 Год назад

    Buenas, en el metodo de securityFilterChain de la clase de SecurityConfig quise poner ".antMatchers("/admin/**").hasRole("ADMIN")" para poder conseder permisos de administrador justo debajo del ".antMatchers("/auth/**").permitAll()" y no funciona

    • @irojascorsico
      @irojascorsico  11 месяцев назад

      Proximamente realizaré un video con los roles para ayudarlos. Abrazo

  • @maximilianogabrielkolbl8040
    @maximilianogabrielkolbl8040 9 месяцев назад

    Hola quería hacer una consulta si me pueden ayudar en el JwtAuthenticationFilter minuto 23 me marca missing no null annotation para HttpServletRequest HttpServletResponse y FilterChain y el IDE me dice que haga un @SupressWarning
    saludos

    • @irojascorsico
      @irojascorsico  9 месяцев назад

      Hola @maximilianogabrielkolbl8040, con qué version de spring boot creaste el proyecto?

    • @maximilianogabrielkolbl8040
      @maximilianogabrielkolbl8040 9 месяцев назад

      Profe que conviene hacer cuando un proyecto tiene otra versión y quiero cambiarla?
      Y después si tengo problemas para correr la aplicación
      Hay guías para verificar las conexiones?
      Muchas gracias por responder
      Saludos

  • @Olivermarch
    @Olivermarch Год назад +1

    Buenísimo, muchas gracias!

  • @JurgenMolina
    @JurgenMolina 8 месяцев назад

    Como puedo usar el get claims para decodificar el token

  • @edgarpimentel6160
    @edgarpimentel6160 9 месяцев назад

    Saludos atento a videos curso o un paso a paso de spring boot java microservicios

  • @walterfernandez9070
    @walterfernandez9070 5 месяцев назад

    O sea que cuando el usuriario se registra tambien se genera el token? eso no deberia ser para autenticarse en el login nada mas y para cada solicitud posterior?

    • @irojascorsico
      @irojascorsico  5 месяцев назад +1

      Hola Walter, si lo ideal es que se genere el token solo cuando el usuario se autentique. Saludos, Ivana

    • @walterfernandez9070
      @walterfernandez9070 5 месяцев назад

      @@irojascorsico Muchas gracias Ivana por tomarte la molestia de respponderme, la verdad admirable todo lo que sabes, hay que ser crack para hacer lo qu evos haces!

    • @theedwardgd7928
      @theedwardgd7928 4 месяца назад +1

      El token en el registro se podría usar para que cuando el usuario se registre se autentique automáticamente.

    • @irojascorsico
      @irojascorsico  4 месяца назад

      @@theedwardgd7928 Si, claro. Cuando se registra podemos darle acceso permitiendo la autenticación automática. Dependerá del problema. Sin embargo, en mi opinión lo ideal es: si el registro fue exitoso redirigirlo al inicio de sesión para que se autentique. Abrazo!

  • @baltazarrealdavid8267
    @baltazarrealdavid8267 Год назад +1

    Excelente video todo fue muy claro, una duda, estoy haciendo un proyecto en el cual habran varias entidades aproximadamente como 10, cómo me recomiendas organizar el proyecto con una paquete por entidad (como en el video) o organizarlo con las paquete (Modelos, Controladores, Repositorios)?

    • @sergiod3v
      @sergiod3v Год назад

      Yo siempre recomiendo paquetes por entidad dado que te podrás concentrar en eld esarrollo individual sin la encesidad de tener mmuchos paquetes abiertos.

    • @irojascorsico
      @irojascorsico  Год назад

      Acuerdo con Sergio!