Use JWT Authorizers with Amazon Cognito and API Gateway

  Рет қаралды 52,778

Focus Otter

Focus Otter

Күн бұрын

HTTP endpoints in API Gateway have the ability to secure resources by first validating a JWT token.
In this example, we'll use Amazon cognito's hosted UI to to create a JWT and configure an API Gateway to only provide a lambda response if it's valid.
cognito issuer endpoint:
cognito-idp.yo...
grabbing the jwt from the url:
location.href.split('=')[1].split('&')[0]

Пікірлер: 79
@Munk-tt6tz
@Munk-tt6tz 10 ай бұрын
Him: "I hate when folks don't give you all the little details that you might need..." Me: Subscribed
@Tecnologik
@Tecnologik 2 жыл бұрын
This was incredibly helpful! You did a great job explaining everything thoroughly. Great quality content, keep it up man! 🙏💪
@ahbahb3195
@ahbahb3195 Жыл бұрын
Someone else can copy this jwt token from request header and use it. am i correct ?
@balawalchaudry4127
@balawalchaudry4127 Жыл бұрын
this was great, thank you! however i have a question. i have this API connected to my lambda function as a trigger, and i have a slack app which in event subscription, takes in an endpoint (in this case it is my newly authorized endpoint configured in my lambda function). however, because the API is protected, slack won't be able to verify it or access it. how can i enable slack to access this? thank you again for the vdeo!
@valirjonathan2161
@valirjonathan2161 3 жыл бұрын
Thanks 🙏. Please make another video where we can learn how to assign role and how to allow users with different roles to access different resources.
@munozhoracio
@munozhoracio Жыл бұрын
Excelente muy buen ejemplo, muy parecido se puede hacer andar con keycloak Aca dejo un ejemplo: kzbin.info/www/bejne/qGPFf2yrqLegjqc&ab_channel=%C5%81ukaszBudnik
@TheAmritaSingh
@TheAmritaSingh 2 жыл бұрын
Hey can you help implement jwt support plugin with Jenkins
@sakarsr
@sakarsr 3 жыл бұрын
Thank you for this video. Can you make a video on how to do the same with AWS-CDK and Lambda functions? Nice work and Good Health.💖
@zhongdaochen8221
@zhongdaochen8221 3 жыл бұрын
Thanks for doing this! Really helpful and truly appreciated!
@sanjanag3011
@sanjanag3011 Жыл бұрын
can i use lambda to add user information into a dynamo db also? if i do that then when i am connecting to api gateway can i choose lambda instead of jwt auth?
@robbieleegames7220
@robbieleegames7220 2 жыл бұрын
That was awesome. Some people would have turned that into an hour long video and not covered all the details either. Perfect and to the point in under 14 minutes.
@realcirno1750
@realcirno1750 Жыл бұрын
Never thought kanye west would teach me amazon cognito
@heyralfs
@heyralfs 3 жыл бұрын
I just had to subscribe your chennel, because I was looking for some video like your for days and you save me! Thanks a lot!!!
@EskoLuontola
@EskoLuontola 3 жыл бұрын
Copying both the access token and id token from the URL is what tripped me as well.
@skverskk
@skverskk Жыл бұрын
Nice tutorial and well explained. I thought AWS Cognitoruns on the backend, but I see it writes out the tokens in local storage on the client.
@ZachMatics
@ZachMatics Жыл бұрын
Surprised this isn't emphasized more.
@tacosdecamaron
@tacosdecamaron 2 жыл бұрын
You saved me many hours today
@june3878
@june3878 Жыл бұрын
lambda serves as a client in this example?
@khandoor7228
@khandoor7228 3 жыл бұрын
Great video Michael, tracking you man.
@javakababa701
@javakababa701 2 жыл бұрын
Super!! worked for me.
@pablogonzalezrobles4429
@pablogonzalezrobles4429 2 жыл бұрын
same steps? nothing different to setup?
@michaelakin766
@michaelakin766 Жыл бұрын
It is supposed to be standard to use the access token instead of the Id token. Why did you use the id token? I am asking because I cannot get it to work with the access token in my own app.
@focusotter
@focusotter Жыл бұрын
Hey! So we use the id token, but Cognito will manage and use access tokens on our behalf :)
@Hi-373
@Hi-373 9 ай бұрын
great tutorial thanks
@CloudBart
@CloudBart 3 жыл бұрын
Yeah Michael, way to get it together! Great job
@AskMyBro
@AskMyBro 3 жыл бұрын
Awesome! Video was short and to the point. Resolved my problem which was accidentally using the API Gateway API ID rather than the User Pool ID as the "audience". How come both the IdToken and AccessToken can be attached to the authorizer header and still have access to the protected resources?
@michaelakin766
@michaelakin766 Жыл бұрын
I can't get the access token to work for me.
@tanujaSainiVlogs
@tanujaSainiVlogs 8 ай бұрын
Very knowledge session
@geekthegeek730
@geekthegeek730 3 жыл бұрын
This video was super useful for me
@aravind4444
@aravind4444 Жыл бұрын
nice explanation
@wsh4and
@wsh4and 2 жыл бұрын
Subscribed! Will you cover the new Amplify Studio?
@focusotter
@focusotter 2 жыл бұрын
Absolutely! I’m currently taking a break until the new year but have a series of videos covering many of the features we released during re:Invent!
@wsh4and
@wsh4and 2 жыл бұрын
@@focusotter cool, can't wait
@hamidapremani6151
@hamidapremani6151 Жыл бұрын
Huge Thank you! Simple, thorough, and spot on!
@focusotter
@focusotter Жыл бұрын
Glad you liked it!
@tarunakar4765
@tarunakar4765 2 жыл бұрын
Is there a way we can just not use the Cognito UI to signup/signin? I want to use Cognito's backend service with my own UI (via login form). It would look a little out of place in, let's say, a mobile app so yeah was just wondering!
@minzeymichael
@minzeymichael Жыл бұрын
Excellent
@saurabrakshit405
@saurabrakshit405 2 жыл бұрын
Amazing Video ! But, I want to know how to do the Sign Up, Login & other MFA in React-Native App, if I already have a existing backend in AWS Cognito . And have the below details of the existing backend :- aws_cognito_identity_pool_id: aws_cognito_region: aws_user_pools_id: aws_user_pools_web_client_id: I hope this question will generate curiosity in you. Please make a separate vdo on this topic
@marshalsea000
@marshalsea000 Жыл бұрын
Thanks for this concise and helpful - so many incorrect videos out there that obviously do not understand OAuth and copying from the same incorrect source. Warning - AWS has significantly changed various areas and you need to switch back to the Cognito v1 (on the left side menu) to make this work as expected... Yay AWS!
@saeeduchiha5537
@saeeduchiha5537 2 жыл бұрын
The UI is a bit outdated now given the new AWS UI. But still, I benefited from this tutorial after watching another one with the new UI.. Also, pls pay attention where you put your selfie video as it covers some of the steps (can be concluded though).
@jumboliah13
@jumboliah13 2 жыл бұрын
ya, great vid, well explained and visually practical. two thumbs up, you've helped me out a lot + an extra thumbs up for the cool digs, like, you could easily segue into a smooth jazz video.
@philsown
@philsown 2 жыл бұрын
I immediately wanted to click subscribe just because of your vibe - but I waited til you said there would be flubs and I was like "ok this guy is cool" - and actually kind of inspiring to me, too :)
@locotx215
@locotx215 Жыл бұрын
BRUH . . . Thank you for this
@focusotter
@focusotter Жыл бұрын
You're welcome! Let me know if there's anything else you'd like to see!
@abhiramsatpute
@abhiramsatpute Жыл бұрын
Hi, I wanted to know is this super different from using Lambda Authorizer or do they work in a similar manner ?
@ajaygulani3086
@ajaygulani3086 Жыл бұрын
Great video, just wondering if you have some examples of client side logic - storing the token, and other best practices?
@torresetm
@torresetm Жыл бұрын
Thanks
@normanluismadrid422
@normanluismadrid422 Жыл бұрын
dayum, my man makes it look so ez lol, great video! keep up the great content!
@bimanbd6968
@bimanbd6968 2 жыл бұрын
Thanks for the great video. What will happen when the token is expired? Is there a way to automate the token update or each time I have to manually create a token? Please let me know.
@seasonpark-e6c
@seasonpark-e6c Жыл бұрын
I really appreciate your video. It is really helpful.
@stacymurray9574
@stacymurray9574 3 жыл бұрын
If you run that exact same postman test 6 months from now, would it work, or why not?
@justinphilpott
@justinphilpott 2 жыл бұрын
Nice video, good clear speaking voice, thanks!
@KATABU
@KATABU Жыл бұрын
First time i feel i need to comment on a video - dude, you are amazing!
@ricardosmith5753
@ricardosmith5753 Жыл бұрын
Dude you earned my sub! Awesome tutorial :D
@tacosdecamaron
@tacosdecamaron 2 жыл бұрын
Thank you man. Good video and very updated!!
@pourmog
@pourmog 2 жыл бұрын
thank you! you made it very easy to follow.
@jigishpthakar
@jigishpthakar Жыл бұрын
really helpful, resolved some real issue for me :D
@gavincoulson3900
@gavincoulson3900 2 жыл бұрын
Awesome video, thanks for this.
@rodoherty1
@rodoherty1 2 жыл бұрын
Excellent Demo - thanks for that!
@johnnguyen1655
@johnnguyen1655 2 жыл бұрын
the tutorial is awesome!!!!!!!!! thanks alots.
@SBala-xk6lr
@SBala-xk6lr 2 жыл бұрын
Thank you for this. QQ : The access token expires after a day. Is it possible to extend it for a month or so ? If not what would be good approach if we want some auth value that is applicable for a month or so.
@michaelakin766
@michaelakin766 Жыл бұрын
From what I have seen, you can configure that in the app client settings.
@inacomic
@inacomic 2 жыл бұрын
Thank you for making this! 🙂
@ToreyLittlefield
@ToreyLittlefield 3 жыл бұрын
Sub 👍👍 thanks for the content
@MrTarang1
@MrTarang1 3 жыл бұрын
how to do with backend api ?
@tomashugolabs
@tomashugolabs 3 жыл бұрын
Good job! Thanks!
@rupeshbajaj5438
@rupeshbajaj5438 2 жыл бұрын
You are a life saviour
@musmodtos
@musmodtos 3 жыл бұрын
Great video mate.
@grabteawithme2560
@grabteawithme2560 2 жыл бұрын
Very nice content
@jarrodmccarthy8690
@jarrodmccarthy8690 2 жыл бұрын
Thank you!
@VincentFulco
@VincentFulco 3 жыл бұрын
Well done!
@PeteGravell
@PeteGravell 2 жыл бұрын
Thanks :) that was useful. Instead of splitting location.href I think you could also parse the hash as url search params: params = new URLSearchParams(window.location.hash.replace('#','?')) Then you can easily access the bit you want by using params.get('access_token') or whatever
@ksjazzguitaryt
@ksjazzguitaryt 2 жыл бұрын
A good video on a good subject. I do wish that you'd gone a little more slowly in parts. There were parts where you just sped through a few clicks or screens without much explanation. It's especially easy to miss if you're trying to code along with the video. A little more explanation of how these parts fit together would be nice, too. But still, good video, I learned what I needed to learn.
@ksjazzguitaryt
@ksjazzguitaryt 2 жыл бұрын
For example, say what button you're pushing as you push it - sometimes it's hard to track where you pointer is pointing. And it would be nice if you didn't name everything "pets" - I'm trying to do one with other names now and it isn't working - it's not always clear what refers to what since they all have the same name.
@valentinoforever
@valentinoforever 2 жыл бұрын
I got this error from Postman: "the token does not have a valid audience" I did everything you described here, on JWT.io the Signature is Verified...what can be wrong?
@valentinoforever
@valentinoforever 2 жыл бұрын
OK I found the problem...in Cognito I have 2 different App Client, one for my app and the other for the web (generated by Amplify) so I went back to API and edit the Authorizer adding both audience. Thanks for the video!
@SexyTerrorisT
@SexyTerrorisT Жыл бұрын
This video was not useful. I am not going to ask my user who want to interact with website behind http api gateway to use postman
Secure API Gateway using Cognito Authorizer (NEW)
29:51
LoveToCode
Рет қаралды 41 М.
JWT Authentication Tutorial - Node.js
27:36
Web Dev Simplified
Рет қаралды 1 МЛН
Please Help This Poor Boy 🙏
00:40
Alan Chikin Chow
Рет қаралды 22 МЛН
How Strong is Tin Foil? 💪
00:26
Preston
Рет қаралды 132 МЛН
My Top 3 Ways To Use GraphQL On AWS | Beginner to Advanced
13:02
What Is JWT and Why Should You Use JWT
14:53
Web Dev Simplified
Рет қаралды 1,2 МЛН
OAuth 2.0 and OpenID Connect (in plain English)
1:02:17
OktaDev
Рет қаралды 1,7 МЛН
57. Cognito User Pools vs. Identity Pools
15:32
AWS Bites
Рет қаралды 10 М.
Please Help This Poor Boy 🙏
00:40
Alan Chikin Chow
Рет қаралды 22 МЛН