I have an API that sits behind an API Gateway. The API Gateway validates the bearer token before passing the request along to the API.
My API the uses the the asp.net core 2.0 native authentication and claims based authorization framework. The grunt work of getting the claims from the JWT token is done by the middleware in Microsoft.AspNetCore.Authentication.JwtBearer
.
This middle ware can be configured to ignore the expiration date on the token and it is also possible to specify a local public key so it is not necessary to contact the token Authority to obtain one, but is it possible to just disable the signature validation on the token?
This would allow use of unsigned tokens for ad-hoc testing in development and prevent double validation (gateway and then API) in production.