{"repo":"joken-elixir/joken_jwks","free":true,"listed":false,"github":"https://github.com/joken-elixir/joken_jwks","clone":"git clone https://github.com/joken-elixir/joken_jwks.git","description":"A Joken 2 hook for fetching the signer from a public JWKS url","language":"Elixir","stars":36,"topics":["joken","jwt","jwks"],"license":"Apache-2.0","category":"auth-billing-email","readme_excerpt":"Joken JWKS A Joken.Hooks implementation that builds a signer out of a JWKS url for verification. Usage Please see our documentation for usage. Installation JWKS (JSON Web Key Set) When using JWTs for digital signing we need a key to sign and verify the contents of the token. Many times the part that is doing signature verification is the same that does the signing and so, it possesses both the private and public key. Other times, this is not the case. When using an authentication server that is different than the \"business\" server, the later has no control about the keys being used to authenticate a request. On these cases, the authentication server publishes its own public key so that anyone can validate tokens that it has generated before with the matching private key. This scenario is common on delegated authentication as mentioned. One specification that uses this approach is OAuth2 with OpenID Connect. The auth server has a public configuration endpoint where there is plenty information about how to connect with the server. One such information is the JWKS (JSON Web Key Set): a list of public keys the server uses to generate signed tokens. Example of well known JWKS URIs: - Google: https://www.googleapis.com/oauth2/v3/certs - Microsoft: https://login.microsoftonline.com/common/discovery/keys Joken JWKS hook If your server is using Joken 2 to validate tokens, then you can use this hook to retrieve the list of signers from a JWKS URI. This is how it happens: 1. Build you t","default_branch":null,"files":null,"tree":[],"storefront":"/r/joken-elixir","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/joken-elixir/joken_jwks/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}