FastAPI Authentication Example With OAuth2, JSON Web Tokens and Tortoise ORM

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

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

  • @ofranc6204
    @ofranc6204 10 месяцев назад +3

    I am watching this 3 years later and it's still the best tutorial on this topic that I have found. Thanks for this.

  • @Smoonwalkerm
    @Smoonwalkerm 4 года назад +13

    awesome!! I was waiting for you to upload fastapi videos!!

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

    Excelent video. I wasn't expecting to get so much knowledge in just 40 minutes. And very well explained!!! Thanks a million.

  • @10a3asd
    @10a3asd 4 года назад +6

    Ugh man, this is great. I'm learning OAuth2 and FastAPI at the same time and this was incredibly helpful to see the pieces work from the developer side.

    • @wendel1210
      @wendel1210 3 года назад

      me too, open connect too

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

    Not only teaches authentication but also how a tutorial should be. Excellent demonstration & to the point. Thanks a lot for this :)

  • @mbalslow
    @mbalslow 4 года назад +23

    Fantastic video, very clear and to the point! Thank you. For a follow-up video (could simply build on top of this code), it would be great to see how to implement expiration in the tokens and a (maybe automatic) refresh logic. Maybe with a dummy (just plain) HTML login page. Anyways, thanks for the great content.

    • @suyashsingh675
      @suyashsingh675 3 года назад

      Did you find any reading material @mathias ?

  • @Vijay-Yarramsetty
    @Vijay-Yarramsetty 3 года назад +3

    so structured, so modular. lately found this channel. you are way good in explaining things. Thanks a lot.

  • @TheAremoh
    @TheAremoh 4 года назад +10

    Awesome as always. How about Some front-end registration and login form to help understand this better. Just me asking for more though.
    Thanks for this video.

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

    Best video on fastapi oauth❤

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

    This video actually gave me some insights into Pydantic, which I'm still trying to wrap my head around. So a tutorial using Pydantic more explicitly would be great. But you have a great back catalog already.

  • @ndk87
    @ndk87 3 года назад +2

    Thanks so much! Your videos really helped me some years ago when I was coding in Python flask, and just as I start working on FastAPI you begin making videos in that area too 🙌🙌

  • @HG-mt3vl
    @HG-mt3vl 4 года назад +6

    This is what makes your video stands out from other low quality content producers

  • @jonxslays
    @jonxslays 2 года назад

    This video helped me a ton thanks dude.

  • @rizkydarmadi3196
    @rizkydarmadi3196 3 года назад

    very useful video, God bless you. love from jakarta

  • @adriancroitor5154
    @adriancroitor5154 3 года назад +5

    Thank you. You always provide a good start point for development.
    Do you think it is a good ideea to use tortoise-orm in production ?
    Some devs say sqlalchemy is better for speeding up your api. I can configure sqlalchemy for a sync def, but failed configuring it for async.

  • @HitraNtheProgrammer
    @HitraNtheProgrammer 4 года назад

    Very educational! I'm glad I ran into your channel

  • @Fsoza2008
    @Fsoza2008 4 года назад

    Real good videos man! Been real helpful

  • @ziaddwagy8973
    @ziaddwagy8973 3 года назад +1

    thanks and that's awesome work . one more question now should pass the user in all new additional endpoints ??

  • @juanfranciscolopez9968
    @juanfranciscolopez9968 4 года назад

    Very nice video and excellent channel!! looking forward to see how to protect FastAPI with OAuth2 but just acting as a Resource Server (and getting the token from and external Authorization Server). Thanks for sharing!

  • @djanthony6662
    @djanthony6662 4 года назад

    Awesome, thank you Anthony!

  • @ItzSenaCrazy
    @ItzSenaCrazy 3 года назад

    Well explained. Ty very much!

  • @JordanCote
    @JordanCote 3 года назад +2

    Very nice introduction! Do you have a video explaining how we could extend from this example, attaching this with some other OAuth2.0 providers like Google? Thanks!

  • @Avico78
    @Avico78 3 года назад +1

    great tutorials , will u consider to create tutorial for fastapi+ frontend ? it could be very interesting to see how u use th jwt + login screen .

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

    Thank you so much 🙂❤

  • @harryodendaal345
    @harryodendaal345 3 года назад

    at 1:48 how do you get your json data in the web browser to be styled like that?

    • @zachblake6457
      @zachblake6457 3 года назад +1

      thats how it looks in firefox

    • @harryodendaal345
      @harryodendaal345 3 года назад

      @@zachblake6457 o snap just tested it and jup usually use chroms but thats really cool

  • @airoomstyles
    @airoomstyles 2 года назад

    great video, thanks!

  • @aureliojmnz2959
    @aureliojmnz2959 3 года назад

    Awesome...this has helped so much. Any two-factor authentication, or 2FA implementation in the future?

  • @sheddtutt7875
    @sheddtutt7875 2 года назад

    I want to implement auth0 token on my existing app but I really need to know if token will increase in size / length if I store more user informations on it e.g permissions (to be used on frontend)

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

    Bro you are awesome

  • @_rameez
    @_rameez 3 года назад

    Great video.
    One think i don't understand. We have to login into the database before accessing any tables.
    Lets say i am using react and fastapi.
    User form data will be sent to fastapi's /login endpoint.
    Here i will try to create a db connection based on forms username and password. If sucess then create a sessionpool. or return exception.
    But you are directly accessing the db. HOW

  • @davutlu60
    @davutlu60 3 года назад

    Thank you so much for the video.. I want to try it with postgres but I could not find a way.. any recommendation is welcome..

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

    can't seem to find any records in my DB.
    I know it's there though because it detects when I try to add a duplicate.
    What am I doing wrong?

  • @carlosaugusto-mo2hb
    @carlosaugusto-mo2hb 2 года назад

    I was able to perform the whole process of validation using PostMan , however I don’t know what username and password to input when I click in the button AUTHORIZE in swagger.
    Where did you register that ?

  • @MADAHAKO
    @MADAHAKO 3 года назад

    VERY cognitive! Thank you!

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

    hi, sir. I get missing.
    TypeError: OAuth2AuthorizationCodeBearer.__init__() missing 1 required positional argument: 'authorizationUrl'
    help me please.

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

    is there a way to do it with email rather than username?

  • @athulkrishnadiyil1735
    @athulkrishnadiyil1735 3 года назад

    Please do a video on a chat / Meeting app setup using Fastapi+ MongoDB asyncioMotorClient

  • @rangabharath4253
    @rangabharath4253 4 года назад +1

    Awesome thanks so much

  • @SideKnoblauch
    @SideKnoblauch 4 года назад

    Thanks Anthony!

  • @harrisonfok8267
    @harrisonfok8267 3 года назад

    How come my VS code doesn't have code recommendations when I'm typing? Which extension did you install?

  • @davutlu60
    @davutlu60 3 года назад

    Thank you for the tutorial. I was wondering if there is a particular method to exclude "hash_parword" in returning user data in pydantic user model..

    • @nerox-e4b
      @nerox-e4b 3 года назад

      Just pop the key from the dictionary

  • @hackwithharsha5228
    @hackwithharsha5228 4 года назад

    Thank you !! If possible, can someone explain difference between uvicorn, gunicorn, hypercorn ?

  • @vashistnarayansingh5995
    @vashistnarayansingh5995 3 года назад

    how fast api handles multiple requests, as we have threading as a parameter in flask to handle multiple request how does fast api do it?

  • @harrisonfok8267
    @harrisonfok8267 3 года назад +1

    It didn't generate the sqlite files for me for some reasons. Do you know why?

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

      Make sure you're running `hypercorn main:app --reload` and not `hypercorn example:app --reload`

  • @ambejar13
    @ambejar13 3 года назад +1

    LOVE THIS

  • @Jesufemi_O
    @Jesufemi_O 3 года назад

    awesome video! can you do something on microservices soon ?

  • @thesongmade
    @thesongmade 2 года назад

    Great video, but i cant manage to user if condition with awaits, it only return the default detail message, Ex: user = await User.get(username=username), if not user statment will not work, only inside a try catch structure, can someone help me?

  • @promisesheggs8863
    @promisesheggs8863 3 года назад

    is there a way to integrate google authentication with fast API?

  • @saurabh210284
    @saurabh210284 4 года назад

    Thank you. Is there a way we can implement LDAP authentication ?

  • @bokistotel
    @bokistotel 3 года назад

    Can you make an example using a OAuth2AuthorizationCodeBearer ?

  • @romankocherezhchenko34
    @romankocherezhchenko34 3 года назад

    Do JWTs support RBAC?

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

    great vid! May i ask, what is the tokenURL exactly for?
    oauth2_scheme = OAuth2PasswordBearer(tokenUrl="token")
    its not written in the docs and people in tutorials always say, just put it there. I believe, nobody knows, what it means. Its just for the open api scheme and swagger ui, i think.

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

    You had something in the authorization box of the postman token request but you didnt show it, doing it the way you showed wont work unless you had something there and forgot to say anything

  • @tusharsnn
    @tusharsnn 3 года назад

    how to get bash inside windows pc like you have ?

  • @techiecurries1355
    @techiecurries1355 2 года назад

    How can authenticate a fastapi which doesn't have a username and password. I mean no login credentials..

  • @MD-vm7tv
    @MD-vm7tv 4 года назад

    Hi, Anthony,
    I'm a freelancer! Experienced with web scraping but I want to switch to web development. I don't have a college degree, I have a little knowledge about Django, Flask, Celery, and React.
    Should I go for Backend with Python or Frontend with React or something else? Can you consider to recommend a path for me?

    • @cepuofficial9025
      @cepuofficial9025 4 года назад

      I will recommend frontend since the job for that path would be more abundant

  • @emiliod90
    @emiliod90 3 года назад +2

    Hey dude, if you ever work out how to do the Authorisation Code Grant with Proof Key using FastAPI I will gladly pay 👍

  • @yourdadsbestfriend7101
    @yourdadsbestfriend7101 3 года назад

    more fastapi !!

  • @rahulsriram6295
    @rahulsriram6295 4 года назад

    Please make a similar video on Django Rest Framework

    • @prettyprinted
      @prettyprinted  4 года назад

      I'll look into it. Thanks for watching.

  • @wa.6006
    @wa.6006 2 года назад

    Thanks!

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

    This is supposed to be an OAuth2 video, not a Tortoise ORM video.. just use a global dict for a "database".

  • @danielschmider5069
    @danielschmider5069 3 года назад

    your payload should definitely include the expiration date of the token

  • @bhaveshmevada8424
    @bhaveshmevada8424 3 года назад

    Sir can i make facebook messenger chatbot using fastapi?

  • @ralfvenchbillones3312
    @ralfvenchbillones3312 3 года назад +2

    Waiting for fastapi playlist.

  • @TheAremoh
    @TheAremoh 4 года назад

    At the right time

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

    wow, god bless django for abstracting away this boilerplate.

  • @oj43085
    @oj43085 2 года назад

    Nice.

  • @advrxh
    @advrxh 3 года назад

    09:50

  • @puresocial3594
    @puresocial3594 2 года назад

    great

  • @hamodeyDooba
    @hamodeyDooba 3 года назад +1

    i am watching and I feel like , ye just copy paste copy paste copy paste !!!!
    wtf with content creators

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

    Hi,
    I can't access to sqlite3 db.sqlite3, appear this message sqlite3: The term 'sqlite3' is not recognized as a name of a cmdlet, function, script file, or executable program.
    Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
    somebody can help me?

  • @nigelfranciscoharosisa1579
    @nigelfranciscoharosisa1579 2 года назад

    It is possible to authenticate from get, for instance hhtp://user/me?user&password?