Add whitelisting service + update the jwt valid audience
This commit is contained in:
@@ -24,7 +24,10 @@ public class JwtUtils : IJwtUtils
|
||||
_secret = config.GetValue<string>("Jwt:Secret")
|
||||
?? throw new InvalidOperationException("JWT secret is not configured.");
|
||||
_issuer = config.GetValue<string>("Authentication:Schemes:Bearer:ValidIssuer");
|
||||
_audience = config.GetValue<string>("Authentication:Schemes:Bearer:ValidAudiences");
|
||||
// Get first audience from array (tokens are generated with a single audience)
|
||||
var audiences = config.GetSection("Authentication:Schemes:Bearer:ValidAudiences")
|
||||
.Get<string[]>() ?? Array.Empty<string>();
|
||||
_audience = audiences.Length > 0 ? audiences[0] : null;
|
||||
}
|
||||
|
||||
public string GenerateJwtToken(User user, string publicAddress)
|
||||
@@ -37,7 +40,7 @@ public class JwtUtils : IJwtUtils
|
||||
Subject = new ClaimsIdentity(new[] { new Claim("address", publicAddress) }),
|
||||
Expires = DateTime.UtcNow.AddDays(15),
|
||||
Issuer = _issuer, // Include issuer if configured
|
||||
Audience = _audience, // Include audience if configured
|
||||
Audience = _audience, // Include audience if configured (uses first from array)
|
||||
SigningCredentials = new SigningCredentials(
|
||||
new SymmetricSecurityKey(key),
|
||||
SecurityAlgorithms.HmacSha256Signature)
|
||||
|
||||
Reference in New Issue
Block a user