Junior — Middle
Vai vari paskaidrot, kas ir JWT un kā tas tiek izmantots ASP.NET lietojumprogrammās?
sobes.tech AI
Atbilde no AI
JWT (JSON Web Token) ir kompakts un URL-drošs veids, kā pārsūtīt informāciju starp pusēm JSON objekta formā. ASP.NET lietojumprogrammās JWT bieži tiek izmantots lietotāju autentifikācijai un autorizācijai.
Darbības princips:
- Piesakoties, serveris izveido JWT, kas satur noderīgus datus (piemēram, lietotāja identifikatoru, lomas) un to paraksta ar slepenu atslēgu.
- Klients saglabā šo tokenu un nosūta to Authorization galvenē nākamajos pieprasījumos.
- Serveris pārbauda tokena parakstu, izvelk datus un pieņem lēmumu par piekļuvi, pamatojoties uz tiem.
Piemērs JWT konfigurācijai 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"))
};
});
Tādējādi, JWT ļauj droši un ērti pārvaldīt sesijas bez stāvokļa glabāšanas serverī.