From 568a5c99ca314b82b67bbb7e6ca7c375271101de Mon Sep 17 00:00:00 2001 From: Dominic Villemure Date: Sun, 16 Jun 2024 11:00:40 -0400 Subject: [PATCH] oauth fixes to be able to use vault for env vars --- .../Identity/IdentityService.cs | 6 +++--- src/Web/Controllers/GoogleController.cs | 6 +++--- src/Web/DependencyInjection.cs | 14 ++++++------- src/Web/Endpoints/Users.cs | 1 - src/Web/appsettings.Development.dist | 20 +++++++------------ 5 files changed, 20 insertions(+), 27 deletions(-) diff --git a/src/Infrastructure/Identity/IdentityService.cs b/src/Infrastructure/Identity/IdentityService.cs index 0a25594..02b5ce0 100644 --- a/src/Infrastructure/Identity/IdentityService.cs +++ b/src/Infrastructure/Identity/IdentityService.cs @@ -221,9 +221,9 @@ public class IdentityService( var user = await GetUserByUserNameAsync(userName); var token = JwtTokenHelper.GenerateJwtToken( - issuer: configuration["Jwt:Issuer"] ?? "", - audience: configuration["Jwt:Audience"] ?? "", - key: configuration["Jwt:Key"] ?? "", + issuer: configuration["Jwt-Issuer"] ?? "", + audience: configuration["Jwt-Audience"] ?? "", + key: configuration["Jwt-Key"] ?? "", userId: user?.Id ?? ""); return token; diff --git a/src/Web/Controllers/GoogleController.cs b/src/Web/Controllers/GoogleController.cs index 49c57e2..6df233a 100644 --- a/src/Web/Controllers/GoogleController.cs +++ b/src/Web/Controllers/GoogleController.cs @@ -58,11 +58,11 @@ public class GoogleController(IIdentityService identityService, IHttpClientFacto var claimsIdentity = new ClaimsIdentity(claims, CookieAuthenticationDefaults.AuthenticationScheme); await HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, new ClaimsPrincipal(claimsIdentity)); - var issuer = configuration["Jwt:Issuer"] ?? + var issuer = configuration["Jwt-Issuer"] ?? throw new ArgumentNullException("The Jwt issuer is missing."); - var audience = configuration["Jwt:Audience"] ?? + var audience = configuration["Jwt-Audience"] ?? throw new ArgumentNullException("The Jwt audience is missing."); - var key = configuration["Jwt:Key"] ?? + var key = configuration["Jwt-Key"] ?? throw new ArgumentNullException("The Jwt key is missing."); var jwtToken = JwtTokenHelper.GenerateJwtToken(issuer, audience, key, user.Id); diff --git a/src/Web/DependencyInjection.cs b/src/Web/DependencyInjection.cs index 402b870..3a7eb61 100644 --- a/src/Web/DependencyInjection.cs +++ b/src/Web/DependencyInjection.cs @@ -89,26 +89,26 @@ public static class DependencyInjection jwtBearerOptions.TokenValidationParameters = new TokenValidationParameters { ValidateIssuer = true, - ValidIssuer = configuration["Jwt:Issuer"], + ValidIssuer = configuration["Jwt-Issuer"], ValidateAudience = true, - ValidAudience = configuration["Jwt:Audience"], + ValidAudience = configuration["Jwt-Audience"], ValidateLifetime = true, - IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(configuration["Jwt:Key"] ?? + IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(configuration["Jwt-Key"] ?? throw new ArgumentNullException("The Jwt Key is missing."))) }; }) .AddGoogle(GoogleDefaults.AuthenticationScheme, options => { - options.ClientId = configuration["Google:ClientId"] ?? + options.ClientId = configuration["Google-ClientId"] ?? throw new ArgumentNullException("The Google ClientId is missing.");; - options.ClientSecret = configuration["Google:ClientSecret"] ?? + options.ClientSecret = configuration["Google-ClientSecret"] ?? throw new ArgumentNullException("The Google ClientSecret is missing.");; }) .AddFacebook(FacebookDefaults.AuthenticationScheme, options => { - options.ClientId = configuration["Facebook:ClientId"] ?? + options.ClientId = configuration["Facebook-ClientId"] ?? throw new ArgumentNullException("The Facebook ClientId is missing."); - options.ClientSecret = configuration["Facebook:ClientSecret"] ?? + options.ClientSecret = configuration["Facebook-ClientSecret"] ?? throw new ArgumentNullException("The Facebook ClientSecret is missing."); }); diff --git a/src/Web/Endpoints/Users.cs b/src/Web/Endpoints/Users.cs index 2c4f403..39f784a 100644 --- a/src/Web/Endpoints/Users.cs +++ b/src/Web/Endpoints/Users.cs @@ -1,6 +1,5 @@ using Hutopy.Application.Users.Commands; using Hutopy.Application.Users.Queries.GetMinimalUser; -using Hutopy.Infrastructure.Identity; namespace Hutopy.Web.Endpoints; diff --git a/src/Web/appsettings.Development.dist b/src/Web/appsettings.Development.dist index d25bfda..25369fa 100644 --- a/src/Web/appsettings.Development.dist +++ b/src/Web/appsettings.Development.dist @@ -7,17 +7,11 @@ "Microsoft.Hosting.Lifetime": "Information" } }, - "Google": { - "ClientId": "", - "ClientSecret": "" - }, - "Facebook": { - "ClientId": "", - "ClientSecret": "" - }, - "Jwt": { - "Issuer": "", - "Audience": "", - "Key": "" - } + "Google-ClientId": "", + "Google-ClientSecret": "", + "Facebook-ClientId": "", + "Facebook-ClientSecret": "", + "Jwt-Audience": "", + "Jwt-Issuer": "", + "Jwt-Key": "", } \ No newline at end of file