Python Flask Tutorial: Full-Featured Web App Part 10 - Email and Password Reset

preview_player
Показать описание
In this Python Flask Tutorial, we will be learning how to send emails to reset a user's password. Users will be able to fill out a form with their email and have a unique token sent to them, and if their token is verified then they will be able to create a new password. We will be using the flask-mail and itsdangerous packages to help us with this. Let's get started...

The code for this series can be found at:

Environment Variables (Windows):

Environment Variables (Mac and Linux):

✅ Support My Channel Through Patreon:

✅ Become a Channel Member:

✅ One-Time Contribution Through PayPal:

✅ Cryptocurrency Donations:
Bitcoin Wallet - 3MPH8oY2EAgbLVy7RBMinwcBntggi7qeG3
Ethereum Wallet - 0x151649418616068fB46C3598083817101d3bCD33
Litecoin Wallet - MPvEBY5fxGkmPQgocfJbxP6EmTo5UUXMot

✅ Corey's Public Amazon Wishlist

✅ Equipment I Use and Books I Recommend:

▶️ You Can Find Me On:

#Python #Flask
Рекомендации по теме
Комментарии
Автор

Corey, this series has helped me immensely in my new journey learning Python and Flask for work projects. I would like to point out something I'd change, however. At about 10:30, you set up the reset form, and have it verify the account and return a "There is no account with this email" if the account doesn't exist. This is bad for security; I know we're all learning here, but it's a habit we should all get into as soon as possible. Actually telling the user whether or not an account exists allows for enumeration attacks, and would help someone attempt to steal credentials from a system by allowing them to divine a list of valid account email addresses.

The correct approach is to validate the account, but never say anything. Always return the same canned string, something like "If an account with this email address exists, a password reset message will be sent shortly." If the account doesn't exist, just silently exit and do nothing else. This way you close the enumeration attack quickly and easily.

Thanks for this series, I really appreciate it!

funjon
Автор

I am in my 40s, and now a professional engineer thanks to video courses like this. What an amazing teacher.

BM-ufpp
Автор

I know it's been said before but the value in these tutorials is incredible, thanks Corey!!

gordonmorrow
Автор

Hey Corey! I've seen people make similar comments but just like a ton of similar blogposts out there in the wild, I want to specially say "Thank you very much" for this amazing endeavour.
Your method is magnificent and it's almost like reading from a book. Thank you!
This is the best major introduction to Flask I can ask for as a Front-end Engineer. Thank you!

benneee_
Автор

Being honest Corey is an amazing instructor and his tutorials will never get old with best practices

uweopfern
Автор

Nice tutorial as always,
for those getting this error "cannot import from itsdangerous" downgrading the package version to 2.0.1 should solve the problem, use " pip install itsdangerous==2.0.1 "

yahayaalilawan
Автор

It is my dream that there would not be many untalented teachers, but there would be such brilliant teachers as the author and their video lectures. I studied at the academy and my teacher cannot explain elementary things. And in this course, I get everything. This course alone is enough to teach everyone how to work with the Flask. I am very glad that I found your course. Maybe it will change my life for the better! Thank You Corey!

MykhailoRogozhyn
Автор

ONCE AGAIN. A MIND EXPANDING VIDEO! Thanks, Corey. It was a great moment to see that email in my inbox with a localhost in the url :D

lightninginmyhands
Автор

It’s meanwhile +5years since you posted this tutorial and you are still the best!!! Thank you!

markushartner
Автор

Corey, sorry that I cannot say anything that hasn't been said by 1000's of others but your tutorials are just amazing! thank you.

arash
Автор

Thank you for making this video series on flask. I just got a new role. My background is mostly the MERN stack (Mongodb, Express, React and Nodejs) my new role is going to mostly be python, building internal tools for the team. They use Flask (Which you have taught me a good amount to get started) and Django. Again, thank you so much!

RemsterHD
Автор

Fantastic tutorial. I was having an error and had to set low security in gmail. For this I created a "dev" account just to use with apps. It worked. Thanks

junqueirapedro
Автор

One of the biggest things I've learned so far is whenever you think you made a mistake, watch another 2 or 3 minutes of the video and see if Corey also screwed up. I just checked and rechecked my work for the 100th time today (binge coding!) and sure enough 38:10

jaret
Автор

Brilliant! I’m actually working through your vids instead of just skipping through. Thank you..!

m
Автор

It is an amazing tutorial. The best I've ever seen.

ateskumbaraci
Автор

the smtp debugging was pretty good, learnt a lot by doing it myself. os.environ also v.cool thanks for not spoon feeding us everything!

umarhussain
Автор

Thanks @Corey Schafer your tutorial is super cool

luuvinhtuong
Автор

Thanks so much Corey for this awesome tutorial. Will be tuned for more. May be Reactjs and Flask who knows

ngassajason
Автор

@Corey you're an awesome teacher, Love the way to teach 🙌👏

xaynlaa
Автор

The feeling of getting an email taught by this video, is like getting an email of job offer from company :D

codewithmorris