From 174d890234c33c0f7e85d703e5a5aee7d8eefa80 Mon Sep 17 00:00:00 2001 From: cd-bitwarden <106776772+cd-bitwarden@users.noreply.github.com> Date: Fri, 4 Aug 2023 16:21:51 -0400 Subject: [PATCH] 663-AccessTokens validate expiration date (#3104) * 663-AccessTokens validate expiration date * removing unecessary using statement * thomas' suggested change * Thomas' suggested change * Update src/Api/SecretsManager/Models/Request/AccessTokenCreateRequestModel.cs Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com> --------- Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com> --- .../Models/Request/AccessTokenCreateRequestModel.cs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/Api/SecretsManager/Models/Request/AccessTokenCreateRequestModel.cs b/src/Api/SecretsManager/Models/Request/AccessTokenCreateRequestModel.cs index efbf93ad9..2d961ad82 100644 --- a/src/Api/SecretsManager/Models/Request/AccessTokenCreateRequestModel.cs +++ b/src/Api/SecretsManager/Models/Request/AccessTokenCreateRequestModel.cs @@ -4,7 +4,7 @@ using Bit.Core.Utilities; namespace Bit.Api.SecretsManager.Models.Request; -public class AccessTokenCreateRequestModel +public class AccessTokenCreateRequestModel : IValidatableObject { [Required] [EncryptedString] @@ -34,4 +34,13 @@ public class AccessTokenCreateRequestModel EncryptedPayload = EncryptedPayload, }; } + + public IEnumerable Validate(ValidationContext validationContext) + { + if (ExpireAt != null && ExpireAt <= DateTime.UtcNow) + { + yield return new ValidationResult( + $"Please select an expiration date that is in the future."); + } + } }