Junior — Middle
Poți explica ce este JWT și cum este utilizat în aplicațiile ASP.NET?
sobes.tech AI
Răspuns de la AI
JWT (JSON Web Token) este o metodă compactă și sigură de transmitere a informațiilor între părți sub forma unui obiect JSON. În aplicațiile ASP.NET, JWT este adesea utilizat pentru autentificarea și autorizarea utilizatorilor.
Principiul de funcționare:
- La autentificare, serverul creează un JWT care conține date utile (de exemplu, identificatorul utilizatorului, roluri) și îl semnează cu o cheie secretă.
- Clientul păstrează acest token și îl trimite în antetul Authorization pentru solicitările ulterioare.
- Serverul verifică semnătura tokenului, extrage datele și ia decizii de acces pe baza acestora.
Exemplu de configurare JWT în ASP.NET Core:
services.AddAuthentication(options => {
options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
})
.AddJwtBearer(options => {
options.TokenValidationParameters = new TokenValidationParameters {
ValidateIssuer = true,
ValidateAudience = true,
ValidateLifetime = true,
ValidateIssuerSigningKey = true,
ValidIssuer = "yourIssuer",
ValidAudience = "yourAudience",
IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("yourSecretKey"))
};
});
Astfel, JWT permite gestionarea sigură și convenabilă a sesiunilor fără a păstra stare pe server.