private void ValidateToken(ITokenPayload payload) { var expiresAsDateTime = DateTimeOffset.FromUnixTimeMilliseconds(payload.Expires).Date; var isTokenValid = payload.Audience == _settings.Audience && payload.Issuer == _settings.Issuer && DateTime.Compare(expiresAsDateTime, DateTime.Now) <= 0; if (!isTokenValid) { throw new UserNotAuthorizedException("JWT payload could not be validated"); } }
private string GenerateToken(ITokenPayload payload) => new JwtEncoder(_algorithm, _serializer, _urlEncoder).Encode(payload, _settings.Secret);