In this section, we're going to take a look at decoding JSON Web Tokens (JWTs) using the Auth0 library. We'll see how you can implement and use the ContainerRequest and ContainerResponse filters to handle JWT authentication for our REST resources. Finally, we'll be injecting and using decoded JWT in our REST resources.
Let's get started. If you visit the JWT website (https://jwt.io/), you can find relevant information about JWT. Under Debugger, you can see what a JWT looks like. We can see the token under Encoded—it consists of a HEADER, PAYLOAD, and VERIFY SIGNATURE. This JWT uses symmetric encryption to generate the signature. Therefore this value will later be transmitted by the HTTP authorization header:
As usual, we prepare a small template project to get started. First, we activate a third-party library...