diff --git a/AMessanger.API/Program.cs b/AMessanger.API/Program.cs
index 76d39e5..b668b46 100644
--- a/AMessanger.API/Program.cs
+++ b/AMessanger.API/Program.cs
@@ -1,3 +1,4 @@
+using AMessanger.Application;
using AMessanger.Application.Hubs;
var builder = WebApplication.CreateBuilder(args);
@@ -12,6 +13,8 @@ builder.Services.AddSwaggerGen();
builder.Services.AddSignalR();
+builder.Services.AddAuth(builder.Configuration);
+
var app = builder.Build();
// Configure the HTTP request pipeline.
diff --git a/AMessanger.Application/AMessanger.Application.csproj b/AMessanger.Application/AMessanger.Application.csproj
index 5cc5881..4022601 100644
--- a/AMessanger.Application/AMessanger.Application.csproj
+++ b/AMessanger.Application/AMessanger.Application.csproj
@@ -11,6 +11,7 @@
+
diff --git a/AMessanger.Application/ApplicationExtensions.cs b/AMessanger.Application/ApplicationExtensions.cs
new file mode 100644
index 0000000..3a46a64
--- /dev/null
+++ b/AMessanger.Application/ApplicationExtensions.cs
@@ -0,0 +1,33 @@
+using System.Text;
+using Microsoft.AspNetCore.Authentication.JwtBearer;
+using Microsoft.Extensions.Configuration;
+using Microsoft.Extensions.DependencyInjection;
+using Microsoft.IdentityModel.Tokens;
+
+namespace AMessanger.Application;
+
+public static class ApplicationExtensions
+{
+ public static IServiceCollection AddAuth(this IServiceCollection services, IConfiguration configuration)
+ {
+ services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
+ .AddJwtBearer(options =>
+ {
+ options.TokenValidationParameters = new Microsoft.IdentityModel.Tokens.TokenValidationParameters
+ {
+ ValidateIssuer = true,
+ ValidateAudience = true,
+ ValidateLifetime = true,
+ ValidateIssuerSigningKey = true,
+
+ ValidIssuer = configuration["Jwt:Issuer"],
+ ValidAudience = configuration["Jwt:Audience"],
+ IssuerSigningKey = new SymmetricSecurityKey(
+ Encoding.UTF8.GetBytes(configuration["Jwt:Key"]!)
+ )
+ };
+ });
+
+ return services.AddAuthorization();
+ }
+}
\ No newline at end of file
diff --git a/Directory.Packages.props b/Directory.Packages.props
index 77021a7..0f8ee79 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -3,6 +3,7 @@
true
+