From e8438c50501f9a1d7bae8e825eff2b67a97287d2 Mon Sep 17 00:00:00 2001 From: Mia Winter Date: Tue, 13 Feb 2024 13:41:11 +0100 Subject: [PATCH] Added expiration parameter to token generation --- Wave/Services/EmailTemplateService.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Wave/Services/EmailTemplateService.cs b/Wave/Services/EmailTemplateService.cs index dd71b3a..94b0f37 100644 --- a/Wave/Services/EmailTemplateService.cs +++ b/Wave/Services/EmailTemplateService.cs @@ -15,7 +15,7 @@ public enum Constants { private Regex TokenMatcher { get; } = MyRegex(); - public async Task<(string user, string token)> CreateConfirmTokensAsync(Guid subscriberId, string role = "subscribe") { + public async Task<(string user, string token)> CreateConfirmTokensAsync(Guid subscriberId, string role = "subscribe", TimeSpan? expiration = null) { string user = Convert.ToBase64String(subscriberId.ToByteArray()); string token = Convert.ToBase64String(Guid.NewGuid().ToByteArray()); string cacheKey = role + "-" + user; @@ -23,7 +23,7 @@ public enum Constants { await TokenCache.SetAsync(cacheKey, Convert.FromBase64String(token), new DistributedCacheEntryOptions { - AbsoluteExpirationRelativeToNow = TimeSpan.FromDays(1) + AbsoluteExpirationRelativeToNow = expiration ?? TimeSpan.FromDays(1) }); return (user, token);