diff --git a/src/DigitalData.Auth.API/DigitalData.Auth.API.csproj b/src/DigitalData.Auth.API/DigitalData.Auth.API.csproj index 3b137cb..0842122 100644 --- a/src/DigitalData.Auth.API/DigitalData.Auth.API.csproj +++ b/src/DigitalData.Auth.API/DigitalData.Auth.API.csproj @@ -1,4 +1,4 @@ - + net8.0 @@ -7,6 +7,8 @@ + + diff --git a/src/DigitalData.Auth.API/Program.cs b/src/DigitalData.Auth.API/Program.cs index 2ea8a29..74884e8 100644 --- a/src/DigitalData.Auth.API/Program.cs +++ b/src/DigitalData.Auth.API/Program.cs @@ -1,5 +1,6 @@ using DigitalData.Auth.API.Config; using DigitalData.Auth.API.Services; +using DigitalData.Core.Security; using Microsoft.AspNetCore.Authentication.JwtBearer; using Microsoft.IdentityModel.JsonWebTokens; using Microsoft.IdentityModel.Tokens; @@ -16,6 +17,7 @@ var apiParams = config.Get() ?? throw new InvalidOperationExcepti // Add services to the container. builder.Services.Configure(config); builder.Services.AddConsumerApiServiceFromConfiguration(config); +builder.Services.AddCryptoFactory(config.GetSection("CryptParams")); builder.Services.AddControllers(); @@ -74,4 +76,4 @@ app.UseAuthorization(); app.MapControllers(); -app.Run(); +app.Run(); \ No newline at end of file diff --git a/src/DigitalData.Auth.API/appsettings.json b/src/DigitalData.Auth.API/appsettings.json index 10f68b8..06fd87a 100644 --- a/src/DigitalData.Auth.API/appsettings.json +++ b/src/DigitalData.Auth.API/appsettings.json @@ -5,5 +5,32 @@ "Microsoft.AspNetCore": "Warning" } }, - "AllowedHosts": "*" -} + "AllowedHosts": "*", + "CryptParams": { + "KeySizeInBits": 4096, + "Padding": "OaepSHA512", + "PemDirectory": "Secrets", + "Decryptors": [ + { + "IsEncrypted": true + } + ], + "TokenDescriptors": [ + { + "Id": "4062504f-f081-43d1-b4ed-78256a0879e1", + "Issuer": "auth.digitaldata.works", + "Audience": "api.digitaldata.works", + "IsEncrypted": true, + "ApiRoute": "api", + "Lifetime": "48:00:00" + }, + { + "Id": "61c07d26-baa8-4cbb-bb33-ac4ee1838c3a", + "Issuer": "auth.digitaldata.works", + "Audience": "client.digitaldata.works", + "IsEncrypted": true, + "ApiRoute": "client" + } + ] + } +} \ No newline at end of file