ASP.NET Core Authentication (.NET 7 Minimal Apis C#)

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

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

  • @nickchapsas
    @nickchapsas 2 года назад +136

    WHO ARE YOU AND WHAT DID YOU DO TO ANTON?

  • @petermorris1769
    @petermorris1769 6 месяцев назад +3

    Finally I have time to watch this series that was recommended to me quite some time ago. I'm really enjoying it so far, I love how much detail you are going into!

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

      Hope you enjoy it Pete! And that you’re doing great!

  • @user-ys6ro4wi3f
    @user-ys6ro4wi3f 2 месяца назад +3

    Man this is really helpful. a lot of stuff online, documentation and such is so abstracted that, as a beginner, I have absolutely no idea what is going on. Getting under the hood makes things more clear. Thank you.

  • @carlosboyanosky8044
    @carlosboyanosky8044 2 года назад +27

    Just love the way you explain things from scratch and with perfect pace and explanations. Your work is awesome.

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

    i really like how you explain and remind everything you write, not just like other tutorials they literally just copy paste what they see on the second monitor

  • @knightmarerip711
    @knightmarerip711 21 день назад

    This is a really really really good video. It is always good to show the manual stuff then how they translate to the new and modern methods. I really appreciate you taking the time to put this together.

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

    That was indeed a deep dive on how auth is working under the hood. thanks for this awesome explanation!

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

    Great job, Anton! I have been looking for somebody to put the entire dotnet core authentication pipeline into one video/course! You did just that. Thank you very much.

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

      Glad you enjoyed it, don't forget to share!

    • @maksadnahibhoolna-wc2ef
      @maksadnahibhoolna-wc2ef Год назад +1

      ​@@RawCoding Hi Anton really a great tutorial. But I m stuck at this one part, hope you won't mind helping me out.
      The problem statement is as follows : I have coded up exactly as you have demonstrated at 20:05 timestamp, now let's consider there is no cookie stored intitally and the very first api I hit is /Username, at this point the middleware steps in, checks that there is no cookie in the request header and throws error.
      Why doesn't the same thing happen when we hit the /login route, I mean why doesn't the authentication middleware stop it here ?

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

    Fantastic video! I've used many sources to learn about authentication but this is exactly what I needed. Good Job!

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

    great video Anton. You and nick are a credit to the RUclips tech space. Love what you do

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

      By nick do you mean Nick Chapsas?

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

    There's Patrick God and there's you, going into all the little details (which I absolutely love)

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

    Is there a proper order to watch this playlist? This video is the first one in the playlist ASP.NET Core Authentication and Authorization Tutorials. In anycase, ill watch them all to to see if it fits what if I can learn something that would help me on what I want to implement! Thanks!
    Cheers!
    E.

  • @gigashack
    @gigashack 2 года назад +2

    Great thanks anton, definitely going to watch more of your videos

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

    I laughed too hard at 16:20 when you casually scrolled through 500 lines of code for a supposed key-value store. awesome video :)

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

      Hey At 20:41 from here how did Anton transition to the Implementation of AuthenticationService from this point ?

    • @user-ux1mj1uz5b
      @user-ux1mj1uz5b Год назад

      @@ajitkumarsingh871 he might be using Ctrl + mouse click. That's how it is done in Visual Studio 2022. I do not know what IDE he is using, but it might be using the same shortcuts as VS 2022

  • @Eugene.Golubev
    @Eugene.Golubev 4 месяца назад +1

    Damn, what a great explanation, especially the first part. Spasibo 🤝

  • @ivanvincent7534
    @ivanvincent7534 2 года назад +15

    Appreciate your knowledge of middleware. I personally feel that a high level view is hard to grasp. There are many options and hard to know what to use or how they differ. I currently have a setup with login via google, twitter, facebook and custom sign-in all with cookies. I was considering azure b2c.. I have watched your other videos on identity server which supported my decision to start as simple as possible and build from there.

    • @RawCoding
      @RawCoding  2 года назад +5

      I'll be covering external auth a bit better in these series

    • @ivanvincent7534
      @ivanvincent7534 2 года назад +1

      That sounds good Anton. One thing I found about external auth is that localhost needed less configuration with services and middleware than a production domain.

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

    Epic content Anton 💪, keep it up.
    If you could zoom in a little for text in responses, if when they aren't super important that would be a nice addition 😊

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

      Cheers, and yeah that was a bit of a mistake from me )

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

    such an amazing video! removes the ambiguity so well! thank you dude ❤️

  • @yourtopeleven-tp9fj
    @yourtopeleven-tp9fj Месяц назад

    This channel is so underrated

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

    Thanks a lot for updating this to .Net 7

  • @ВиталийБулдаков-ш4э
    @ВиталийБулдаков-ш4э 2 года назад +2

    Great explanation of claims. At last. Thank you!

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

      Glad you liked it :)

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

    I loved the explanation and as i practiced the code with the session, i felt like i learned a lot.

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

    Awesome explanation! Thanks Anton!

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

      Thank you for watching!

  • @suynsiuy8093
    @suynsiuy8093 2 года назад +1

    Your video was very helpful, I'm still learning and getting the hang of it still. I'm into House and EDM. I look forward to seeing more of your

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

    Great job, love the way you explained. Most awaited topic for me.
    Can you please create a playlist to implement Authentication in Web API.
    Thank you very much.

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

      Cheers, and keep watching the playlist if you’d like to learn how to authenticate apis

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

    Since there is a lot of logic going on under the covers matching cookie strings, it would be nice to know which places the strings you chose are important names. For example "set-cookie" seems important. In other cases you used "cookie". It isn't clear where these must match.

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

      "set-cookie" - header which forces the browser to save the cookie or clear it.
      "cookie" - refers to the authentication scheme (identifier for the "a lot of logic going on under the covers matching cookie strings")

  • @user-ux1mj1uz5b
    @user-ux1mj1uz5b Год назад +2

    wow.. thank you so much for this 🥳

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

      Thank you for watching, you’re awesome!

  • @y.5107
    @y.5107 Год назад +1

    Dude, you are awesome. I am 10 years in this industry and I am learning so much from you. Where did you get your knowledge from? Would you share your secret?

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

      Thanks, my secrets are - learning Clojure & reading other peoples code

  • @ArnonDanon
    @ArnonDanon 2 года назад +1

    Great content, looking foreward for the next video 😀

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

    Just discovered you, you are great dude, keep it up

  • @ВиталийБулдаков-ш4э
    @ВиталийБулдаков-ш4э 2 года назад +3

    Thanks for the video. What editor do you use ?

  • @alibadhahimateja2877
    @alibadhahimateja2877 28 дней назад +1

    In this specific video
    there is more than one thing which i haven't got complete grasp on
    those are
    are we actually able to create the cookie with session (I mean how does the session work here)
    do the session have their theoretical timelimit as usual
    because here are just not at all using the session in the context
    i just cant understand how does it actually related to sessions
    (FOR ME THIS IS JUST A COOKIE AUTHENTICATION WITH PROTECTION)
    OKAY NOW I GET IT THE UNDERLYING MICROSOFT
    handles the cookies with claimsprinciple applies the protection and also responsible for setting it to the response.headers
    and we can able to access the session authentication timelimit using the Services which could probably works for setting custom properties on that Cookie

    • @RawCoding
      @RawCoding  28 дней назад

      the authentication is stateless for the server (no session, nothing in memory, nothing in nor database) its always created from the cookie which has all the information data protected inside of it. The browser is the on that holds the cookie (aka authentication session). So there are 2 sessions, 1 of which is being used.

    • @alibadhahimateja2877
      @alibadhahimateja2877 28 дней назад

      @@RawCoding Thank You SO much for this great Explanation🙌🙌🙌

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

    I think this is supposed to be the first video in the series, but it looks like you started with some sort of console project already created. What all did you select when starting this project? I need to know how to start with Step 1.

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

      It’s an empty asp.net core app

  • @RoaringOrange
    @RoaringOrange 2 года назад +4

    Dude, this is gold

    • @RawCoding
      @RawCoding  2 года назад +1

      Thank you for watching

  • @vienpham6984
    @vienpham6984 2 года назад +1

    Great! I really enjoyed. Hope more videos Net auth, and Vuejs also ✅⚡️

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

    You got some good posters there bro😂

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

    Awesome, you're one of the best!

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

    enjoyed every bit of your video , thank you for the great content

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

    Organization is a key to success

  • @MrJonnis13
    @MrJonnis13 2 года назад +1

    Thank you Anton one more time.
    What would be a scenario to store Authentication session (cookie) in the BE 23:49 ?

    • @RawCoding
      @RawCoding  2 года назад +1

      I'd avoid it like the plague - but I think it's good if you have alot of info about the user inside the cookie and you don't want to pass around a enormous cookie back and forth. You can see it stores the session id claim rather than the user.
      It could also be good for terminating someones sign in session.

    • @MrJonnis13
      @MrJonnis13 2 года назад +1

      ​@@RawCoding So it stores the User info in the Server and have a tiny cookie that contains only the session id claim, and then the server finds the User BySessionId. Did I get the flow and the idea ?

    • @RawCoding
      @RawCoding  2 года назад +1

      Sounds like you do!

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

      @@RawCoding thanks a million

  • @filibuster-Fox
    @filibuster-Fox Год назад

    It's amazing! Good explanation! I really enjoy this video!
    Thank you very match!

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

    This is absolutely great. Thanks a lot!

  • @dasfahrer8187
    @dasfahrer8187 2 года назад +6

    I think you need to do a longer video series on this subject. Way too much here for one video, much less the myriad of other topics that need to be discussed.

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

      Feel free to leave bullet points of what you’d like me to cover or perhaps questions that you have, there will be more videos.

    • @lukedjuuuu
      @lukedjuuuu 2 года назад +1

      @@RawCoding Authentication and Authorization in Microservices Arch would be nice video

  • @1dfe-4e68-bd9f
    @1dfe-4e68-bd9f Год назад +4

    Hi Anton! Your videos are great! I have a question. Why you don't use methods like these:
    - ctx.Response.Cookies.Append("auth", "anton");
    - ctx.Request.Cookies.TryGetValue("auth", out string? authValue);
    using these framework methods eliminates additional code and helps you focus on authentication topic. it's just a recommendation )
    Thank you very much!

    • @RawCoding
      @RawCoding  27 дней назад

      Good suggestion, I didnt focus on correctness/safety for the introductory example

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

    This was great video. Thank you so much!

  • @LindenMikus
    @LindenMikus 2 года назад +2

    probably a dumb question but if you are just exposing an api and the client is not necessarily in a browser does the cookie approach still work or do you need to switch it to something else? jwt perhaps?

    • @RawCoding
      @RawCoding  2 года назад +2

      Cookies and Tokens are just a string in a header

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

    Is there any tutorial from you or someone you know that actually covers Authentication in Blazor and explain it well?

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

      Nope, I'll do it at some point

  • @AliMustafa-xp8ih
    @AliMustafa-xp8ih 3 месяца назад

    Thank you for this awsom video

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

    I really like this video. Thank you very much for sharing this.

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

    Advanced but quality content. Thanks.

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

    This is insane! Thank you!

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

    10/10 software engineering points for content, 11/10 man of culture points for a butt pic on a background,

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

    Awesome content!! Thank you!

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

    Very nice video. Could you do one about more in-depth authentication details like, DefaultSchema, FallbackSchema, Redirect and so on? Thanks for the videos so far.

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

      That is possible

    • @maksadnahibhoolna-wc2ef
      @maksadnahibhoolna-wc2ef Год назад

      @octaviandobre Did you find any resources over these topics to dive deeper into ? Also where did you heard about FallbackSchema from ?

    • @maksadnahibhoolna-wc2ef
      @maksadnahibhoolna-wc2ef Год назад

      @@RawCoding are you planning to make videos on these topics anytime soon ?

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

      @@maksadnahibhoolna-wc2ef If you play around with the API you find settings like these, but there is no clear explanation from Microsoft on how and when to use these.

    • @maksadnahibhoolna-wc2ef
      @maksadnahibhoolna-wc2ef Год назад

      @@octaviandobre Hey just like you said I was trying to play around a little with the code as demonstrated at 20:05 (basically with the use of Authentication service and middleware provided by microsoft).
      Suppose the situation is that there is no cookie stored initially, then the very first api i hit is /Username, as a result the authentication middleware kicks in and fails to authentiate this api since no cookie is present.
      Now the question that keeps bugging me is why don't we notice same behaviour when we hit the /login api for very first time (when initially there is no cookie stored), like why doesn't the authenctication middleware kick in and fail to authenticate /login api call ?
      please help

  • @davideb4258
    @davideb4258 2 года назад +1

    Great video! Thanks!

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

      Thank you for watching :)

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

    Amazing content. Subscribed. Simply Brilliant.
    Buy why 66k subscribers only :(,

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

    Hey Anton, How about some RUclips sweetness on Blazor Server Authentication??

  • @Ur_Local_Leia
    @Ur_Local_Leia 2 года назад +1

    Nice video :) but what happen to your hair?

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

    Great job Man

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

    suppose in your aks cluster one pod generated the cookie will get recognized by another pod if the cookie is sent to it?

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

      Yes, if you share protection keys

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

    Looking good! 👍🏽

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

    Thank you very much!

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

    Really nice video!!!

  • @D1XiPRODUKTION
    @D1XiPRODUKTION 2 года назад +2

    Антон, спасибо

    • @RawCoding
      @RawCoding  2 года назад +1

      Пожалуйста 🙏

  • @張揚鑫-f8x
    @張揚鑫-f8x 6 месяцев назад

    NICE VIDEO!!

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

    Excellent video

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

    How are you getting into the ASP.NET sources in this video? When I try it, I only see the type definitions.

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

      Find Implementation keybind (usually F12)

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

      @@RawCoding I tried out Rider and I see that it has a decompiler. So that is what you were using. That solves that mystery.
      Thanks for the videos!

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

    Great video. Thanks

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

    thanks you the video was awesome!

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

    how is this any different than a jason web token? other than the encription/decription algorithm?

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

      cookies are automatically handled by browsers
      tokens are for cross domain access delegation, tho that can still be achieved with cookies in some scenarios

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

    Why do most Oauth implementations store the token in a Cookie vs the Authentication Header Variable?

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

    Can we use this sort of cookie authentication if our front end is a mobile app, like Blazor hybrid ?

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

    15:55
    how am I supposed to get the cookie if u add the middleware that requires cookie? And the only way to get the "login" endpoint (that gives u cookie) is THROUGH that middleware

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

      the middleware attempts to load the ClaimsPrinciple from the cookie, it doesn't do any authorization yet.

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

      ​@@RawCoding my bad. I got confused in my own thoughts. Thank u for what u're doing Jake Gyllenhaal

  • @MinhNguyen-zx8me
    @MinhNguyen-zx8me 2 года назад +1

    Is AddDataProtection still needed if using jwt token instead of cookie since the jwt token is somewhat encrypted ?

    • @RawCoding
      @RawCoding  2 года назад +1

      ruclips.net/video/8FvN5bhVYxY/видео.html
      You’ll need an asymmetric key to sign the token.

  • @eng.wandeson
    @eng.wandeson 2 года назад +1

    Great! It works in .NET 6?

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

    At 20:41 from here how did you transition to the Implementation of SignInAsync() function ?

    • @user-ux1mj1uz5b
      @user-ux1mj1uz5b Год назад

      Perhaps he was using Ctrl + mouse click

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

      The action is called: go to definition or go to implementation.

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

      @@RawCoding I m exactly at this instance of code in visual studio 2022 and it doesn't loads up the implementation. Does it need the resharper plugin to further load the decompiled files ?

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

    You are the best!

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

    Thank you!

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

    Legend

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

    Why var authCookie = ctx.Request.Headers.Cookie.FirstOrDefault(x => x.StartsWith("auth=")); can return null
    but ctx.Request.Cookies.TryGetValue("auth", out string? authCookie); works well?

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

    thank you so much

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

    How many legs? Three 🤔... it makes sense 14:39

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

    thanks bro

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

    PREACH!!!

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

    As soon as I move the authCookie code into the custom middleware section (~ 12:00) I get a null exceptions every time I restart the application, regardless of the endpoint. And that sorta makes sense to me: if the middleware runs for every request, then on the first request this line of code ->
    var protectedPayload = authCookie.Split("=").Last();
    ...is going to throw a null ref exception since the browser can't set a cookie until after it's been told to, no?
    Thing is, I don't understand how yours doesn't throw a null ref exception. I believe I've copied the code exactly ->
    using System.Security.Claims;
    using Microsoft.AspNetCore.DataProtection;
    var builder = WebApplication.CreateBuilder(args);
    builder.Services.AddDataProtection();
    builder.Services.AddHttpContextAccessor();
    builder.Services.AddScoped();
    var app = builder.Build();
    //Custom middleware
    app.Use((ctx, next) =>
    {
    var idp = ctx.RequestServices.GetRequiredService();
    var protector = idp.CreateProtector("auth-cookie");
    var authCookie = ctx.Request.Headers.Cookie.FirstOrDefault(x => x.StartsWith("auth="));
    var protectedPayload = authCookie.Split("=").Last();
    var payload = protector.Unprotect(protectedPayload);
    var parts = payload.Split(":");
    var key = parts[0];
    var value = parts[1];
    var claims = new List();
    claims.Add(new Claim(key, value));
    var identity = new ClaimsIdentity(claims);
    ctx.User = new ClaimsPrincipal(identity);
    return next();
    });
    //Recognize Authenticated Session
    app.MapGet("/username", (HttpContext ctx, IDataProtectionProvider idp) =>
    {
    return ctx.User.FindFirst("usr").Value;
    });
    //Create Authenticate Session
    app.MapGet("/login", (AuthService auth) =>
    {
    //Encrypt auth cookie
    auth.SignIn();
    return "Ok";
    });
    app.Run();
    public class AuthService
    {
    private readonly IDataProtectionProvider _idp;
    private readonly IHttpContextAccessor _accessor;
    public AuthService(IDataProtectionProvider idp, IHttpContextAccessor accessor)
    {
    _idp = idp;
    _accessor = accessor;
    }
    public void SignIn()
    {
    var protector = _idp.CreateProtector("auth-cookie");
    _accessor.HttpContext.Response.Headers["set-cookie"] = $"auth={protector.Protect("usr:john")}";
    }
    }
    Thank you in advance for any tips.

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

      I have the same issue. It seems to me we wouldn't want that middleware method to run on the /login endpoint, but only on the /username endpoint and any subsequent methods designed to be used after login has taken place, but the way it's written it's going to run on every endpoint. I also don't know why it's not creating an issue for him. It might be that he's rebuilding without restarting the browser, so the user cookie was already set from previous runs, but it's hard to tell exactly just watching the video.

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

    Thank youuuuuuuu

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

    Who are you? Where is Anton??

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

      Names Tony, we’re gonna be making real programming videos now!

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

      salam qaqa

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

    appreciate it

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

    Hey mate! After this series would you mind doing videos on different data structures and algorithms

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

      maybe, check this out tho: ruclips.net/video/nVRSiitEPZc/видео.html

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

    Thank you :)

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

    Thank you for this amazing explanation about how .NET auth works. It's just terrible and not explained anywhere properly.

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

    this protector is how unprotect? even I restarted the backend still able to unprotect, how is keeping the salt or key?

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

      a key is created & stored outside of your app (per app) That key is then used to encrypt/decrypt (protect/unprotect) when app is restarted and key is found in the same place that it would be generated in.
      Data protection api: learn.microsoft.com/en-us/aspnet/core/security/data-protection/introduction?view=aspnetcore-7.0
      Key Management: learn.microsoft.com/en-us/aspnet/core/security/data-protection/configuration/default-settings?view=aspnetcore-7.0

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

      @@RawCoding thanks for the answer, yes I have found the folder and changed the new tests :) it worked

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

    Hola alguien puede porporcionarme el poryecto para ir siguiendo el curso. Gracias

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

    awesome

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

    how the hell do we remember which method takes which parameter, .net is so much about mugging what microsoft has done.

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

      Any language that has skds or libraries will be like that regardless of who makes it.

  • @YounesKiram-hy7vu
    @YounesKiram-hy7vu Год назад

    14:39 How many legs? 🤣🤣🤣

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

    I have paid for the source code but i didn't get source code. please help me how to download this source code.

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

      Hi there you should have gotten the link in a message , please dm me on discord if you have any problems

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

    But I have a problem

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

    He said 3 legs???

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

    Why did you left Microsoft? :P