public override async Task <TResponse> UnaryServerHandler <TRequest, TResponse>(
            TRequest request,
            ServerCallContext context,
            UnaryServerMethod <TRequest, TResponse> continuation)
        {
            if (!(await IsJwtValid(context.GetAccessToken(), _logger)))
            {
                context.Status = new Status(StatusCode.Unauthenticated, "Invalid token");
                return(default(TResponse));
            }

            return(await continuation(request, context));
        }
        public override async Task DuplexStreamingServerHandler <TRequest, TResponse>(
            IAsyncStreamReader <TRequest> requestStream,
            IServerStreamWriter <TResponse> responseStream,
            ServerCallContext context,
            DuplexStreamingServerMethod <TRequest, TResponse> continuation)
        {
            if (!(await IsJwtValid(context.GetAccessToken(), _logger)))
            {
                context.Status = new Status(StatusCode.Unauthenticated, "Invalid token");
                return;
            }

            await continuation(requestStream, responseStream, context);
        }