mirror of
https://github.com/ryzij/AMessanger-Server.git
synced 2026-09-18 19:25:38 +00:00
Add JwtService
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using System.Text;
|
||||
using AMessanger.Application.Settings;
|
||||
using Microsoft.AspNetCore.Authentication.JwtBearer;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
@@ -10,6 +11,10 @@ public static class ApplicationExtensions
|
||||
{
|
||||
public static IServiceCollection AddAuth(this IServiceCollection services, IConfiguration configuration)
|
||||
{
|
||||
var jwtConf = configuration.GetSection(JwtSettings.SECTION_NAME);
|
||||
services.Configure<JwtSettings>(jwtConf);
|
||||
var settings = jwtConf.Get<JwtSettings>()!;
|
||||
|
||||
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
|
||||
.AddJwtBearer(options =>
|
||||
{
|
||||
@@ -20,10 +25,10 @@ public static class ApplicationExtensions
|
||||
ValidateLifetime = true,
|
||||
ValidateIssuerSigningKey = true,
|
||||
|
||||
ValidIssuer = configuration["Jwt:Issuer"],
|
||||
ValidAudience = configuration["Jwt:Audience"],
|
||||
ValidIssuer = settings.Issuer,
|
||||
ValidAudience = settings.Audience,
|
||||
IssuerSigningKey = new SymmetricSecurityKey(
|
||||
Encoding.UTF8.GetBytes(configuration["Jwt:Key"]!)
|
||||
Encoding.UTF8.GetBytes(settings.Key)
|
||||
)
|
||||
};
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user